/**
 * Foundation for Sites
 * Version 6.6.3
 * https://get.foundation
 * Licensed under MIT Open Source
 */
/**
 * Sprite settings
 */
/**
 * The following variable and function originate from the sass-mq library.
 * If you have already included it, you can eliminate the below
 * https://github.com/sass-mq/sass-mq/blob/master/_mq.scss
 */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible; }

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

a {
  background-color: transparent; }

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

b,
strong {
  font-weight: bolder; }

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

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

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

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

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

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

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

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

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

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

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

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

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

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

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&mobile=28.125em&medium=40em&tablet=48em&large=64em&xlarge=81.25em&xxlarge=90em"; }

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

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

body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

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

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

pre {
  overflow: auto; }

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

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

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

.row {
  max-width: 75rem;
  margin-right: auto;
  margin-left: auto; }
  .row::before, .row::after {
    display: table;
    content: ' '; }
  .row::after {
    clear: both; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .row .row {
    margin-right: -0.25rem;
    margin-left: -0.25rem; }
    @media print, screen and (min-width: 40em) {
      .row .row {
        margin-right: -0.375rem;
        margin-left: -0.375rem; } }
    @media print, screen and (min-width: 64em) {
      .row .row {
        margin-right: -0.375rem;
        margin-left: -0.375rem; } }
    .row .row.collapse {
      margin-right: 0;
      margin-left: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-right: auto;
      margin-left: auto; }
  .row:not(.expanded) .row {
    max-width: none; }
  .row.gutter-small > .column, .row.gutter-small > .columns {
    padding-right: 0.25rem;
    padding-left: 0.25rem; }
  .row.gutter-medium > .column, .row.gutter-medium > .columns {
    padding-right: 0.375rem;
    padding-left: 0.375rem; }

.column, .columns {
  width: 100%;
  float: left;
  padding-right: 0.25rem;
  padding-left: 0.25rem; }
  @media print, screen and (min-width: 40em) {
    .column, .columns {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  .column, .columns, .column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: right; }
  .column.end:last-child:last-child, .end.columns:last-child:last-child {
    float: left; }

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

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

.small-1 {
  width: 8.33333%; }

.small-push-1 {
  position: relative;
  left: 8.33333%; }

.small-pull-1 {
  position: relative;
  left: -8.33333%; }

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

.small-2 {
  width: 16.66667%; }

.small-push-2 {
  position: relative;
  left: 16.66667%; }

.small-pull-2 {
  position: relative;
  left: -16.66667%; }

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

.small-3 {
  width: 25%; }

.small-push-3 {
  position: relative;
  left: 25%; }

.small-pull-3 {
  position: relative;
  left: -25%; }

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

.small-4 {
  width: 33.33333%; }

.small-push-4 {
  position: relative;
  left: 33.33333%; }

.small-pull-4 {
  position: relative;
  left: -33.33333%; }

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

.small-5 {
  width: 41.66667%; }

.small-push-5 {
  position: relative;
  left: 41.66667%; }

.small-pull-5 {
  position: relative;
  left: -41.66667%; }

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

.small-6 {
  width: 50%; }

.small-push-6 {
  position: relative;
  left: 50%; }

.small-pull-6 {
  position: relative;
  left: -50%; }

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

.small-7 {
  width: 58.33333%; }

.small-push-7 {
  position: relative;
  left: 58.33333%; }

.small-pull-7 {
  position: relative;
  left: -58.33333%; }

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

.small-8 {
  width: 66.66667%; }

.small-push-8 {
  position: relative;
  left: 66.66667%; }

.small-pull-8 {
  position: relative;
  left: -66.66667%; }

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

.small-9 {
  width: 75%; }

.small-push-9 {
  position: relative;
  left: 75%; }

.small-pull-9 {
  position: relative;
  left: -75%; }

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

.small-10 {
  width: 83.33333%; }

.small-push-10 {
  position: relative;
  left: 83.33333%; }

.small-pull-10 {
  position: relative;
  left: -83.33333%; }

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

.small-11 {
  width: 91.66667%; }

.small-push-11 {
  position: relative;
  left: 91.66667%; }

.small-pull-11 {
  position: relative;
  left: -91.66667%; }

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

.small-12 {
  width: 100%; }

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

.small-up-1 > .column, .small-up-1 > .columns {
  float: left;
  width: 100%; }
  .small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
    clear: both; }
  .small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
    float: left; }

.small-up-2 > .column, .small-up-2 > .columns {
  float: left;
  width: 50%; }
  .small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
    clear: both; }
  .small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
    float: left; }

.small-up-3 > .column, .small-up-3 > .columns {
  float: left;
  width: 33.33333%; }
  .small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
    clear: both; }
  .small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
    float: left; }

.small-up-4 > .column, .small-up-4 > .columns {
  float: left;
  width: 25%; }
  .small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
    clear: both; }
  .small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
    float: left; }

.small-up-5 > .column, .small-up-5 > .columns {
  float: left;
  width: 20%; }
  .small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
    clear: both; }
  .small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
    float: left; }

.small-up-6 > .column, .small-up-6 > .columns {
  float: left;
  width: 16.66667%; }
  .small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
    clear: both; }
  .small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
    float: left; }

.small-up-7 > .column, .small-up-7 > .columns {
  float: left;
  width: 14.28571%; }
  .small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
    clear: both; }
  .small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
    float: left; }

.small-up-8 > .column, .small-up-8 > .columns {
  float: left;
  width: 12.5%; }
  .small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
    clear: both; }
  .small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
    float: left; }

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

.small-collapse .row {
  margin-right: 0;
  margin-left: 0; }

.expanded.row .small-collapse.row {
  margin-right: 0;
  margin-left: 0; }

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

.small-centered {
  margin-right: auto;
  margin-left: auto; }
  .small-centered, .small-centered:last-child:not(:first-child) {
    float: none;
    clear: both; }

.small-uncentered, .small-push-0, .small-pull-0 {
  position: static;
  margin-right: 0;
  margin-left: 0; }
  .small-uncentered, .small-uncentered:last-child:not(:first-child), .small-push-0, .small-push-0:last-child:not(:first-child), .small-pull-0, .small-pull-0:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .small-uncentered:last-child:not(:first-child), .small-push-0:last-child:not(:first-child), .small-pull-0:last-child:not(:first-child) {
    float: right; }

@media print, screen and (min-width: 40em) {
  .medium-1 {
    width: 8.33333%; }
  .medium-push-1 {
    position: relative;
    left: 8.33333%; }
  .medium-pull-1 {
    position: relative;
    left: -8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-push-2 {
    position: relative;
    left: 16.66667%; }
  .medium-pull-2 {
    position: relative;
    left: -16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    width: 25%; }
  .medium-push-3 {
    position: relative;
    left: 25%; }
  .medium-pull-3 {
    position: relative;
    left: -25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-push-4 {
    position: relative;
    left: 33.33333%; }
  .medium-pull-4 {
    position: relative;
    left: -33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-push-5 {
    position: relative;
    left: 41.66667%; }
  .medium-pull-5 {
    position: relative;
    left: -41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    width: 50%; }
  .medium-push-6 {
    position: relative;
    left: 50%; }
  .medium-pull-6 {
    position: relative;
    left: -50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-push-7 {
    position: relative;
    left: 58.33333%; }
  .medium-pull-7 {
    position: relative;
    left: -58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-push-8 {
    position: relative;
    left: 66.66667%; }
  .medium-pull-8 {
    position: relative;
    left: -66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    width: 75%; }
  .medium-push-9 {
    position: relative;
    left: 75%; }
  .medium-pull-9 {
    position: relative;
    left: -75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-push-10 {
    position: relative;
    left: 83.33333%; }
  .medium-pull-10 {
    position: relative;
    left: -83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-push-11 {
    position: relative;
    left: 91.66667%; }
  .medium-pull-11 {
    position: relative;
    left: -91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    float: left;
    width: 100%; }
    .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
      float: left; }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    float: left;
    width: 50%; }
    .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
      float: left; }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    float: left;
    width: 33.33333%; }
    .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
      float: left; }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    float: left;
    width: 25%; }
    .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
      float: left; }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    float: left;
    width: 20%; }
    .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
      float: left; }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    float: left;
    width: 16.66667%; }
    .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
      float: left; }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    float: left;
    width: 14.28571%; }
    .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
      clear: both; }
    .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
      float: left; }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    float: left;
    width: 12.5%; }
    .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
      clear: both; }
    .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
      float: left; }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .medium-collapse .row {
    margin-right: 0;
    margin-left: 0; }
  .expanded.row .medium-collapse.row {
    margin-right: 0;
    margin-left: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.375rem;
    padding-left: 0.375rem; }
  .medium-centered {
    margin-right: auto;
    margin-left: auto; }
    .medium-centered, .medium-centered:last-child:not(:first-child) {
      float: none;
      clear: both; }
  .medium-uncentered, .medium-push-0, .medium-pull-0 {
    position: static;
    margin-right: 0;
    margin-left: 0; }
    .medium-uncentered, .medium-uncentered:last-child:not(:first-child), .medium-push-0, .medium-push-0:last-child:not(:first-child), .medium-pull-0, .medium-pull-0:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .medium-uncentered:last-child:not(:first-child), .medium-push-0:last-child:not(:first-child), .medium-pull-0:last-child:not(:first-child) {
      float: right; } }

@media print, screen and (min-width: 64em) {
  .large-1 {
    width: 8.33333%; }
  .large-push-1 {
    position: relative;
    left: 8.33333%; }
  .large-pull-1 {
    position: relative;
    left: -8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    width: 16.66667%; }
  .large-push-2 {
    position: relative;
    left: 16.66667%; }
  .large-pull-2 {
    position: relative;
    left: -16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    width: 25%; }
  .large-push-3 {
    position: relative;
    left: 25%; }
  .large-pull-3 {
    position: relative;
    left: -25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    width: 33.33333%; }
  .large-push-4 {
    position: relative;
    left: 33.33333%; }
  .large-pull-4 {
    position: relative;
    left: -33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    width: 41.66667%; }
  .large-push-5 {
    position: relative;
    left: 41.66667%; }
  .large-pull-5 {
    position: relative;
    left: -41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    width: 50%; }
  .large-push-6 {
    position: relative;
    left: 50%; }
  .large-pull-6 {
    position: relative;
    left: -50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    width: 58.33333%; }
  .large-push-7 {
    position: relative;
    left: 58.33333%; }
  .large-pull-7 {
    position: relative;
    left: -58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    width: 66.66667%; }
  .large-push-8 {
    position: relative;
    left: 66.66667%; }
  .large-pull-8 {
    position: relative;
    left: -66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    width: 75%; }
  .large-push-9 {
    position: relative;
    left: 75%; }
  .large-pull-9 {
    position: relative;
    left: -75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    width: 83.33333%; }
  .large-push-10 {
    position: relative;
    left: 83.33333%; }
  .large-pull-10 {
    position: relative;
    left: -83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    width: 91.66667%; }
  .large-push-11 {
    position: relative;
    left: 91.66667%; }
  .large-pull-11 {
    position: relative;
    left: -91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-up-1 > .column, .large-up-1 > .columns {
    float: left;
    width: 100%; }
    .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
      float: left; }
  .large-up-2 > .column, .large-up-2 > .columns {
    float: left;
    width: 50%; }
    .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
      float: left; }
  .large-up-3 > .column, .large-up-3 > .columns {
    float: left;
    width: 33.33333%; }
    .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
      float: left; }
  .large-up-4 > .column, .large-up-4 > .columns {
    float: left;
    width: 25%; }
    .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
      float: left; }
  .large-up-5 > .column, .large-up-5 > .columns {
    float: left;
    width: 20%; }
    .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
      float: left; }
  .large-up-6 > .column, .large-up-6 > .columns {
    float: left;
    width: 16.66667%; }
    .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
      float: left; }
  .large-up-7 > .column, .large-up-7 > .columns {
    float: left;
    width: 14.28571%; }
    .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
      clear: both; }
    .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
      float: left; }
  .large-up-8 > .column, .large-up-8 > .columns {
    float: left;
    width: 12.5%; }
    .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
      clear: both; }
    .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
      float: left; }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .large-collapse .row {
    margin-right: 0;
    margin-left: 0; }
  .expanded.row .large-collapse.row {
    margin-right: 0;
    margin-left: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.375rem;
    padding-left: 0.375rem; }
  .large-centered {
    margin-right: auto;
    margin-left: auto; }
    .large-centered, .large-centered:last-child:not(:first-child) {
      float: none;
      clear: both; }
  .large-uncentered, .large-push-0, .large-pull-0 {
    position: static;
    margin-right: 0;
    margin-left: 0; }
    .large-uncentered, .large-uncentered:last-child:not(:first-child), .large-push-0, .large-push-0:last-child:not(:first-child), .large-pull-0, .large-pull-0:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .large-uncentered:last-child:not(:first-child), .large-push-0:last-child:not(:first-child), .large-pull-0:last-child:not(:first-child) {
      float: right; } }

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

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

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

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

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

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

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

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

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

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

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

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

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

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

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

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

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

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

.clearfix::before, .clearfix::after {
  display: table;
  content: ' '; }

.clearfix::after {
  clear: both; }

html {
  background: #fff;
  height: 100%;
  min-width: 300px;
  scroll-behavior: smooth; }
  html.app-view .header {
    display: none; }
  html.app-view .wrapper {
    padding-top: 0; }
  html.app-view .centre-menu.sticky-nav--active .centre-menu__wrapper {
    top: 0; }
  html.app-view .contenthub-menu.sticky-nav--active .contenthub-menu__wrapper {
    top: 0; }
  html.app-view .news-flash {
    top: 0; }
  html.app-view .footer {
    display: none; }

body {
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: "Circular Std Book", sans-serif;
  min-height: 100vh;
  min-width: 300px;
  position: relative; }
  body:after {
    content: "bp-s";
    display: none; }
  @media print, screen and (min-width: 40em) {
    body:after {
      content: "bp-m";
      display: none; } }
  @media print, screen and (min-width: 64em) {
    body:after {
      content: "bp-l";
      display: none; } }
  @media screen and (min-width: 81.25em) {
    body:after {
      content: "bp-xl";
      display: none; } }

.noscroll {
  height: 100%;
  margin: 0;
  overflow: hidden; }

.overlay {
  background: rgba(0, 0, 0, 0.7);
  height: 100%;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  -webkit-transition: opacity .6s;
  transition: opacity .6s;
  width: 100%;
  z-index: 999; }
  .overlay.overlay--open {
    opacity: 1;
    pointer-events: auto; }
  @media print, screen and (min-width: 64em) {
    .overlay {
      display: none; } }

.wrapper {
  background: #fff;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding-top: 60px;
  position: relative;
  z-index: 10; }
  .wrapper::before, .wrapper::after {
    display: table;
    content: ' '; }
  .wrapper::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .wrapper {
      padding-top: 72px; } }

.container {
  max-width: 75rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%; }
  .container::before, .container::after {
    display: table;
    content: ' '; }
  .container::after {
    clear: both; }

.breadcrumbs {
  height: 0; }

/*
 * Legal Disclaimer
 *
 * These Fonts are licensed only for use on these domains and their subdomains:
 * Everyoneactive.com
 *
 * It is illegal to download or use them on other websites.
 *
 * While the @font-face statements below may be modified by the client, this
 * disclaimer may not be removed.
 *
 * Lineto.com, 2017
 */
@font-face {
  font-family: 'Circular Std Book';
  src: url("../fonts/circular-web/circular-book.eot");
  src: url("../fonts/circular-web/circular-book.eot?#iefix") format("embedded-opentype"), url("../fonts/circular-web/circular-book.woff2") format("woff2"), url("../fonts/circular-web/circular-book.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Circular Std Medium';
  src: url("../fonts/circular-web/circular-medium.eot");
  src: url("../fonts/circular-web/circular-medium.eot?#iefix") format("embedded-opentype"), url("../fonts/circular-web/circular-medium.woff2") format("woff2"), url("../fonts/circular-web/circular-medium.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Circular Std Bold';
  src: url("../fonts/circular-web/circular-bold.eot");
  src: url("../fonts/circular-web/circular-bold.eot?#iefix") format("embedded-opentype"), url("../fonts/circular-web/circular-bold.woff2") format("woff2"), url("../fonts/circular-web/circular-bold.woff") format("woff");
  font-weight: normal;
  font-style: normal; }


h1 {
  font-family: "Barlow Semi Condensed", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  margin: 0;
  padding: 0;
  text-transform: uppercase; }
  @media print, screen and (min-width: 40em) {
    
    h1 {
      font-size: 2.25rem; } }


h2 {
  font-family: "Barlow Semi Condensed", sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  letter-spacing: -.03em;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  text-transform: uppercase; }
  @media print, screen and (min-width: 40em) {
    
    h2 {
      font-size: 1.75rem; } }


h3 {
  font-family: "Circular Std Medium", sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.33;
  margin: 0;
  padding: 0; }
  @media print, screen and (min-width: 40em) {
    
    h3 {
      font-size: 1.5rem; } }


h4 {
  font-family: "Circular Std Book", sans-serif;
  font-size: 1.125rem;
  font-weight: normal;
  letter-spacing: -.02em;
  line-height: 1.5;
  margin: 0;
  padding: 0; }
  @media print, screen and (min-width: 40em) {
    
    h4 {
      font-size: 1.375rem; } }


h5 {
  font-family: "Circular Std Medium", sans-serif;
  font-size: 1.125rem;
  font-weight: normal;
  letter-spacing: -.01em;
  line-height: 1.33;
  margin: 0;
  padding: 0; }

p {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0; }

.mt-25 {
  margin-top: 0.25rem; }

.mr-25 {
  margin-right: 0.25rem; }

.mb-25 {
  margin-bottom: 0.25rem; }

.ml-25 {
  margin-left: 0.25rem; }

.mx-25 {
  margin-left: 0.25rem;
  margin-right: 0.25rem; }

.my-25 {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem; }

.mt-50 {
  margin-top: 0.5rem; }

.mr-50 {
  margin-right: 0.5rem; }

.mb-50 {
  margin-bottom: 0.5rem; }

.ml-50 {
  margin-left: 0.5rem; }

.mx-50 {
  margin-left: 0.5rem;
  margin-right: 0.5rem; }

.my-50 {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.mt-75 {
  margin-top: 0.75rem; }

.mr-75 {
  margin-right: 0.75rem; }

.mb-75 {
  margin-bottom: 0.75rem; }

.ml-75 {
  margin-left: 0.75rem; }

.mx-75 {
  margin-left: 0.75rem;
  margin-right: 0.75rem; }

.my-75 {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem; }

.disabled {
  opacity: 0.5; }

.disabled * {
  pointer-events: none; }

.text-nowrap {
  white-space: nowrap; }

.activities-filter {
  margin: 20px 0 0;
  text-align: left; }
  .activities-filter.disabled {
    opacity: .7;
    pointer-events: none; }

.activities-filter__wrapper {
  display: none;
  position: relative;
  width: 100%; }
  .activities-filter__wrapper::before, .activities-filter__wrapper::after {
    display: table;
    content: ' '; }
  .activities-filter__wrapper::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__wrapper {
      display: block; } }
  .activities-filter__wrapper.transition {
    -webkit-transition: height .4s;
    transition: height .4s; }

.activities-filter__options {
  float: left;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__options {
      width: calc(100% - 100px); } }

.activities-filter__option {
  background: #1b2326;
  float: left;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__option {
      border-right: 2px solid #ffffff;
      width: 25%; } }
  .activities-filter__option.expanded {
    background: #e4e4e5; }
    .activities-filter__option.expanded .activities-filter__title {
      color: #1b2326; }
      .activities-filter__option.expanded .activities-filter__title:after {
        background: url("../img/expand.svg") center center/contain no-repeat;
        -webkit-transform: scaleY(-1);
            -ms-transform: scaleY(-1);
                transform: scaleY(-1); }

.activities-filter__title {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.75rem;
  margin: 0;
  border-bottom: 1px solid #ffffff;
  color: #ffffff;
  cursor: pointer;
  padding: 10px 25px;
  position: relative; }
  .activities-filter__title:after {
    background: url("../img/expand-white.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    position: absolute;
    right: 25px;
    top: 0;
    width: 20px; }
  .activities-filter__title.filtered {
    padding-left: 55px; }
    .activities-filter__title.filtered:before {
      background: url("../img/check.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px;
      content: '';
      height: 100%;
      left: 25px;
      position: absolute;
      top: 0;
      width: 20px; }
  .activities-filter__title.activities-filter__title--mobile {
    background: #1b2326;
    padding-left: 90px;
    text-transform: uppercase;
    -webkit-transition: all .4s;
    transition: all .4s; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__title {
      border-bottom: 0;
      padding: 10px 15px; }
      .activities-filter__title:after {
        right: 10px; }
      .activities-filter__title.filtered {
        padding-left: 40px; }
        .activities-filter__title.filtered:before {
          left: 15px; } }
  @media print, screen and (min-width: 64em) {
    .activities-filter__title {
      padding: 10px 25px; }
      .activities-filter__title:after {
        right: 25px; }
      .activities-filter__title.filtered {
        padding-left: 55px; }
        .activities-filter__title.filtered:before {
          left: 25px; } }

.activities-filter__dropdown {
  height: 0;
  overflow: hidden;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__dropdown {
      left: 0;
      position: absolute;
      top: 51px; } }
  .activities-filter__dropdown.transition {
    -webkit-transition: height .4s;
    transition: height .4s; }
  .activities-filter__dropdown .inner {
    background: #e4e4e5;
    padding: 10px 20px; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__dropdown .inner {
        padding: 20px; } }
  .activities-filter__dropdown select {
    margin: 15px 0 10px; }
  .activities-filter__dropdown h5 {
    display: none; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__dropdown h5 {
        display: block; } }

.activities-filter__list-wrapper {
  border-top: 1px solid #c9cacb;
  margin-top: 10px;
  padding-top: 15px; }
  .activities-filter__list-wrapper.hidden {
    display: none; }
  .activities-filter__list-wrapper h5 {
    display: block; }

.activities-filter__list {
  list-style: none;
  margin: 0;
  padding: 0; }
  .activities-filter__list li {
    display: block;
    margin: 11px 0;
    text-transform: capitalize;
    vertical-align: top;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__list li {
        display: inline-block;
        margin: 0;
        padding-right: 10px;
        width: 23%; } }
    .activities-filter__list li pre {
      display: inline;
      font-family: inherit;
      font-size: inherit; }
      @media print, screen and (min-width: 40em) {
        .activities-filter__list li pre {
          display: none; } }
  .activities-filter__list input[type='radio'] + label, .activities-filter__list input[type='checkbox'] + label {
    height: 35px;
    line-height: 35px; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__list input[type='radio'] + label, .activities-filter__list input[type='checkbox'] + label {
        height: auto;
        line-height: inherit; } }
    .activities-filter__list input[type='radio'] + label span, .activities-filter__list input[type='checkbox'] + label span {
      width: 35px; }
      @media print, screen and (min-width: 40em) {
        .activities-filter__list input[type='radio'] + label span, .activities-filter__list input[type='checkbox'] + label span {
          width: 24px; } }
  .activities-filter__list input[type='radio'].forms__input--radio + label, .activities-filter__list input[type='checkbox'].forms__input--radio + label {
    padding-left: 35px; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__list input[type='radio'].forms__input--radio + label, .activities-filter__list input[type='checkbox'].forms__input--radio + label {
        padding-left: 31px; } }
    .activities-filter__list input[type='radio'].forms__input--radio + label span, .activities-filter__list input[type='checkbox'].forms__input--radio + label span {
      -webkit-background-size: 35px 35px;
              background-size: 35px;
      height: 35px; }
      @media print, screen and (min-width: 40em) {
        .activities-filter__list input[type='radio'].forms__input--radio + label span, .activities-filter__list input[type='checkbox'].forms__input--radio + label span {
          -webkit-background-size: 30px 30px;
                  background-size: 30px;
          height: 24px; } }
  .activities-filter__list input[type='radio'].forms__input--checkbox + label, .activities-filter__list input[type='checkbox'].forms__input--checkbox + label {
    padding-left: 45px; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__list input[type='radio'].forms__input--checkbox + label, .activities-filter__list input[type='checkbox'].forms__input--checkbox + label {
        padding-left: 31px; } }
    .activities-filter__list input[type='radio'].forms__input--checkbox + label span, .activities-filter__list input[type='checkbox'].forms__input--checkbox + label span {
      -webkit-background-size: 30px 30px;
              background-size: 30px;
      height: 35px; }
      @media print, screen and (min-width: 40em) {
        .activities-filter__list input[type='radio'].forms__input--checkbox + label span, .activities-filter__list input[type='checkbox'].forms__input--checkbox + label span {
          -webkit-background-size: 24px 24px;
                  background-size: 24px;
          height: 24px; } }
  .activities-filter__list.checkbox-list {
    padding-left: 25px; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__list.checkbox-list {
        padding-left: 0; } }
  .activities-filter__list.hidden {
    display: none; }

.activities-filter__more-info a {
  color: #3d96ca;
  display: block;
  margin: 15px 0 5px; }

.activities-filter__button {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.75rem;
  margin: 0;
  background: #c9cacb;
  border: 2px solid #c9cacb;
  color: #ffffff;
  cursor: pointer;
  float: left;
  font-family: 'Circular Std Bold', sans-serif;
  padding: 8px 20px;
  pointer-events: none;
  text-align: center;
  text-transform: uppercase;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__button {
      width: 100px; } }
  .activities-filter__button.active {
    background: #ff080d;
    border: 2px solid #ff080d;
    pointer-events: auto; }
    .activities-filter__button.active:hover {
      background: #ffffff;
      color: #ff080d; }
  .activities-filter__button span {
    display: inline; }
    @media print, screen and (min-width: 40em) {
      .activities-filter__button span {
        display: none; } }

.activities-filter__search {
  background: #f7f9fa;
  clear: both;
  display: none;
  margin-top: 1px;
  padding: 25px 15px;
  text-align: center;
  -webkit-transition: background .4s;
  transition: background .4s; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__search {
      display: block; } }
  .activities-filter__search.expanded .activities-filter__search-title:after {
    -webkit-transform: scaleY(-1);
        -ms-transform: scaleY(-1);
            transform: scaleY(-1); }

.activities-filter__search-title {
  color: #000;
  cursor: pointer;
  display: inline-block;
  padding-right: 30px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__search-title {
      font-size: 1.125rem;
      line-height: 1.5rem; } }
  @media print, screen and (min-width: 64em) {
    .activities-filter__search-title {
      font-size: 1.375rem;
      line-height: 1.875rem; } }
  .activities-filter__search-title:after {
    background: url("../img/expand.svg") center center/contain no-repeat;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 20px; }

.activities-filter__search-bar {
  padding: 20px 0 10px; }
  .activities-filter__search-bar input[type='text'] {
    border-radius: 0;
    margin: auto;
    padding: 0.8125rem 3.125rem 0.8125rem 1.25rem; }

.activities-filter__search-icon {
  background: #ffffff url("../img/search.svg") no-repeat 96% center;
  -webkit-background-size: 25px 25px;
          background-size: 25px;
  border: 0;
  cursor: pointer;
  display: inline-block;
  height: 40px;
  margin-top: -10px;
  outline: none;
  position: relative;
  right: 60px;
  top: 14px;
  width: 40px; }

@-moz-document url-prefix() {
  .activities-filter__search-icon {
    margin-top: 0;
    top: -9px; } }

.activities-filter__mobile {
  display: block;
  height: 48px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .activities-filter__mobile {
      display: none; } }
  .activities-filter__mobile.expanded {
    background: #e4e4e5; }
    .activities-filter__mobile.expanded .activities-filter__title {
      background: #e4e4e5;
      color: #1b2326;
      padding: 10px 20px; }
      .activities-filter__mobile.expanded .activities-filter__title:after {
        background: url("../img/close-blue.svg") no-repeat center center;
        -webkit-background-size: 30px 30px;
                background-size: 30px; }
    .activities-filter__mobile.expanded .activities-filter__mobile-search {
      width: 0; }

.activities-filter__mobile-search {
  background: #e4e4e5;
  height: 100%;
  left: 0;
  overflow: hidden;
  padding: 5px 0;
  position: absolute;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 70px;
  z-index: 10; }
  .activities-filter__mobile-search input[type='text'] {
    background: #ffffff url("../img/search.svg") no-repeat 96% center;
    -webkit-background-size: 25px 25px;
            background-size: 25px;
    border-radius: 35px;
    font-size: 1rem;
    margin: 0 0 0 70px;
    max-width: 570px;
    opacity: 0;
    padding: 0.625rem 3.75rem 0.625rem 0.9375rem;
    pointer-events: none;
    -webkit-transition: opacity .5s;
    transition: opacity .5s;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    width: calc(100% - 90px); }
  .activities-filter__mobile-search.active {
    border-right: 0;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
    width: 100%; }
    .activities-filter__mobile-search.active .activities-filter__mobile-search-icon:before {
      background: url("../img/arrow-left-blue.svg") no-repeat 14px center;
      -webkit-background-size: 35px 35px;
              background-size: 35px; }
    .activities-filter__mobile-search.active input[type='text'] {
      opacity: 1;
      pointer-events: auto;
      -webkit-transition-delay: .4s;
              transition-delay: .4s; }

.activities-filter__mobile-search-icon {
  border-left: 1px solid #e4e4e5;
  cursor: pointer;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: border .4s;
  transition: border .4s;
  width: 70px; }
  .activities-filter__mobile-search-icon:before {
    background: url("../img/search.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-transition: width .4s;
    transition: width .4s;
    width: 100%; }

.benefits {
  background: #ff080d; }

.benefits__title {
  padding-bottom: 18px !important;
  text-align: center; }

.benefits__list {
  margin: 36px;
  padding: 0; }
  @media print, screen and (min-width: 40em) {
    .benefits__list {
      -webkit-column-count: 2;
              column-count: 2;
      -webkit-column-gap: 2.5em;
              column-gap: 2.5em; } }
  .benefits__list h3 {
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 10px; }
  .benefits__list li {
    color: #666;
    font-size: 0.9375rem;
    line-height: 1.25rem;
    list-style: none;
    margin: 0 0 32px;
    max-width: 400px;
    padding-left: 25px;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .benefits__list li {
        font-size: 1.125rem;
        line-height: 1.5rem;
        padding-left: 35px; } }
    .benefits__list li:before {
      background: url("../img/check.svg") no-repeat center center;
      -webkit-background-size: 27px 27px;
              background-size: 27px;
      content: '';
      height: 1.25rem;
      left: 0;
      position: absolute;
      top: 0;
      width: 15px; }
      @media print, screen and (min-width: 40em) {
        .benefits__list li:before {
          -webkit-background-size: 30px 30px;
                  background-size: 30px; } }

.article__header {
  padding: 25px 20px; }
  @media print, screen and (min-width: 40em) {
    .article__header {
      padding: 50px 20px 40px; } }
  @media print, screen and (min-width: 64em) {
    .article__header {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      padding: 70px 20px 50px; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .article__header {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .article__header, .article__header:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .article__header:last-child:not(:first-child) {
        float: right; } }

.article__title {
  color: #333;
  font-size: 1.625rem;
  line-height: 1.875rem;
  margin: 10px 0 0; }
  @media print, screen and (min-width: 40em) {
    .article__title {
      font-size: 2.25rem;
      line-height: 2.75rem; } }
  @media print, screen and (min-width: 64em) {
    .article__title {
      font-size: 2.875rem;
      line-height: 3.25rem;
      max-width: 800px; } }

.article__info {
  margin: 15px 0; }
  @media print, screen and (min-width: 40em) {
    .article__info {
      margin: 20px 0 35px; } }

.article__author,
.article__date {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  display: block;
  margin-right: 20px; }
  @media print, screen and (min-width: 40em) {
    .article__author,
    .article__date {
      display: inline-block;
      font-size: 1.125rem;
      line-height: 1.25rem; } }
  .article__author a,
  .article__author span,
  .article__date a,
  .article__date span {
    font-weight: normal; }
  .article__author a,
  .article__date a {
    color: #3d96ca;
    text-decoration: none; }
    .article__author a:hover,
    .article__date a:hover {
      text-decoration: underline; }

.article__meta {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  background: #f4f4f4;
  color: #666;
  margin-left: -20px;
  padding: 10px 20px;
  width: calc(100% + 40px); }
  @media print, screen and (min-width: 40em) {
    .article__meta {
      padding: 20px; } }
  @media print, screen and (min-width: 64em) {
    .article__meta {
      margin-left: 0;
      width: 100%; } }
  .article__meta a {
    color: #3d96ca;
    text-decoration: none; }
    .article__meta a:hover {
      text-decoration: underline; }

.article__meta-inner {
  display: none;
  padding: 10px 0; }
  @media print, screen and (min-width: 40em) {
    .article__meta-inner {
      display: block;
      padding: 0; } }

.article__meta-title {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #3d96ca;
  cursor: pointer;
  display: block;
  position: relative; }
  .article__meta-title:after {
    background: url("../img/expand.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 35px; }
  .article__meta-title.expanded:after {
    background: url("../img/hide.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px; }
  @media print, screen and (min-width: 40em) {
    .article__meta-title {
      display: none; } }

.article__categories {
  display: block;
  margin: 10px 20px 10px 0; }
  .article__categories:last-of-type span {
    display: none; }
  .article__categories .post-categories {
    display: inline-block;
    margin: 0;
    padding: 0 0 0 5px; }
    .article__categories .post-categories li {
      display: inline-block;
      float: left;
      list-style: none; }
      .article__categories .post-categories li a {
        display: block;
        margin-bottom: -6px; }
  @media print, screen and (min-width: 64em) {
    .article__categories {
      display: inline;
      margin: 0 20px 0 0; } }

.article__share {
  margin-top: 20px; }
  @media print, screen and (min-width: 64em) {
    .article__share {
      float: right;
      margin-top: 0; } }

.article__share-item {
  cursor: pointer;
  display: inline-block;
  height: 22px;
  margin-right: 2px;
  text-indent: -10000px;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 22px; }
  .article__share-item:first-of-type {
    margin-left: 5px; }
  .article__share-item.fb-share {
    background: url("../img/facebook-blue.svg") center center/contain no-repeat; }
  .article__share-item.tw-share {
    background: url("../img/x-blue.svg") center center/contain no-repeat; }
  .article__share-item.email-share {
    background: url("../img/email-blue.svg") center center/80% auto no-repeat; }

.article__content {
  color: #333;
  padding: 25px 20px 40px; }
  @media print, screen and (min-width: 40em) {
    .article__content {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      padding-bottom: 50px; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .article__content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
      .article__content, .article__content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .article__content:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .article__content {
      width: 66.66667%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 16.66667%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .article__content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .article__content, .article__content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .article__content:last-child:not(:first-child) {
        float: right; } }
  .article__content p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.375rem;
    margin: 0;
    margin-bottom: 15px; }
    @media print, screen and (min-width: 40em) {
      .article__content p {
        font-size: 1.125rem;
        line-height: 1.75rem;
        margin-bottom: 30px; } }
    .article__content p strong {
      font-weight: bold; }
    .article__content p em {
      font-style: italic; }
  .article__content > p:first-of-type {
    font-size: 1.125rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.625rem;
    margin: 0;
    margin-bottom: 15px; }
    @media print, screen and (min-width: 40em) {
      .article__content > p:first-of-type {
        font-size: 1.375rem;
        line-height: 1.875rem;
        margin-bottom: 30px; } }
  .article__content h1,
  .article__content h2,
  .article__content h3,
  .article__content h4,
  .article__content h5 {
    margin-bottom: 10px; }
  .article__content h3,
  .article__content h4,
  .article__content h5 {
    color: #333; }
  .article__content a {
    color: #3d96ca;
    text-decoration: none; }
    .article__content a:hover {
      text-decoration: underline; }
  .article__content > ul,
  .article__content > ol {
    margin-bottom: 30px;
    padding-left: 45px; }
    .article__content > ul li,
    .article__content > ol li {
      font-size: 1.125rem;
      line-height: 1.75rem;
      margin: 10px 0;
      position: relative; }
  .article__content > ul li {
    list-style: none; }
    .article__content > ul li:before {
      background: #ff080d;
      border-radius: 50%;
      content: '';
      display: block;
      height: 6px;
      left: -20px;
      position: absolute;
      top: 10px;
      width: 6px; }
      @media print, screen and (min-width: 40em) {
        .article__content > ul li:before {
          left: -25px; } }
  .article__content > ol {
    counter-reset: item; }
    .article__content > ol li {
      display: list-item;
      list-style-type: decimal; }
      .article__content > ol li:before {
        color: #ff080d;
        content: counter(item) ".";
        counter-increment: item;
        left: -20px;
        position: absolute;
        top: 0; }
        @media print, screen and (min-width: 40em) {
          .article__content > ol li:before {
            left: -27px; } }
  .article__content > blockquote {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    background: #eaefff;
    left: -20px;
    margin-bottom: 20px;
    padding: 30px 20px;
    position: relative;
    width: calc(100% + 40px); }
    .article__content > blockquote p {
      margin: 0; }
    @media print, screen and (min-width: 40em) {
      .article__content > blockquote {
        left: -40px;
        margin-bottom: 30px;
        padding: 30px 40px;
        width: calc(100% + 80px); }
        .article__content > blockquote p {
          font-size: 1.375rem;
          line-height: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .article__content > blockquote {
        left: -60px;
        padding: 30px 60px;
        width: calc(100% + 120px); } }
  @media print, screen and (min-width: 40em) {
    .article__content figure.alignleft.wp-caption, .article__content figure.alignright.wp-caption,
    .article__content img.alignleft.wp-caption,
    .article__content img.alignright.wp-caption {
      max-width: 50%; } }
  .article__content figure.alignleft.wp-caption img, .article__content figure.alignright.wp-caption img,
  .article__content img.alignleft.wp-caption img,
  .article__content img.alignright.wp-caption img {
    width: 100%; }
  .article__content figure.alignleft,
  .article__content img.alignleft {
    float: left;
    height: auto;
    margin: 30px 0;
    position: relative;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .article__content figure.alignleft,
      .article__content img.alignleft {
        margin: 20px 25px 20px 0;
        max-width: 50%;
        width: auto; } }
    @media print, screen and (min-width: 64em) {
      .article__content figure.alignleft,
      .article__content img.alignleft {
        margin: 20px -25px 20px 0;
        right: 60px;
        width: auto; } }
  .article__content figure.alignright,
  .article__content img.alignright {
    float: right;
    height: auto;
    margin: 30px 0;
    position: relative;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .article__content figure.alignright,
      .article__content img.alignright {
        margin: 20px 0 20px 25px;
        max-width: 50%;
        width: auto; } }
    @media print, screen and (min-width: 64em) {
      .article__content figure.alignright,
      .article__content img.alignright {
        left: 60px;
        margin: 20px 0 20px -25px;
        width: auto; } }
  .article__content figure.aligncenter, .article__content figure.alignnone,
  .article__content img.aligncenter,
  .article__content img.alignnone {
    display: tabke;
    height: auto;
    margin: 30px auto;
    max-width: 100%; }
    @media print, screen and (min-width: 40em) {
      .article__content figure.aligncenter, .article__content figure.alignnone,
      .article__content img.aligncenter,
      .article__content img.alignnone {
        margin: 50px auto; }
        .article__content figure.aligncenter.wp-caption, .article__content figure.alignnone.wp-caption,
        .article__content img.aligncenter.wp-caption,
        .article__content img.alignnone.wp-caption {
          display: table; }
          .article__content figure.aligncenter.wp-caption .wp-caption-text, .article__content figure.alignnone.wp-caption .wp-caption-text,
          .article__content img.aligncenter.wp-caption .wp-caption-text,
          .article__content img.alignnone.wp-caption .wp-caption-text {
            caption-side: bottom;
            display: table-caption; } }
    .article__content figure.aligncenter img, .article__content figure.alignnone img,
    .article__content img.aligncenter img,
    .article__content img.alignnone img {
      height: auto; }
  .article__content img {
    height: auto;
    max-width: 100%; }
  .article__content .wp-caption-text {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.25rem;
    margin-top: 6px; }
  .article__content .iframe-video {
    height: 0;
    left: 0;
    margin: 30px 0;
    padding-bottom: 55.25%;
    padding-top: 25px;
    position: relative;
    width: 100%; }
    .article__content .iframe-video iframe {
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%; }
  .article__content .table-container {
    margin: 40px 0;
    overflow-x: scroll;
    width: calc(100% + 20px); }
    @media print, screen and (min-width: 40em) {
      .article__content .table-container {
        overflow-x: hidden; } }
    .article__content .table-container table {
      border-collapse: separate;
      border-spacing: 0;
      margin-bottom: 20px;
      min-width: 600px;
      text-align: left;
      width: 100%; }
      @media print, screen and (min-width: 40em) {
        .article__content .table-container table {
          min-width: 0; } }
      .article__content .table-container table th {
        font-size: 1.125rem;
        font-family: "Circular Std Book", sans-serif;
        font-weight: 400;
        letter-spacing: -0.01em;
        line-height: 1.5rem;
        margin: 0;
        border-bottom: 2px solid #e4e4e5;
        border-top: 2px solid #e4e4e5;
        color: #333;
        padding: 20px; }
      .article__content .table-container table tbody tr:nth-of-type(2n + 1) {
        background: #f4f4f4; }
      .article__content .table-container table tbody tr td {
        font-size: 0.875rem;
        font-family: "Circular Std Book", sans-serif;
        font-weight: 400;
        letter-spacing: -0.01em;
        line-height: 1.125rem;
        margin: 0;
        color: #666;
        padding: 25px 20px; }
        .article__content .table-container table tbody tr td a {
          color: #ff080d; }
  .article__content .input__wrapper,
  .article__content .select__wrapper {
    margin-bottom: 25px;
    margin-top: 10px; }
  .article__content .contact-main__module {
    margin: 0;
    padding-bottom: 30px; }
  .article__content .contact-main__footer {
    background: #f4f4f4;
    margin: 0; }

.article__quote {
  background: #f1f2f4;
  left: -20px;
  margin-bottom: 20px;
  padding: 30px 20px;
  position: relative;
  width: calc(100% + 40px); }
  @media print, screen and (min-width: 40em) {
    .article__quote {
      left: -40px;
      margin-bottom: 30px;
      padding: 30px 40px;
      width: calc(100% + 80px); } }
  @media print, screen and (min-width: 64em) {
    .article__quote {
      left: -60px;
      padding: 30px 60px;
      width: calc(100% + 120px); } }
  .article__quote blockquote {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    margin-bottom: 20px;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .article__quote blockquote p {
        font-size: 1.375rem;
        line-height: 1.875rem; } }
  .article__quote p {
    margin: 0; }
  .article__quote span {
    display: inline;
    font-size: 0.9375rem;
    font-weight: bold;
    line-height: 1.5625rem; }

.cta-module {
  margin: 40px 0;
  text-align: center; }
  .cta-module a {
    display: block; }
    @media print, screen and (min-width: 40em) {
      .cta-module a {
        display: inline-block;
        margin: 5px 10px; } }
    .cta-module a.cta-module__primary {
      margin-bottom: 10px;
      width: 100%; }
      .cta-module a.cta-module__primary:hover {
        text-decoration: none; }
      @media print, screen and (min-width: 40em) {
        .cta-module a.cta-module__primary {
          margin-bottom: 5px;
          width: auto; } }

.checklist {
  margin: 35px 0;
  padding: 20px 0;
  position: relative; }
  .checklist:after, .checklist:before {
    background: #e4e4e5;
    content: '';
    height: 2px;
    position: absolute;
    right: 0;
    width: 100%; }
    @media print, screen and (min-width: 64em) {
      .checklist:after, .checklist:before {
        right: -15%;
        width: 115%; } }
  .checklist:after {
    bottom: 0; }
  .checklist:before {
    top: 0; }
  .checklist ul {
    margin: 25px 0;
    padding: 0; }
    .checklist ul li {
      font-size: 0.9375rem;
      font-family: "Circular Std Book", sans-serif;
      font-weight: 400;
      letter-spacing: -0.01em;
      line-height: 1.375rem;
      margin: 0;
      color: #666;
      list-style: none;
      margin: 20px 0;
      padding-left: 40px;
      position: relative; }
      @media print, screen and (min-width: 40em) {
        .checklist ul li {
          font-size: 1.125rem;
          line-height: 1.5rem; } }
      @media print, screen and (min-width: 64em) {
        .checklist ul li {
          width: 90%; } }
      .checklist ul li:before {
        background: url("../img/check.svg") no-repeat center center;
        -webkit-background-size: 30px 30px;
                background-size: 30px;
        content: '';
        height: 25px;
        left: 0;
        position: absolute;
        top: 0;
        width: 30px; }

.article__tags {
  clear: both;
  padding: 0 20px; }
  .article__tags::before, .article__tags::after {
    display: table;
    content: ' '; }
  .article__tags::after {
    clear: both; }

.article__tags-inner {
  border-top: 1px solid #c9cacb;
  padding: 15px 0 20px; }
  @media print, screen and (min-width: 40em) {
    .article__tags-inner {
      padding: 25px 0 30px; } }
  @media print, screen and (min-width: 64em) {
    .article__tags-inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .article__tags-inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .article__tags-inner, .article__tags-inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .article__tags-inner:last-child:not(:first-child) {
        float: right; } }

.article__tags-tag {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #3d96ca;
  display: inline-block;
  margin: 10px 10px 0 0; }
  @media print, screen and (min-width: 40em) {
    .article__tags-tag {
      margin: 15px 10px 0 0; } }
  @media print, screen and (min-width: 40em) {
    .article__tags-tag {
      font-size: 1.125rem;
      line-height: 1.25rem; } }
  .article__tags-tag:last-of-type span {
    display: none; }
  .article__tags-tag a {
    color: inherit;
    text-decoration: none; }
    .article__tags-tag a:hover {
      text-decoration: underline; }

.article-related {
  background-color: #f7f9fa;
  margin-bottom: 50px;
  padding: 50px 20px 0; }
  .article-related h2 {
    padding-bottom: 20px;
    text-align: center; }

@media print, screen and (min-width: 64em) {
  .article-related__inner {
    width: 83.33333%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .article-related__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .article-related__inner, .article-related__inner:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .article-related__inner:last-child:not(:first-child) {
      float: right; } }

.article-related__inner h2 a {
  color: inherit;
  display: inline-block; }

.ui-autocomplete {
  border: 2px solid #ffffff;
  border-bottom: 1px solid #ffffff;
  display: none;
  margin: 0 0 0 1.25rem;
  max-height: 200px;
  min-width: 80%;
  overflow: auto;
  padding: 0;
  position: absolute;
  z-index: 100; }
  @media print, screen and (min-width: 40em) {
    .ui-autocomplete {
      min-width: 400px; } }
  .ui-autocomplete:before {
    border-bottom: 8px solid #f4f4f4;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    content: '';
    height: 0;
    position: absolute;
    top: -8px;
    width: 0; }
  .ui-autocomplete li {
    font-size: 1.125rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    background-color: #f4f4f4;
    border-bottom: 1px solid #ffffff;
    color: #666;
    cursor: pointer;
    display: block;
    list-style: none;
    padding: 1px;
    width: 100%; }
    .ui-autocomplete li:hover, .ui-autocomplete li.focus {
      background-color: #e1e7ff; }
    .ui-autocomplete li a,
    .ui-autocomplete li div {
      padding: 5px 10px; }

.ui-helper-hidden-accessible {
  bottom: 0;
  left: -999em;
  position: absolute;
  z-index: -1; }

.ui-state-active {
  background-color: #e1e7ff; }

.bottom-nav {
  background-color: #f4f4f4;
  bottom: 0;
  -webkit-box-shadow: 9px 6px 6px 6px #939598;
          box-shadow: 9px 6px 6px 6px #939598;
  display: none;
  left: 0;
  min-width: 300px;
  padding: 6px 10px;
  position: fixed;
  top: inherit !important;
  -webkit-transition: bottom .4s;
  transition: bottom .4s;
  width: 100%; }

.bottom-nav__inner {
  margin: auto;
  text-align: center; }

.bottom-nav__link {
  display: inline-block;
  margin: 3px 0; }

.breadcrumb {
  font-size: 12px;
  left: 10px;
  position: absolute;
  right: 5px;
  top: 2px;
  z-index: 1; }
  .breadcrumb a:visited {
    color: #3d96ca; }

.author .breadcrumb,
.category .breadcrumb,
.centre-finder .breadcrumb,
.contact .breadcrumb,
.faqs-page .breadcrumb,
.generic .breadcrumb {
  top: 82px; }

.hero__content--author .hero__content-inner,
.hero__content--category .hero__content-inner {
  max-width: 600px; }

.article__intro .breadcrumb {
  left: 0;
  position: relative;
  right: 0;
  top: 0; }

.hero .breadcrumb {
  color: #fff; }
  .hero .breadcrumb a {
    color: #fff; }
    .hero .breadcrumb a:visited {
      color: #fff; }

.cta-module a.cta-module__primary, .bottom-nav__link, .contact-main__button, .contact--feedback .contact-main__button, .freeswim .contact-main__button, .contenthub-menu__search-button, .featured-facilities__virtual-button, .featured-facilities__highlight-cta, .feeling-inspired__button, .generic-main__button, .home-v2-callout__article-meta .highlight-cta, .home-v2-content-block .highlight-cta, .modal__link--button, .membership-benefits__button, .membership-bundles__type-link, .membership-bundles__type-bundle-link, .membership-offer__button, .scrollbox__content-button, .cookie-banner__button,
.button {
  background-color: #ff080d;
  border: 1px solid transparent;
  border-radius: 0;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  font-family: "Barlow Semi Condensed", sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: .08em;
  outline: none;
  padding: 0.6875rem 1.125rem;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-transition: all .3s;
  transition: all .3s; }
  @media print, screen and (min-width: 40em) {
    .cta-module a.cta-module__primary, .bottom-nav__link, .contact-main__button, .contact--feedback .contact-main__button, .freeswim .contact-main__button, .contenthub-menu__search-button, .featured-facilities__virtual-button, .featured-facilities__highlight-cta, .feeling-inspired__button, .generic-main__button, .home-v2-callout__article-meta .highlight-cta, .home-v2-content-block .highlight-cta, .modal__link--button, .membership-benefits__button, .membership-bundles__type-link, .membership-bundles__type-bundle-link, .membership-offer__button, .scrollbox__content-button, .cookie-banner__button,
    .button {
      font-size: 1rem;
      padding: 0.6875rem 1.5rem; } }

.button--subtle {
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid #c9cacb;
  border-radius: 4px;
  color: #1b2326;
  padding: 0.34375rem 0.7425rem;
  vertical-align: text-bottom;
  line-height: 1.1em;
  margin-bottom: -0.2rem;
  -webkit-transition: all .3s;
  transition: all .3s; }
  @media print, screen and (min-width: 40em) {
    .button--subtle {
      padding: 0.34375rem 0.99rem; } }
  .button--subtle:hover, .button--subtle:focus {
    background-color: #939598; }

.featured-facilities__virtual-button, .feeling-inspired__button, .membership-offer__button,
.button--large {
  border: 1px solid #ff080d;
  font-size: 0.75rem;
  padding: 0.75rem 2.1875rem; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__virtual-button, .feeling-inspired__button, .membership-offer__button,
    .button--large {
      border: 2px solid #ff080d;
      font-size: 0.9375rem;
      padding: 0.8125rem 1.5625rem; } }

.cta-module a.cta-module__primary:hover, .bottom-nav__link:hover, .contact-main__button:hover, .contenthub-menu__search-button:hover, .featured-facilities__virtual-button:hover, .featured-facilities__highlight-cta:hover, .feeling-inspired__button:hover, .generic-main__button:hover, .home-v2-callout__article-meta .highlight-cta:hover, .home-v2-content-block .highlight-cta:hover, .modal__link--button:hover, .membership-benefits__button:hover, .membership-bundles__type-link:hover, .membership-bundles__type-bundle-link:hover, .membership-offer__button:hover, .scrollbox__content-button:hover, .cookie-banner__button:hover, .cta-module a.cta-module__primary:focus, .bottom-nav__link:focus, .contact-main__button:focus, .contenthub-menu__search-button:focus, .featured-facilities__virtual-button:focus, .featured-facilities__highlight-cta:focus, .feeling-inspired__button:focus, .generic-main__button:focus, .home-v2-callout__article-meta .highlight-cta:focus, .home-v2-content-block .highlight-cta:focus, .modal__link--button:focus, .membership-benefits__button:focus, .membership-bundles__type-link:focus, .membership-bundles__type-bundle-link:focus, .membership-offer__button:focus, .scrollbox__content-button:focus, .cookie-banner__button:focus,
.button:hover,
.button:focus, .button--square, .contenthub-menu__search-button,
.button--active {
  background-color: #ff080d;
  color: #ffffff; }


.button--disabled {
  border: 1px solid #c9cacb;
  color: #c9cacb;
  cursor: not-allowed;
  pointer-events: none; }


.button--primed {
  background-color: #ffffff; }


.button--greyed-out {
  border: 1px solid #939598;
  color: #939598; }
  
  .button--greyed-out:hover,
  .button--greyed-out:focus {
    background-color: #333;
    color: #ffffff; }


.button--change {
  border: 1px solid #333;
  color: #333; }
  
  .button--change:hover,
  .button--change:focus {
    background-color: #333;
    color: #ffffff; }

.featured-facilities__extras-more,
.button__more-info {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #3d96ca;
  cursor: pointer;
  padding-right: 25px;
  position: relative; }
  .featured-facilities__extras-more:after,
  .button__more-info:after {
    background: url("../img/expand.svg") center center/15px auto no-repeat;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 20px; }
  .featured-facilities__extras-more:hover, .featured-facilities__extras-more:focus,
  .button__more-info:hover,
  .button__more-info:focus {
    text-decoration: underline; }
  .button__more-info--expanded.featured-facilities__extras-more:after,
  .button__more-info.button__more-info--expanded:after {
    background: url("../img/hide.svg") no-repeat center center;
    -webkit-background-size: 28px 28px;
            background-size: 28px; }

.button__save-selection {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #3d96ca;
  cursor: pointer;
  padding-right: 25px;
  position: relative;
  text-align: left; }
  .button__save-selection:after {
    background: url("../img/download-blue.svg") no-repeat center center;
    -webkit-background-size: 28px 28px;
            background-size: 28px;
    content: '';
    height: 24px;
    position: absolute;
    right: 0;
    top: -1px;
    width: 25px; }
  .button__save-selection:hover, .button__save-selection:focus {
    text-decoration: underline; }

.location-finder__button-location,
.button__location {
  color: #ff080d;
  cursor: pointer;
  padding-left: 35px;
  position: relative; }
  .location-finder__button-location:before,
  .button__location:before {
    background: url("../img/geolocation.svg") no-repeat center center;
    -webkit-background-size: 32px 32px;
            background-size: 32px;
    content: '';
    height: 32px;
    left: 0;
    position: absolute;
    top: -6px;
    width: 32px; }

.button__load-more {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  background: #ffffff;
  border: 1px solid #000;
  color: #000;
  cursor: pointer;
  font-family: "Barlow Semi Condensed", sans-serif;
  outline: 0;
  padding: 10px;
  text-align: center;
  text-transform: uppercase;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%; }
  .button__load-more:hover {
    background: #000;
    border-color: #000;
    color: #ffffff;
    -webkit-transition: all .4s;
    transition: all .4s; }
    .button__load-more:hover span:after {
      background-image: url("../img/download-white.svg");
      -webkit-transition: all .4s;
      transition: all .4s; }
  .button__load-more a {
    color: inherit;
    text-decoration: none; }
  .button__load-more span {
    padding-right: 26px;
    position: relative; }
    .button__load-more span:after {
      background: url("../img/download-black.svg") center center/contain no-repeat;
      content: '';
      height: 18px;
      position: absolute;
      right: 0;
      top: 2px;
      -webkit-transition: all .4s;
      transition: all .4s;
      width: 18px; }
  .button__load-more.loading {
    background: #ffffff;
    color: #333; }
    .button__load-more.loading span:after {
      background: url("../img/rolling.svg") no-repeat center center;
      -webkit-background-size: 16px 16px;
              background-size: 16px; }

.button--square {
  margin-top: 24px;
  padding: 20px 24px; }

.centre-about {
  clear: both;
  padding: 45px 20px 0;
  text-align: center; }
  .centre-about::before, .centre-about::after {
    display: table;
    content: ' '; }
  .centre-about::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .centre-about {
      padding-top: 60px; } }
  @media screen and (min-width: 81.25em) {
    .centre-about {
      padding-top: 80px; } }
  .centre-about p:not(.tagline) {
    font-size: 1.125rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    line-height: 1.5rem;
    margin: 20px auto 30px;
    max-width: 750px; }
    @media print, screen and (min-width: 40em) {
      .centre-about p:not(.tagline) {
        font-size: 1.375rem;
        line-height: 1.875rem; } }
  .centre-about p.tagline {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    margin: 5rem 0 1.25rem; }
  .centre-about img {
    max-height: 140px;
    max-width: 180px;
    width: auto; }
  .centre-about h2 {
    font-size: 2.25rem; }
  .centre-about h3 {
    font-size: 1.75rem;
    letter-spacing: -.03em;
    line-height: 2.25rem; }

.centre-activities {
  clear: both;
  margin-bottom: 20px;
  padding: 0;
  text-align: center; }
  .centre-activities::before, .centre-activities::after {
    display: table;
    content: ' '; }
  .centre-activities::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .centre-activities {
      padding: 0 20px; } }
  .centre-activities h2 {
    font-size: 2.25rem;
    line-height: 2.25rem;
    padding: 0 20px; }
  .centre-activities h3 {
    font-size: 1.75rem;
    letter-spacing: -.03em;
    line-height: 2.25rem; }

.centre-activities__intro {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  line-height: 1.5rem;
  margin: 20px auto 30px;
  max-width: 750px;
  padding: 0 20px; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__intro {
      font-size: 1.375rem;
      line-height: 1.875rem; } }

@media print, screen and (min-width: 64em) {
  .centre-activities__wrapper {
    width: 83.33333%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-activities__wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .centre-activities__wrapper, .centre-activities__wrapper:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .centre-activities__wrapper:last-child:not(:first-child) {
      float: right; } }

.centre-activities__lists {
  clear: both;
  margin-bottom: 20px; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__lists {
      margin: 0 auto 20px;
      width: 85%; } }
  @media print, screen and (min-width: 64em) {
    .centre-activities__lists {
      width: 100%; } }
  .centre-activities__lists h3 {
    margin: 50px 0 15px; }

.centre-activities__filter {
  font-size: 1rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.375rem;
  margin: 0;
  clear: both;
  display: none;
  padding: 20px 20px 25px;
  text-align: left; }
  .centre-activities__filter::before, .centre-activities__filter::after {
    display: table;
    content: ' '; }
  .centre-activities__filter::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__filter {
      font-size: 1.125rem;
      line-height: 1.5rem;
      padding: 20px 0 40px; } }

.centre-activities__filter-options {
  display: block; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__filter-options {
      display: inline-block;
      float: left;
      max-width: 80%; } }
  .centre-activities__filter-options .filter-options {
    font-family: "Circular Std Bold", sans-serif;
    text-transform: capitalize; }

.centre-activities__filter-clear {
  clear: both;
  color: #ff080d;
  cursor: pointer;
  margin-top: 5px; }
  .centre-activities__filter-clear:hover {
    text-decoration: underline; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__filter-clear {
      clear: initial;
      float: right;
      margin-top: 0; } }

.centre-activities__list {
  clear: both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .centre-activities__list::before, .centre-activities__list::after {
    display: table;
    content: ' '; }
  .centre-activities__list::after {
    clear: both; }

.centre-activities__no-result {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  margin: auto;
  padding: 15px 20px; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__no-result {
      font-size: 1.125rem;
      line-height: 1.75rem; } }

.centre-activities__list-item {
  background: #f4f4f4;
  border-bottom: 2px solid #ffffff;
  cursor: pointer;
  float: left;
  padding: 25px 45px 25px 20px;
  position: relative;
  text-align: left;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__list-item {
      border: 1px solid #ffffff;
      min-height: 160px;
      padding: 25px 0 10px 20px;
      width: 50%; } }
  @media print, screen and (min-width: 64em) {
    .centre-activities__list-item {
      min-height: 190px;
      width: 25%; } }
  .centre-activities__list-item:hover {
    background: #e4e4e5; }
  .centre-activities__list-item h5 {
    border-bottom: 1px solid #939598;
    font-size: 0.9375rem;
    line-height: 1.25rem;
    padding-bottom: 5px;
    padding-right: 10px; }
    @media print, screen and (min-width: 40em) {
      .centre-activities__list-item h5 {
        font-size: 1.125rem;
        line-height: 1.75rem; } }
  .centre-activities__list-item p {
    font-size: 0.875rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    color: #666; }
    @media print, screen and (min-width: 40em) {
      .centre-activities__list-item p {
        bottom: 10px;
        position: absolute; } }
  .centre-activities__list-item ul {
    list-style: none;
    margin: 0 0 15px;
    padding: 0; }
    @media print, screen and (min-width: 40em) {
      .centre-activities__list-item ul {
        margin: 0 0 25px;
        padding-right: 10px; } }
    .centre-activities__list-item ul li {
      font-size: 0.875rem;
      font-family: "Circular Std Book", sans-serif;
      font-weight: 400;
      letter-spacing: -0.01em;
      line-height: 1.25rem;
      margin: 0;
      color: #666;
      margin: 5px 0;
      padding-left: 15px;
      position: relative; }
      .centre-activities__list-item ul li:before {
        background: #ff080d;
        border-radius: 50%;
        content: '';
        height: 4px;
        left: 0;
        position: absolute;
        top: 8px;
        width: 4px; }

.centre-activities__list--popular {
  display: none; }
  .centre-activities__list--popular .centre-activities__list-item {
    border: 1px solid #ffffff;
    padding: 0;
    width: 50%; }
    @media print, screen and (min-width: 40em) {
      .centre-activities__list--popular .centre-activities__list-item {
        padding: 0; } }
    @media print, screen and (min-width: 64em) {
      .centre-activities__list--popular .centre-activities__list-item {
        width: 25%; } }
  .centre-activities__list--popular .centre-activities__list-item-content {
    min-height: 150px;
    padding: 25px 20px; }
    @media print, screen and (min-width: 40em) {
      .centre-activities__list--popular .centre-activities__list-item-content {
        min-height: 190px;
        padding: 25px 0 10px 25px; } }
  .centre-activities__list--popular .centre-activities__show-info:before {
    bottom: 10px;
    height: 30px;
    right: 10px;
    top: auto; }

.centre-activities__list-image {
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  height: 0;
  padding-bottom: 50%;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .centre-activities__list-image {
      padding-bottom: 60%; } }

.centre-activities__show-info {
  background-color: transparent;
  cursor: pointer;
  height: 100%;
  outline: 0;
  position: absolute;
  right: 0;
  top: 0; }
  .centre-activities__show-info:hover, .centre-activities__show-info:focus {
    color: #333; }
  .centre-activities__show-info:before {
    background: url("../img/show-more.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    position: absolute;
    right: 7px;
    top: 0;
    width: 30px; }
    @media print, screen and (min-width: 40em) {
      .centre-activities__show-info:before {
        bottom: 7px;
        height: 30px;
        top: auto; } }

.centre-activities__load-more {
  background: #f4f4f4;
  display: none;
  padding: 20px;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .centre-activities__load-more {
      border: 1px solid #ffffff; } }
  .centre-activities__load-more.show {
    display: block; }
  .centre-activities__load-more button {
    border: 2px solid #c9cacb;
    width: 175px; }

.centre-activities__info {
  background: #f4f4f4;
  position: relative; }

@media print, screen and (min-width: 64em) {
  .page-template-centre-finder .wrapper {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; } }

@media print, screen and (min-width: 64em) {
  .centre-finder {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    height: 100%; } }

.centre-finder .container {
  pointer-events: none;
  position: relative; }

.centre-finder__background {
  display: none;
  height: 100%;
  left: 0;
  padding-top: 72px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0; }
  @media print, screen and (min-width: 64em) {
    .centre-finder__background {
      display: block; } }

.centre-finder__column {
  float: left;
  height: 100%;
  width: 60%; }
  .centre-finder__column.centre-finder__column--image {
    background: url("../img/bg/centre-finder.jpg") no-repeat center top;
    -webkit-background-size: cover;
            background-size: cover;
    position: relative;
    width: 40%; }

.centre-finder__map {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

.centre-finder__map-inner {
  height: 100%;
  width: 100%; }

.centre-finder__content {
  background: #ffffff;
  min-height: 80vh;
  pointer-events: all; }
  @media print, screen and (min-width: 64em) {
    .centre-finder__content {
      width: 66.66667%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      height: 100%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-finder__content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .centre-finder__content, .centre-finder__content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-finder__content:last-child:not(:first-child) {
        float: right; } }
  @media screen and (min-width: 81.25em) {
    .centre-finder__content {
      width: 75%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 0%; } }
  @media screen and (min-width: 81.25em) and (min-width: 40em) {
    .centre-finder__content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media screen and (min-width: 81.25em) {
      .centre-finder__content, .centre-finder__content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-finder__content:last-child:not(:first-child) {
        float: right; } }

.centre-finder__results-scroll-more {
  height: 35px;
  left: 0;
  position: absolute;
  right: 0; }
  .centre-finder__results-scroll-more p {
    color: #939598;
    font-size: 12px;
    padding-top: 10px;
    text-align: center; }

@media print, screen and (min-width: 64em) {
  .centre-finder__sidebar {
    height: 100%; } }

.centre-finder-content {
  padding-top: 2.5rem; }
  @media print, screen and (min-width: 40em) {
    .centre-finder-content {
      padding-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .centre-finder-content {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 81.25em) {
    .centre-finder-content {
      padding-top: 5rem; } }

.centre-finder-content__header {
  padding: 15px 20px 0;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .centre-finder-content__header {
      padding: 0 30px 0 0; } }
  .centre-finder-content__header h1.hidden {
    display: none; }
    @media print, screen and (min-width: 40em) {
      .centre-finder-content__header h1.hidden {
        display: block; } }
  @media print, screen and (min-width: 64em) {
    .centre-finder-content__header h1 {
      font-size: 2.875rem;
      line-height: 3.875rem; } }
  .centre-finder-content__header h2 {
    margin-top: 20px;
    max-width: 680px; }

.centre-finder-content__header--secondary {
  padding-bottom: 3.125rem;
  padding-top: 20px; }
  @media print, screen and (min-width: 40em) {
    .centre-finder-content__header--secondary {
      padding-top: 30px; } }
  @media print, screen and (min-width: 64em) {
    .centre-finder-content__header--secondary {
      padding-bottom: 15%; } }
  @media print, screen and (min-width: 64em) {
    .centre-finder-content__header--secondary {
      padding-bottom: 7.8125rem; } }

.centre-finder-content__description {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  max-width: 680px;
  padding: 20px 0 60px; }
  @media print, screen and (min-width: 40em) {
    .centre-finder-content__description {
      font-size: 1.375rem;
      line-height: 1.875rem; } }

.centre-finder-content__link {
  color: #3d96ca;
  display: block;
  font-size: 0.9375rem;
  text-align: left;
  text-decoration: none; }
  .centre-finder-content__link:hover {
    text-decoration: underline; }
  @media print, screen and (min-width: 40em) {
    .centre-finder-content__link {
      font-size: 1.125rem; } }

.centre-finder__results-loader {
  display: none; }

.centre-finder__results {
  display: none;
  margin-bottom: 40px;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .centre-finder__results {
      margin-right: 20px; } }

.centre-finder__results-meta {
  padding: 30px 15px 20px; }
  .centre-finder__results-meta::before, .centre-finder__results-meta::after {
    display: table;
    content: ' '; }
  .centre-finder__results-meta::after {
    clear: both; }

.centre-finder__results-amount {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.375rem;
  margin: 0;
  display: inline-block;
  vertical-align: middle; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-amount {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  @media print, screen and (min-width: 64em) {
    .centre-finder__results-amount {
      width: calc(100% - 175px); } }

.centre-finder__results-content {
  overflow: hidden;
  position: relative; }

@media print, screen and (min-width: 40em) {
  .centre-finder__results-shadow {
    display: none;
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%; }
    .centre-finder__results-shadow.shadow--top {
      background: -webkit-linear-gradient(top, #939598 0, rgba(0, 0, 0, 0) 30px, rgba(0, 0, 0, 0) 100%);
      background: linear-gradient(to bottom, #939598 0, rgba(0, 0, 0, 0) 30px, rgba(0, 0, 0, 0) 100%);
      top: -15px; }
    .centre-finder__results-shadow.shadow--bottom {
      background: -webkit-linear-gradient(bottom, #939598 0, rgba(0, 0, 0, 0) 30px, rgba(0, 0, 0, 0) 100%);
      background: linear-gradient(to top, #939598 0, rgba(0, 0, 0, 0) 30px, rgba(0, 0, 0, 0) 100%);
      display: block;
      top: 15px; } }

@media print, screen and (min-width: 40em) {
  .centre-finder__results-scroll {
    height: 600px;
    overflow-y: scroll; } }

@media print, screen and (min-width: 64em) {
  .centre-finder__results-scroll {
    padding: 0 15px; } }

.centre-finder__results-list {
  margin: 0;
  padding: 0; }

.centre-finder__results-list-item {
  background-color: #f4f4f4;
  list-style-type: none;
  margin-bottom: 2px;
  padding: 1.25rem 0.75rem 1rem;
  width: 100%; }
  .centre-finder__results-list-item::before, .centre-finder__results-list-item::after {
    display: table;
    content: ' '; }
  .centre-finder__results-list-item::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-list-item {
      padding: 1.25rem 1.125rem; } }
  .centre-finder__results-list-item:hover, .centre-finder__results-list-item.expanded {
    background-color: #e4e4e5; }

.centre-finder__results-actions {
  width: 100%; }
  .centre-finder__results-actions::before, .centre-finder__results-actions::after {
    display: table;
    content: ' '; }
  .centre-finder__results-actions::after {
    clear: both; }
  .centre-finder__results-actions.centre-finder__results-actions--mob {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0.75rem 0; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-actions {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding: 0.75rem 0; }
      .centre-finder__results-actions.centre-finder__results-actions--mob {
        display: none; } }

.centre-finder__results-actions__meta {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-actions__meta {
      width: 50%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .centre-finder__results-actions__meta {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
      .centre-finder__results-actions__meta, .centre-finder__results-actions__meta:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-finder__results-actions__meta:last-child:not(:first-child) {
        float: right; } }

.centre-finder__results-item-name {
  width: 83.33333%;
  float: left;
  padding-right: 0.25rem;
  padding-left: 0.25rem;
  display: inline-block;
  line-height: 1.6875rem;
  text-align: left; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-item-name {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  .centre-finder__results-item-name, .centre-finder__results-item-name:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .centre-finder__results-item-name:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-item-name {
      width: 50%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .centre-finder__results-item-name {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
      .centre-finder__results-item-name, .centre-finder__results-item-name:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-finder__results-item-name:last-child:not(:first-child) {
        float: right; } }
  .centre-finder__results-item-name a {
    color: inherit;
    text-decoration: none; }
    .centre-finder__results-item-name a:hover {
      text-decoration: underline; }

.centre-finder__results-item-distance {
  width: 33.33333%;
  float: left;
  padding-right: 0.25rem;
  padding-left: 0.25rem;
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-item-distance {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  .centre-finder__results-item-distance, .centre-finder__results-item-distance:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .centre-finder__results-item-distance:last-child:not(:first-child) {
    float: right; }

.centre-finder__results-item-more,
.centre-finder__results-item-select {
  width: 33.33333%;
  float: left;
  padding-right: 0.25rem;
  padding-left: 0.25rem; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-item-more,
    .centre-finder__results-item-select {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  .centre-finder__results-item-more, .centre-finder__results-item-more:last-child:not(:first-child),
  .centre-finder__results-item-select,
  .centre-finder__results-item-select:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .centre-finder__results-item-more:last-child:not(:first-child),
  .centre-finder__results-item-select:last-child:not(:first-child) {
    float: right; }
  .centre-finder__results-item-more a.button,
  .centre-finder__results-item-select a.button {
    background-color: #ff080d;
    border-color: #ff080d;
    color: #fff;
    font-size: 0.875rem; }
    .centre-finder__results-item-more a.button:hover,
    .centre-finder__results-item-select a.button:hover {
      background-color: #000;
      border-color: #000;
      color: #fff; }
  .centre-finder__results-item-more .button__more-info:after,
  .centre-finder__results-item-select .button__more-info:after {
    background: url("../img/expand-blue.svg") no-repeat center center;
    -webkit-background-size: 15px 15px;
            background-size: 15px; }

.centre-finder__results-details {
  border-bottom: 2px solid white;
  display: none;
  margin-bottom: 15px;
  padding-bottom: 25px;
  width: 100%; }
  .centre-finder__results-details::before, .centre-finder__results-details::after {
    display: table;
    content: ' '; }
  .centre-finder__results-details::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details {
      border-bottom: 0;
      border-top: 2px solid rgba(255, 255, 255, 0.3);
      margin-bottom: 0;
      margin-top: 15px;
      padding: 30px 0;
      top: 18px; } }

.centre-finder__results-details-col {
  width: 100%;
  float: left;
  padding-right: 0.25rem;
  padding-left: 0.25rem;
  padding-top: 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-col {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  .centre-finder__results-details-col, .centre-finder__results-details-col:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .centre-finder__results-details-col:last-child:not(:first-child) {
    float: right; }
  .centre-finder__results-details-col.centre-finder__results-details-col--facilities {
    display: none; }
  .centre-finder__results-details-col.centre-finder__results-details-col--times {
    display: none; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-col {
      padding-top: 0; }
      .centre-finder__results-details-col:first-of-type {
        width: 41.66667%;
        float: left;
        padding-right: 0.25rem;
        padding-left: 0.25rem; } }
    @media print, screen and (min-width: 40em) and (min-width: 40em) {
      .centre-finder__results-details-col:first-of-type {
        padding-right: 0.375rem;
        padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
        .centre-finder__results-details-col:first-of-type, .centre-finder__results-details-col:first-of-type:last-child:not(:first-child) {
          float: left;
          clear: none; }
        .centre-finder__results-details-col:first-of-type:last-child:not(:first-child) {
          float: right; }
      .centre-finder__results-details-col:nth-of-type(2) {
        width: 33.33333%;
        float: left;
        padding-right: 0.25rem;
        padding-left: 0.25rem; } }
    @media print, screen and (min-width: 40em) and (min-width: 40em) {
      .centre-finder__results-details-col:nth-of-type(2) {
        padding-right: 0.375rem;
        padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
        .centre-finder__results-details-col:nth-of-type(2), .centre-finder__results-details-col:nth-of-type(2):last-child:not(:first-child) {
          float: left;
          clear: none; }
        .centre-finder__results-details-col:nth-of-type(2):last-child:not(:first-child) {
          float: right; }
      .centre-finder__results-details-col:last-of-type {
        width: 25%;
        float: left;
        padding-right: 0.25rem;
        padding-left: 0.25rem; } }
    @media print, screen and (min-width: 40em) and (min-width: 40em) {
      .centre-finder__results-details-col:last-of-type {
        padding-right: 0.375rem;
        padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
        .centre-finder__results-details-col:last-of-type, .centre-finder__results-details-col:last-of-type:last-child:not(:first-child) {
          float: left;
          clear: none; }
        .centre-finder__results-details-col:last-of-type:last-child:not(:first-child) {
          float: right; }
      .centre-finder__results-details-col.centre-finder__results-details-col--facilities {
        display: block; }
      .centre-finder__results-details-col.centre-finder__results-details-col--times {
        display: block; } }
  @media print, screen and (min-width: 64em) {
    .centre-finder__results-details-col:first-of-type {
      width: 50%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-finder__results-details-col:first-of-type {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .centre-finder__results-details-col:first-of-type, .centre-finder__results-details-col:first-of-type:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-finder__results-details-col:first-of-type:last-child:not(:first-child) {
        float: right; }
    .centre-finder__results-details-col:nth-of-type(2) {
      width: 25%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-finder__results-details-col:nth-of-type(2) {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .centre-finder__results-details-col:nth-of-type(2), .centre-finder__results-details-col:nth-of-type(2):last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-finder__results-details-col:nth-of-type(2):last-child:not(:first-child) {
        float: right; } }
  .centre-finder__results-details-col h5 {
    display: none;
    margin-bottom: 10px; }
    @media print, screen and (min-width: 40em) {
      .centre-finder__results-details-col h5 {
        display: block; } }

.centre-finder__results-details-mobile {
  margin-bottom: 20px; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-mobile {
      display: none; } }

.centre-finder__results-details-button {
  display: none;
  float: right;
  font-size: 0.65625rem;
  margin-top: 30px; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-button {
      display: block; } }

.centre-finder__results-details-map {
  background-color: #c9cacb;
  border: 2px solid #666;
  color: #666;
  display: block;
  margin-bottom: 10px;
  max-width: 400px;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-map {
      max-width: 250px;
      width: 100%; } }

.centre-finder__results-details-address {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666; }

.centre-finder__results-details-link {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  margin-top: 12px; }

.centre-finder__results-details-list-container {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-list-container {
      display: block; } }

.centre-finder__results-details-list {
  margin: 0 0 0 35px;
  max-width: 230px;
  padding: 0;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-list {
      margin: 0;
      max-width: auto; } }

.centre-finder__results-details-list-item {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  list-style: none;
  padding: 5px 0; }
  .centre-finder__results-details-list-item:first-letter {
    text-transform: uppercase; }
  .centre-finder__results-details-list-item span {
    float: right; }

.centre-finder__results-details-today {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #333;
  padding-left: 35px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .centre-finder__results-details-today {
      display: none; } }
  .centre-finder__results-details-today:before {
    background-image: url("../img/clock-blue.svg");
    background-position: left top;
    background-repeat: no-repeat;
    -webkit-background-size: 26px 26px;
            background-size: 26px;
    content: '';
    display: block;
    height: 28px;
    left: 0;
    position: absolute;
    top: -3px;
    width: 30px; }
  .centre-finder__results-details-today span {
    color: #666; }
  .centre-finder__results-details-today button {
    padding-right: 20px; }
    .centre-finder__results-details-today button:hover {
      text-decoration: none; }

.centre-finder__results-load-more {
  background-color: #f4f4f4;
  display: none;
  padding: 0.9375rem 1.25rem 0.625rem;
  width: 100%; }
  .centre-finder__results-load-more::before, .centre-finder__results-load-more::after {
    display: table;
    content: ' '; }
  .centre-finder__results-load-more::after {
    clear: both; }

.centre-finder__results-message {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666;
  display: none;
  margin: 100px auto;
  padding: 0 20px;
  text-align: center; }

.centre-info {
  background-color: #1b2326;
  color: #fff;
  position: relative;
  width: 100%;
  z-index: 10; }
  @media print, screen and (min-width: 64em) {
    .centre-info {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      margin-top: -60px;
      padding-bottom: 40px; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-info {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .centre-info, .centre-info:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-info:last-child:not(:first-child) {
        float: right; } }
  .centre-info .breadcrumb {
    padding: 0 1rem; }
    .centre-info .breadcrumb a {
      color: #3d96ca; }

.centre-info__title {
  font-size: 1.5rem;
  line-height: 1.875rem;
  padding: 40px 20px 25px;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .centre-info__title {
      font-size: 1.875rem;
      line-height: 2.375rem;
      padding: 30px 0; } }
  @media print, screen and (min-width: 64em) {
    .centre-info__title {
      font-size: 2.875rem;
      line-height: 3.5rem;
      padding: 40px 0; } }

@media print, screen and (min-width: 64em) {
  .centre-info__columns {
    margin-left: 5%;
    width: 90%; } }

.centre-info__column-wrapper {
  border-top: 1px solid #ffffff;
  position: relative;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .centre-info__column-wrapper {
      border-top: 0;
      width: auto; }
      .centre-info__column-wrapper.expanded {
        background-color: #eaefff; } }

.centre-info__mobile-title {
  cursor: pointer;
  padding: 20px;
  position: relative; }
  .centre-info__mobile-title:after {
    background: url("../img/expand-blue.svg") center center/contain no-repeat;
    content: '';
    height: 100%;
    position: absolute;
    right: 20px;
    top: 0;
    width: 15px; }
  .centre-info__mobile-title.expanded:after {
    background: url("../img/hide.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px; }
  @media print, screen and (min-width: 64em) {
    .centre-info__mobile-title {
      display: none; } }

.centre-info__slide {
  display: none;
  padding-bottom: 20px; }
  @media print, screen and (min-width: 64em) {
    .centre-info__slide {
      display: inline !important;
      padding-bottom: 0; } }
  .centre-info__slide .centre-info__column {
    margin-bottom: 15px; }
    @media print, screen and (min-width: 40em) {
      .centre-info__slide .centre-info__column {
        display: inline-block;
        margin-bottom: 0;
        vertical-align: top;
        width: 49%; } }
    @media print, screen and (min-width: 64em) {
      .centre-info__slide .centre-info__column {
        width: 33.33%; } }

.centre-info__column {
  padding: 0 20px;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .centre-info__column {
      float: left;
      margin-bottom: 0;
      padding: 0 24px;
      width: 33.33%; } }
  .centre-info__column h5 {
    display: inline;
    margin-right: 10px; }
    @media print, screen and (min-width: 64em) {
      .centre-info__column h5 {
        display: block;
        margin-right: 0; } }
  .centre-info__column p {
    line-height: 1.75rem;
    margin-top: 10px; }
  .centre-info__column a {
    color: inherit;
    text-decoration: underline; }
    .centre-info__column a:hover {
      text-decoration: none; }

.centre-info__link {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  margin: 0 12px 15px 0; }
  @media print, screen and (min-width: 64em) {
    .centre-info__link {
      margin: 10px 12px 0 0; } }

.centre-info__link-content {
  display: none; }

.centre-info__link--block {
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .centre-info__link--block {
      width: auto; } }

.centre-info__social {
  margin-top: 20px; }
  @media print, screen and (min-width: 64em) {
    .centre-info__social {
      margin-top: 15px; } }
  .centre-info__social a {
    text-decoration: none; }

.centre-info__social-icon {
  background-color: transparent;
  -webkit-background-size: contain;
          background-size: contain;
  display: inline-block;
  height: 30px;
  margin-right: 5px;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 30px;
  background: transparent center center / contain no-repeat; }
  @media print, screen and (min-width: 64em) {
    .centre-info__social-icon {
      height: 26px;
      width: 26px; } }
  .centre-info__social-icon.centre-info__social-icon--fb {
    background-image: url("../img/facebook-white.svg"); }
  .centre-info__social-icon.centre-info__social-icon--tw {
    background-image: url("../img/x-white.svg"); }
  .centre-info__social-icon.centre-info__social-icon--ig {
    background-image: url("../img/instagram-white.svg"); }
  .centre-info__social-icon.centre-info__social-icon--tt {
    background-image: url("../img/tiktok-white.svg"); }
  .centre-info__social-icon.centre-info__social-icon--yt {
    background-image: url("../img/youtube-white.svg"); }

.centre-info__opening-times-today {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  cursor: pointer;
  display: block;
  font-family: "Circular Std Bold", sans-serif;
  padding: 20px 0;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .centre-info__opening-times-today {
      display: inline-block;
      padding: 0; } }
  .centre-info__opening-times-today span {
    font-family: "Circular Std Book", sans-serif; }
  .centre-info__opening-times-today button:hover {
    text-decoration: none; }

.centre-info__opening-times-button {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #3d96ca;
  cursor: pointer;
  height: 100%;
  outline: 0;
  position: absolute;
  right: 0;
  top: 0; }
  @media print, screen and (min-width: 64em) {
    .centre-info__opening-times-button {
      right: -25px; } }
  .centre-info__opening-times-button:after {
    background: url("../img/expand-blue.svg") center center/contain no-repeat;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 15px; }
    @media print, screen and (min-width: 64em) {
      .centre-info__opening-times-button:after {
        height: 15px;
        top: 4px; } }
  .centre-info__opening-times-button.expanded:after {
    background: url("../img/hide.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px; }

.centre-info__opening-times-list {
  display: none;
  margin: 0;
  max-width: 300px;
  padding: 0 0 20px;
  width: 90%; }
  @media print, screen and (min-width: 64em) {
    .centre-info__opening-times-list {
      max-width: 200px;
      padding: 0; } }

.centre-info__opening-times-list-item {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  list-style: none;
  margin: 5px 0;
  text-transform: capitalize; }
  .centre-info__opening-times-list-item > span {
    float: right; }

.centre-menu {
  max-width: 75rem;
  margin-right: auto;
  margin-left: auto;
  clear: both;
  height: 62px;
  width: 100%; }
  .centre-menu::before, .centre-menu::after {
    display: table;
    content: ' '; }
  .centre-menu::after {
    clear: both; }
  .centre-menu.sticky-nav--active .centre-menu__wrapper {
    width: 100%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    margin-left: 0%;
    -webkit-box-shadow: 0 4px 2px -2px #939598;
            box-shadow: 0 4px 2px -2px #939598;
    left: 0;
    max-width: 100%;
    min-width: 300px;
    position: fixed;
    top: 58px;
    width: 100%;
    z-index: 100; }
    @media print, screen and (min-width: 40em) {
      .centre-menu.sticky-nav--active .centre-menu__wrapper {
        padding-right: 0.375rem;
        padding-left: 0.375rem; } }
    .centre-menu.sticky-nav--active .centre-menu__wrapper, .centre-menu.sticky-nav--active .centre-menu__wrapper:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .centre-menu.sticky-nav--active .centre-menu__wrapper:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .centre-menu.sticky-nav--active .centre-menu__wrapper {
        top: 70px; } }
    .centre-menu.sticky-nav--active .centre-menu__wrapper.slide-up {
      top: 0; }
  .centre-menu.sticky-nav--active .centre-menu__columns {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto;
    text-align: center; }
    .centre-menu.sticky-nav--active .centre-menu__columns::before, .centre-menu.sticky-nav--active .centre-menu__columns::after {
      display: table;
      content: ' '; }
    .centre-menu.sticky-nav--active .centre-menu__columns::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      .centre-menu.sticky-nav--active .centre-menu__columns {
        width: 100%; } }
  @media print, screen and (min-width: 40em) {
    .centre-menu.sticky-nav--active .centre-menu__column {
      border-right: 2px solid #ffffff; }
      .centre-menu.sticky-nav--active .centre-menu__column:last-of-type {
        border-right: 0; } }
  @media print, screen and (min-width: 64em) {
    .centre-menu.sticky-nav--active .centre-menu__column:first-of-type {
      border-left: 2px solid #ffffff; }
    .centre-menu.sticky-nav--active .centre-menu__column:last-of-type {
      border-right: 2px solid #ffffff; } }

.touchevents .centre-menu__wrapper {
  -webkit-transition: top .4s;
  transition: top .4s; }

.centre-menu__wrapper {
  background-color: #f4f4f4;
  border-top: 2px solid #ffffff;
  overflow: hidden;
  position: relative;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%;
  z-index: 10; }
  .centre-menu__wrapper:before {
    background: url("../img/left-fade.png") no-repeat center center;
    -webkit-background-size: 40px 40px;
            background-size: 40px;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 40px;
    z-index: 10; }
  .centre-menu__wrapper:after {
    background: url("../img/right-fade.png") no-repeat center center;
    -webkit-background-size: 40px 40px;
            background-size: 40px;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 40px; }
  @media print, screen and (min-width: 40em) {
    .centre-menu__wrapper:before, .centre-menu__wrapper:after {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .centre-menu__wrapper {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-menu__wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .centre-menu__wrapper, .centre-menu__wrapper:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-menu__wrapper:last-child:not(:first-child) {
        float: right; } }

.centre-menu__columns {
  text-align: center; }
  .centre-menu__columns::before, .centre-menu__columns::after {
    display: table;
    content: ' '; }
  .centre-menu__columns::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .centre-menu__columns {
      margin-left: 5%;
      text-align: left;
      width: 90%; } }

.centre-menu__column {
  float: left;
  margin-bottom: 0;
  outline: 0;
  padding: 18px 0;
  position: relative;
  text-align: center;
  width: 33.33%; }
  @media print, screen and (min-width: 64em) {
    .centre-menu__column {
      padding: 18px; } }

.centre-menu__link {
  color: #000;
  font-size: 0.875rem;
  outline: 0;
  text-decoration: none;
  text-transform: uppercase; }
  @media print, screen and (min-width: 64em) {
    .centre-menu__link {
      font-size: 0.9375rem; } }
  .centre-menu__link:hover {
    color: #ff080d;
    text-decoration: underline; }

.centre-menu__link--external::before {
  background: #ff080d;
  bottom: 0;
  content: '';
  display: block;
  height: 6px;
  left: 20%;
  position: absolute;
  right: 20%; }

.centre-menu__link--anchor {
  padding-right: 25px;
  position: relative; }

.centre-news {
  background: #0a0a0a;
  color: #ffffff;
  padding: 25px 20px 15px; }
  .centre-news::before, .centre-news::after {
    display: table;
    content: ' '; }
  .centre-news::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .centre-news {
      padding: 45px 0 20px; } }
  .centre-news h4 {
    font-size: 1.125rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    width: 100%; }
    .centre-news h4 span {
      display: block;
      margin-bottom: 20px; }
    @media print, screen and (min-width: 40em) {
      .centre-news h4 {
        font-size: 1.5rem;
        line-height: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .centre-news h4 {
        width: 16.66667%;
        float: left;
        padding-right: 0.25rem;
        padding-left: 0.25rem;
        margin-left: 8.33333%;
        clear: both;
        float: none;
        margin-bottom: 15px; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-news h4 {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
    @media print, screen and (min-width: 64em) {
        .centre-news h4, .centre-news h4:last-child:not(:first-child) {
          float: left;
          clear: none; }
        .centre-news h4:last-child:not(:first-child) {
          float: right; }
        .centre-news h4 span {
          max-width: 80%; } }

.centre-news__column-title {
  clear: both;
  float: none; }

.centre-news__column-list {
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .centre-news__column-list {
      width: 75%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-news__column-list {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .centre-news__column-list, .centre-news__column-list:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .centre-news__column-list:last-child:not(:first-child) {
        float: right; } }

@media print, screen and (min-width: 64em) {
  .centre-news__post-wrapper {
    width: 91.66667%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .centre-news__post-wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .centre-news__post-wrapper, .centre-news__post-wrapper:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .centre-news__post-wrapper:last-child:not(:first-child) {
      float: right; } }

.centre-news__post {
  border-bottom: 2px solid #666;
  padding: 15px 0; }
  .centre-news__post:first-of-type {
    padding-top: 0; }
  .centre-news__post a {
    color: inherit;
    text-decoration: none; }
    .centre-news__post a:hover {
      text-decoration: underline; }

.centre-news__post-type {
  font-size: 0.75rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  background: #c9cacb;
  color: #333;
  display: inline-block;
  font-size: "Circular Std Medium", sans-serif;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
  vertical-align: top;
  width: 45px; }
  @media print, screen and (min-width: 40em) {
    .centre-news__post-type {
      font-size: 0.875rem;
      width: 66px; } }
  .centre-news__post-type.centre-news__post-type--News {
    background: #c9cacb;
    color: #333; }
  .centre-news__post-type.centre-news__post-type--Event {
    background: #666;
    color: #ffffff; }

.centre-news__post-title {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  display: inline-block;
  padding: 0 12px;
  vertical-align: top;
  width: calc(100% - 75px); }
  @media print, screen and (min-width: 40em) {
    .centre-news__post-title {
      font-size: 1.125rem;
      line-height: 1.625rem;
      width: calc(100% - 186px); } }

.centre-news__post-link {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.625rem;
  margin: 0;
  display: inline-block;
  height: 25px;
  position: relative;
  vertical-align: top;
  width: 20px; }
  .centre-news__post-link span {
    display: none; }
  .centre-news__post-link:after {
    background: url("../img/chevron-right-white.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 15px; }
  @media print, screen and (min-width: 40em) {
    .centre-news__post-link {
      width: 110px; } }
  @media print, screen and (min-width: 64em) {
    .centre-news__post-link {
      height: auto; }
      .centre-news__post-link span {
        display: inline; } }

.centre-news__link {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #ffffff;
  display: inline-block;
  float: right;
  margin: 20px 0;
  padding-right: 25px;
  position: relative;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .centre-news__link {
      font-size: 1.125rem;
      line-height: 1.625rem; } }
  .centre-news__link:hover {
    text-decoration: underline; }
  .centre-news__link:after {
    background: url("../img/chevron-right-white.svg") no-repeat center center;
    -webkit-background-size: 25px 25px;
            background-size: 25px;
    content: '';
    cursor: pointer;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 25px; }

.centre-timetables {
  padding: 0 20px; }
  .centre-timetables p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.375rem;
    margin: 0;
    color: #666;
    margin: 20px auto 30px;
    max-width: 800px; }
    @media print, screen and (min-width: 40em) {
      .centre-timetables p {
        font-size: 1.125rem;
        line-height: 1.5rem; } }

.centre-timetables__links {
  margin: auto;
  max-width: 600px;
  padding: 0; }
  .centre-timetables__links::before, .centre-timetables__links::after {
    display: table;
    content: ' '; }
  .centre-timetables__links::after {
    clear: both; }
  .centre-timetables__links li {
    display: inline-block;
    float: left;
    list-style: none;
    margin: 5px 0;
    text-align: center;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .centre-timetables__links li {
        width: 50%; } }
    .centre-timetables__links li a {
      font-size: 1.125rem;
      font-family: "Circular Std Book", sans-serif;
      font-weight: 400;
      letter-spacing: -0.01em;
      line-height: 1.5rem;
      margin: 0;
      color: #3d96ca; }

.contact-main {
  padding: 3.75rem 0 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .contact-main {
      padding: 5rem 0 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .contact-main {
      padding: 6.25rem 0; } }

.contact-main__header {
  margin-bottom: 30px;
  padding: 0 20px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .contact-main__header {
      margin-bottom: 45px; } }
  @media print, screen and (min-width: 64em) {
    .contact-main__header {
      padding: 0 30px 0 0; } }
  .contact-main__header:after {
    background: #e4e4e5;
    bottom: 0;
    content: "";
    height: 1px;
    left: 20px;
    position: absolute;
    width: calc(100% - 40px); }
    @media print, screen and (min-width: 64em) {
      .contact-main__header:after {
        left: 0;
        width: calc(100% + 6px); } }
  .contact-main__header.contact-main__header--submitted {
    display: none; }
    .contact-main__header.contact-main__header--submitted:after {
      display: none; }
  @media print, screen and (min-width: 64em) {
    .contact-main__header h1 {
      font-size: 2.875rem;
      line-height: 3.875rem; } }
  .contact-main__header h2 {
    margin-top: 20px;
    max-width: 680px; }

.contact-main__header-content {
  padding: 30px 0; }

.contact-main__description {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  max-width: 680px;
  padding: 20px 0; }
  @media print, screen and (min-width: 40em) {
    .contact-main__description {
      font-size: 1.375rem;
      line-height: 1.875rem;
      padding: 20px 0 40px; } }

.contact-main__module {
  background: #f4f4f4;
  border-top: 2px solid #ffffff;
  padding: 30px 20px 35px;
  position: relative;
  padding: 40px 20px 45px; }
  .contact-main__module.active {
    background: #f1f2f4; }
  .contact-main__module.contact-main__module--details {
    display: none;
    background: #ffffff;
    padding-bottom: 5px; }
  .contact-main__module.contact-main__module--enquiry {
    background: #ffffff;
    padding-bottom: 0;
    padding-top: 0; }
  @media print, screen and (min-width: 64em) {
    .contact-main__module {
      max-width: 780px;
      width: 90%;
      padding-left: 0; } }

.contact-main__label {
  margin: 30px 0 0; }

.contact-main__sub-label {
  margin: 20px 0 -10px; }
  .contact-main__sub-label a {
    color: #3d96ca; }

.patch-hide {
  display: none; }

.contact-main__selects {
  display: none; }

.input__wrapper--centre .loader {
  position: absolute;
  right: 55px;
  top: 4px;
  width: auto; }
  .input__wrapper--centre .loader .loader__spinner {
    background: #f7f9ff; }
  @media print, screen and (min-width: 40em) {
    .input__wrapper--centre .loader {
      left: 510px;
      top: 8px; }
      .input__wrapper--centre .loader .loader__spinner {
        background: none; } }
  @media print, screen and (min-width: 64em) {
    .input__wrapper--centre .loader {
      left: 410px; } }

.select__wrapper--subject {
  display: none; }

.contact-main__rating {
  display: none; }

.contact-main__rating-graphic {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .contact-main__rating-graphic {
      display: block; } }

@media print, screen and (min-width: 64em) {
  .contact-main__rating-select {
    display: none; } }

.contact-main__rating-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 20px 0 0;
  padding: 0; }
  .contact-main__rating-list li {
    cursor: pointer;
    display: inline-block;
    -ms-flex-preferred-size: 33%;
        flex-basis: 33%;
    line-height: 35px;
    list-style: none;
    margin: 10px 0;
    -webkit-box-ordinal-group: 100;
        -ms-flex-order: 99;
            order: 99;
    position: relative;
    text-indent: 45px; }
    .contact-main__rating-list li:nth-child(1) {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
    .contact-main__rating-list li:nth-child(2) {
      -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
              order: 4; }
    .contact-main__rating-list li:nth-child(3) {
      -webkit-box-ordinal-group: 8;
          -ms-flex-order: 7;
              order: 7; }
    .contact-main__rating-list li:nth-child(4) {
      -webkit-box-flex: 2;
          -ms-flex-positive: 2;
              flex-grow: 2;
      -webkit-box-ordinal-group: 11;
          -ms-flex-order: 10;
              order: 10; }
    .contact-main__rating-list li:nth-child(5) {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2; }
    .contact-main__rating-list li:nth-child(6) {
      -webkit-box-ordinal-group: 6;
          -ms-flex-order: 5;
              order: 5; }
    .contact-main__rating-list li:nth-child(7) {
      -webkit-box-ordinal-group: 9;
          -ms-flex-order: 8;
              order: 8; }
    .contact-main__rating-list li:nth-child(8) {
      -webkit-box-ordinal-group: 4;
          -ms-flex-order: 3;
              order: 3; }
    .contact-main__rating-list li:nth-child(9) {
      -webkit-box-ordinal-group: 7;
          -ms-flex-order: 6;
              order: 6; }
    .contact-main__rating-list li:nth-child(10) {
      -webkit-box-ordinal-group: 10;
          -ms-flex-order: 9;
              order: 9; }
    .contact-main__rating-list li:nth-child(11) {
      -webkit-box-ordinal-group: 12;
          -ms-flex-order: 11;
              order: 11; }
    .contact-main__rating-list li:last-of-type {
      margin-right: 7px; }
    .contact-main__rating-list li:before {
      background-position: 0 0;
      background-repeat: no-repeat;
      -webkit-background-size: 36px 36px;
              background-size: 36px;
      content: "";
      height: 36px;
      left: 0;
      position: absolute;
      top: 0;
      width: 38px; }
    .contact-main__rating-list li.active:before {
      background-position: 0 -36px; }
    .contact-main__rating-list li.contact-main__rating-item--Awful:before {
      background-image: url("../img/icon-awful.png"); }
    .contact-main__rating-list li.contact-main__rating-item--Bad:before {
      background-image: url("../img/icon-bad.png"); }
    .contact-main__rating-list li.contact-main__rating-item--OK:before {
      background-image: url("../img/icon-ok.png"); }
    .contact-main__rating-list li.contact-main__rating-item--Good:before {
      background-image: url("../img/icon-good.png"); }
    .contact-main__rating-list li.contact-main__rating-item--Amazing:before {
      background-image: url("../img/icon-amazing.png"); }

.contact-main__button-wrapper {
  margin-top: 25px; }
  @media print, screen and (min-width: 40em) {
    .contact-main__button-wrapper {
      float: left;
      width: 240px; } }

.contact-main__button {
  display: inline-block; }
  .contact-main__button.disabled {
    background: #c9cacb;
    border: 1px solid #c9cacb;
    color: #ffffff;
    cursor: default;
    pointer-events: none; }

.again .contact-main__button {
  margin: 60px 0; }

.contact-main__toggle {
  border-bottom: 1px solid rgba(138, 138, 138, 0.5);
  border-top: 1px solid rgba(138, 138, 138, 0.5);
  margin: 1.5rem 0;
  padding: 25px 0 30px;
  position: relative;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .contact-main__toggle {
      padding: 30px 20px 35px; } }
  .contact-main__toggle:after, .contact-main__toggle:before {
    border: solid transparent;
    bottom: -2px;
    content: " ";
    height: 0;
    left: 50%;
    pointer-events: none;
    position: absolute;
    width: 0; }
  .contact-main__toggle h4 {
    margin-bottom: 20px; }

.contact-main__login {
  display: none; }
  .contact-main__login::before, .contact-main__login::after {
    display: table;
    content: ' '; }
  .contact-main__login::after {
    clear: both; }

.contact-main__message {
  background: url("../img/attention.svg") no-repeat 0 0;
  -webkit-background-size: 25px 25px;
          background-size: 25px;
  color: #df7208;
  display: none;
  line-height: 25px;
  margin-top: 15px;
  padding-left: 35px; }

.contact-main__message--loggedin {
  display: none;
  margin: 0 0 30px 30px;
  max-width: 780px;
  width: 90%; }

.contact-main__link {
  color: #3d96ca;
  display: block;
  font-size: 0.9375rem;
  margin-left: 5px;
  margin-top: 15px;
  text-align: left;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .contact-main__link {
      float: left;
      font-size: 1.125rem;
      margin-left: 0;
      margin-top: 28px;
      text-align: right;
      width: 260px; } }
  @media print, screen and (min-width: 64em) {
    .contact-main__link {
      width: 160px; } }

.contact-main__loggedin {
  display: none;
  margin: 30px 0; }
  .contact-main__loggedin h4 {
    display: inline; }

.contact-main__loggedin-link {
  cursor: pointer;
  display: inline;
  margin-left: 5px; }
  .contact-main__loggedin-link:hover {
    text-decoration: underline; }

.contact-main__footer {
  background: #e4e4e5;
  border-top: 2px solid #ffffff;
  padding: 25px 15px; }
  .contact-main__footer::before, .contact-main__footer::after {
    display: table;
    content: ' '; }
  .contact-main__footer::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .contact-main__footer {
      margin: 0 20px;
      padding: 25px; } }
  @media print, screen and (min-width: 64em) {
    .contact-main__footer {
      margin: 0 0 0 30px;
      max-width: 780px;
      width: 90%; } }
  .contact-main__footer .contact-main__button {
    float: right; }
  .contact-main__footer .loader {
    display: none;
    float: right;
    margin-right: 60px;
    width: auto; }
  .contact-main__footer.loading .contact-main__button {
    border: 1px solid #c9cacb;
    color: #c9cacb;
    cursor: not-allowed;
    pointer-events: none; }
  .contact-main__footer.loading .loader {
    display: block; }

.contact-main__loader {
  bottom: 0;
  display: none;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }
  .contact-main__loader .loader {
    height: 100%;
    position: absolute; }
  .contact-main__loader .loader__wrapper {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .contact-main__loader .loader__spinner {
    margin: auto; }

.contact-main__limit {
  color: #666666;
  font-size: 12px;
  font-weight: bold;
  padding: 10px 0;
  text-align: right; }
  @media print, screen and (min-width: 40em) {
    .contact-main__limit {
      max-width: 500px; } }
  @media print, screen and (min-width: 64em) {
    .contact-main__limit {
      max-width: 400px; } }

.contact-main__limit--warning {
  color: #eb9e3a; }

.contact-main__module--details h2 {
  border-top: 1px solid rgba(138, 138, 138, 0.5);
  padding-top: 25px; }

.contact-sidebar {
  padding: 1.25rem;
  width: 100%; }
  .contact-sidebar::before, .contact-sidebar::after {
    display: table;
    content: ' '; }
  .contact-sidebar::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .contact-sidebar {
      padding: 10rem 0 5.625rem 1.875rem; } }
  .contact-sidebar h3 {
    color: #333;
    display: block;
    padding: 10px 0;
    position: relative; }
    .contact-sidebar h3:after {
      background-color: #c9cacb;
      bottom: 0;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      width: 100%; }
  .contact-sidebar .council-logo {
    display: block;
    margin-left: 20px;
    margin-top: 50px; }

.contact-sidebar__list {
  margin: 20px 0;
  padding: 0; }
  .contact-sidebar__list li {
    color: #666;
    font-size: 0.9375rem;
    line-height: 1.25rem;
    list-style: none;
    margin: 15px 0;
    padding-left: 25px;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .contact-sidebar__list li {
        font-size: 1.125rem;
        line-height: 1.5rem;
        padding-left: 30px; } }
    .contact-sidebar__list li:before {
      background: url("../img/check.svg") no-repeat center center;
      -webkit-background-size: 27px 27px;
              background-size: 27px;
      content: '';
      height: 1.25rem;
      left: 0;
      position: absolute;
      top: 0;
      width: 15px; }
      @media print, screen and (min-width: 40em) {
        .contact-sidebar__list li:before {
          -webkit-background-size: 30px 30px;
                  background-size: 30px; } }

.contact--feedback .contact-main, .freeswim .contact-main {
  padding: 3.75rem 0 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main, .freeswim .contact-main {
      padding: 5rem 0 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .contact-main, .freeswim .contact-main {
      padding: 6.25rem 0; } }

.contact--feedback .contact-main__header, .freeswim .contact-main__header {
  margin-bottom: 30px;
  padding: 0 20px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main__header, .freeswim .contact-main__header {
      margin-bottom: 45px; } }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .contact-main__header, .freeswim .contact-main__header {
      padding: 0 30px 0 0; } }
  .contact--feedback .contact-main__header:after, .freeswim .contact-main__header:after {
    background: #e4e4e5;
    bottom: 0;
    content: '';
    height: 1px;
    left: 20px;
    position: absolute;
    width: calc(100% - 40px); }
    @media print, screen and (min-width: 64em) {
      .contact--feedback .contact-main__header:after, .freeswim .contact-main__header:after {
        left: 0;
        width: calc(100% + 6px); } }
  .contact--feedback .contact-main__header.contact-main__header--submitted, .freeswim .contact-main__header.contact-main__header--submitted {
    display: none; }
    .contact--feedback .contact-main__header.contact-main__header--submitted:after, .freeswim .contact-main__header.contact-main__header--submitted:after {
      display: none; }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .contact-main__header h1, .freeswim .contact-main__header h1 {
      font-size: 2.875rem;
      line-height: 3.875rem; } }
  .contact--feedback .contact-main__header h2, .freeswim .contact-main__header h2 {
    margin-top: 20px;
    max-width: 680px; }

.contact--feedback .contact-main__header-content, .freeswim .contact-main__header-content {
  padding: 30px 0; }

.contact--feedback .contact-main__description, .freeswim .contact-main__description {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  max-width: 680px;
  padding: 20px 0; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main__description, .freeswim .contact-main__description {
      font-size: 1.375rem;
      line-height: 1.875rem;
      padding: 20px 0 40px; } }

.contact--feedback .contact-main__module, .freeswim .contact-main__module {
  background: #f4f4f4;
  border-top: 2px solid #ffffff;
  padding: 30px 15px 35px;
  position: relative; }
  .contact--feedback .contact-main__module.active, .freeswim .contact-main__module.active {
    background: #f1f2f4; }
  .contact--feedback .contact-main__module.contact-main__module--details, .freeswim .contact-main__module.contact-main__module--details {
    display: none; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main__module, .freeswim .contact-main__module {
      margin: 0 20px;
      padding: 40px 25px 45px; } }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .contact-main__module, .freeswim .contact-main__module {
      margin: 0 0 0 30px;
      max-width: 780px;
      width: 90%; } }

.contact--feedback .contact-main__label, .freeswim .contact-main__label {
  margin: 30px 0 0; }

.contact--feedback .contact-main__sub-label, .freeswim .contact-main__sub-label {
  margin: 20px 0 -10px; }
  .contact--feedback .contact-main__sub-label a, .freeswim .contact-main__sub-label a {
    color: #3d96ca; }

.contact--feedback .patch-hide, .freeswim .patch-hide {
  display: none; }

.contact--feedback .contact-main__selects, .freeswim .contact-main__selects {
  display: none; }

.contact--feedback .input__wrapper--centre .loader, .freeswim .input__wrapper--centre .loader {
  position: absolute;
  right: 55px;
  top: 4px;
  width: auto; }
  .contact--feedback .input__wrapper--centre .loader .loader__spinner, .freeswim .input__wrapper--centre .loader .loader__spinner {
    background: #f7f9ff; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .input__wrapper--centre .loader, .freeswim .input__wrapper--centre .loader {
      left: 510px;
      top: 8px; }
      .contact--feedback .input__wrapper--centre .loader .loader__spinner, .freeswim .input__wrapper--centre .loader .loader__spinner {
        background: none; } }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .input__wrapper--centre .loader, .freeswim .input__wrapper--centre .loader {
      left: 410px; } }

.contact--feedback .select__wrapper--subject, .freeswim .select__wrapper--subject {
  display: none; }

.contact--feedback .contact-main__rating, .freeswim .contact-main__rating {
  display: none; }

.contact--feedback .contact-main__rating-graphic, .freeswim .contact-main__rating-graphic {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .contact-main__rating-graphic, .freeswim .contact-main__rating-graphic {
      display: block; } }

@media print, screen and (min-width: 64em) {
  .contact--feedback .contact-main__rating-select, .freeswim .contact-main__rating-select {
    display: none; } }

.contact--feedback .contact-main__rating-list, .freeswim .contact-main__rating-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 20px 0 0;
  padding: 0; }
  .contact--feedback .contact-main__rating-list li, .freeswim .contact-main__rating-list li {
    cursor: pointer;
    display: inline-block;
    -ms-flex-preferred-size: 33%;
        flex-basis: 33%;
    line-height: 35px;
    list-style: none;
    margin: 10px 0;
    -webkit-box-ordinal-group: 100;
        -ms-flex-order: 99;
            order: 99;
    position: relative;
    text-indent: 45px; }
    .contact--feedback .contact-main__rating-list li:nth-child(1), .freeswim .contact-main__rating-list li:nth-child(1) {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
    .contact--feedback .contact-main__rating-list li:nth-child(2), .freeswim .contact-main__rating-list li:nth-child(2) {
      -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
              order: 4; }
    .contact--feedback .contact-main__rating-list li:nth-child(3), .freeswim .contact-main__rating-list li:nth-child(3) {
      -webkit-box-ordinal-group: 8;
          -ms-flex-order: 7;
              order: 7; }
    .contact--feedback .contact-main__rating-list li:nth-child(4), .freeswim .contact-main__rating-list li:nth-child(4) {
      -webkit-box-flex: 2;
          -ms-flex-positive: 2;
              flex-grow: 2;
      -webkit-box-ordinal-group: 11;
          -ms-flex-order: 10;
              order: 10; }
    .contact--feedback .contact-main__rating-list li:nth-child(5), .freeswim .contact-main__rating-list li:nth-child(5) {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2; }
    .contact--feedback .contact-main__rating-list li:nth-child(6), .freeswim .contact-main__rating-list li:nth-child(6) {
      -webkit-box-ordinal-group: 6;
          -ms-flex-order: 5;
              order: 5; }
    .contact--feedback .contact-main__rating-list li:nth-child(7), .freeswim .contact-main__rating-list li:nth-child(7) {
      -webkit-box-ordinal-group: 9;
          -ms-flex-order: 8;
              order: 8; }
    .contact--feedback .contact-main__rating-list li:nth-child(8), .freeswim .contact-main__rating-list li:nth-child(8) {
      -webkit-box-ordinal-group: 4;
          -ms-flex-order: 3;
              order: 3; }
    .contact--feedback .contact-main__rating-list li:nth-child(9), .freeswim .contact-main__rating-list li:nth-child(9) {
      -webkit-box-ordinal-group: 7;
          -ms-flex-order: 6;
              order: 6; }
    .contact--feedback .contact-main__rating-list li:nth-child(10), .freeswim .contact-main__rating-list li:nth-child(10) {
      -webkit-box-ordinal-group: 10;
          -ms-flex-order: 9;
              order: 9; }
    .contact--feedback .contact-main__rating-list li:nth-child(11), .freeswim .contact-main__rating-list li:nth-child(11) {
      -webkit-box-ordinal-group: 12;
          -ms-flex-order: 11;
              order: 11; }
    .contact--feedback .contact-main__rating-list li:last-of-type, .freeswim .contact-main__rating-list li:last-of-type {
      margin-right: 7px; }
    .contact--feedback .contact-main__rating-list li:before, .freeswim .contact-main__rating-list li:before {
      background-position: 0 0;
      background-repeat: no-repeat;
      -webkit-background-size: 36px 36px;
              background-size: 36px;
      content: '';
      height: 36px;
      left: 0;
      position: absolute;
      top: 0;
      width: 38px; }
    .contact--feedback .contact-main__rating-list li.active:before, .freeswim .contact-main__rating-list li.active:before {
      background-position: 0 -36px; }
    .contact--feedback .contact-main__rating-list li.contact-main__rating-item--Awful:before, .freeswim .contact-main__rating-list li.contact-main__rating-item--Awful:before {
      background-image: url("../img/icon-awful.png"); }
    .contact--feedback .contact-main__rating-list li.contact-main__rating-item--Bad:before, .freeswim .contact-main__rating-list li.contact-main__rating-item--Bad:before {
      background-image: url("../img/icon-bad.png"); }
    .contact--feedback .contact-main__rating-list li.contact-main__rating-item--OK:before, .freeswim .contact-main__rating-list li.contact-main__rating-item--OK:before {
      background-image: url("../img/icon-ok.png"); }
    .contact--feedback .contact-main__rating-list li.contact-main__rating-item--Good:before, .freeswim .contact-main__rating-list li.contact-main__rating-item--Good:before {
      background-image: url("../img/icon-good.png"); }
    .contact--feedback .contact-main__rating-list li.contact-main__rating-item--Amazing:before, .freeswim .contact-main__rating-list li.contact-main__rating-item--Amazing:before {
      background-image: url("../img/icon-amazing.png"); }

.contact--feedback .contact-main__button-wrapper, .freeswim .contact-main__button-wrapper {
  margin-top: 25px; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main__button-wrapper, .freeswim .contact-main__button-wrapper {
      float: left;
      width: 240px; } }

.contact--feedback .contact-main__button, .freeswim .contact-main__button {
  display: inline-block; }

.contact--feedback .again .contact-main__button, .freeswim .again .contact-main__button {
  margin: 60px 0; }

.contact--feedback .contact-main__toggle, .freeswim .contact-main__toggle {
  border-bottom: 2px solid #ffffff;
  border-top: 2px solid #ffffff;
  margin: 1.5rem 0;
  padding: 25px 0 30px;
  position: relative;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main__toggle, .freeswim .contact-main__toggle {
      padding: 30px 20px 35px; } }
  .contact--feedback .contact-main__toggle:after, .contact--feedback .contact-main__toggle:before, .freeswim .contact-main__toggle:after, .freeswim .contact-main__toggle:before {
    border: solid transparent;
    bottom: -2px;
    content: ' ';
    height: 0;
    left: 50%;
    pointer-events: none;
    position: absolute;
    width: 0; }
  .contact--feedback .contact-main__toggle:after, .freeswim .contact-main__toggle:after {
    border-bottom: 12px solid #eaefff;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    margin-left: -12px; }
  .contact--feedback .contact-main__toggle:before, .freeswim .contact-main__toggle:before {
    border-bottom: 15px solid #ffffff;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    margin-left: -15px; }
  .contact--feedback .contact-main__toggle h4, .freeswim .contact-main__toggle h4 {
    margin-bottom: 20px; }
  .contact--feedback .contact-main__toggle button, .freeswim .contact-main__toggle button {
    padding: 0;
    margin: 0;
    text-indent: 0; }

.contact--feedback .contact-main__login, .freeswim .contact-main__login {
  display: none; }
  .contact--feedback .contact-main__login::before, .contact--feedback .contact-main__login::after, .freeswim .contact-main__login::before, .freeswim .contact-main__login::after {
    display: table;
    content: ' '; }
  .contact--feedback .contact-main__login::after, .freeswim .contact-main__login::after {
    clear: both; }

.contact--feedback .contact-main__message, .freeswim .contact-main__message {
  background: url("../img/attention.svg") no-repeat 0 0;
  -webkit-background-size: 25px 25px;
          background-size: 25px;
  color: #df7208;
  display: none;
  line-height: 25px;
  margin-top: 15px;
  padding-left: 35px; }

.contact--feedback .contact-main__message--loggedin, .freeswim .contact-main__message--loggedin {
  display: none;
  margin: 0 0 30px 30px;
  max-width: 780px;
  width: 90%; }

.contact--feedback .contact-main__link, .freeswim .contact-main__link {
  color: #3d96ca;
  display: block;
  font-size: 0.9375rem;
  margin-left: 5px;
  margin-top: 15px;
  text-align: left;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main__link, .freeswim .contact-main__link {
      float: left;
      font-size: 1.125rem;
      margin-left: 0;
      margin-top: 28px;
      text-align: right;
      width: 260px; } }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .contact-main__link, .freeswim .contact-main__link {
      width: 160px; } }

.contact--feedback .contact-main__loggedin, .freeswim .contact-main__loggedin {
  display: none;
  margin: 30px 0; }
  .contact--feedback .contact-main__loggedin h4, .freeswim .contact-main__loggedin h4 {
    display: inline; }

.contact--feedback .contact-main__loggedin-link, .freeswim .contact-main__loggedin-link {
  cursor: pointer;
  display: inline;
  margin-left: 5px; }
  .contact--feedback .contact-main__loggedin-link:hover, .freeswim .contact-main__loggedin-link:hover {
    text-decoration: underline; }

.contact--feedback .contact-main__footer, .freeswim .contact-main__footer {
  background: #e4e4e5;
  border-top: 2px solid #ffffff;
  padding: 25px 15px; }
  .contact--feedback .contact-main__footer::before, .contact--feedback .contact-main__footer::after, .freeswim .contact-main__footer::before, .freeswim .contact-main__footer::after {
    display: table;
    content: ' '; }
  .contact--feedback .contact-main__footer::after, .freeswim .contact-main__footer::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .contact--feedback .contact-main__footer, .freeswim .contact-main__footer {
      margin: 0 20px;
      padding: 25px; } }
  @media print, screen and (min-width: 64em) {
    .contact--feedback .contact-main__footer, .freeswim .contact-main__footer {
      margin: 0 0 0 30px;
      max-width: 780px;
      width: 90%; } }
  .contact--feedback .contact-main__footer .contact-main__button, .freeswim .contact-main__footer .contact-main__button {
    float: right; }
  .contact--feedback .contact-main__footer .loader, .freeswim .contact-main__footer .loader {
    display: none;
    float: right;
    margin-right: 60px;
    width: auto; }
  .contact--feedback .contact-main__footer.loading .contact-main__button, .freeswim .contact-main__footer.loading .contact-main__button {
    border: 1px solid #c9cacb;
    color: #c9cacb;
    cursor: not-allowed;
    pointer-events: none; }
  .contact--feedback .contact-main__footer.loading .loader, .freeswim .contact-main__footer.loading .loader {
    display: block; }

.contact--feedback .contact-main__loader, .freeswim .contact-main__loader {
  bottom: 0;
  display: none;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }
  .contact--feedback .contact-main__loader .loader, .freeswim .contact-main__loader .loader {
    height: 100%;
    position: absolute; }
  .contact--feedback .contact-main__loader .loader__wrapper, .freeswim .contact-main__loader .loader__wrapper {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .contact--feedback .contact-main__loader .loader__spinner, .freeswim .contact-main__loader .loader__spinner {
    margin: auto; }

.contact--feedback .freeswim__confirm.contact-main__link, .freeswim .freeswim__confirm.contact-main__link {
  margin-top: 0px; }

.contact-main__centre {
  display: none; }

.contenthub-authors {
  background-color: #eaefff;
  clear: both;
  padding: 20px 0; }
  @media print, screen and (min-width: 64em) {
    .contenthub-authors {
      padding: 50px 0 30px; } }

.contenthub-authors__inner {
  padding: 0 18px;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .contenthub-authors__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .contenthub-authors__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .contenthub-authors__inner, .contenthub-authors__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .contenthub-authors__inner:last-child:not(:first-child) {
        float: right; } }
  .contenthub-authors__inner h2 {
    text-align: center; }
  .contenthub-authors__inner span {
    clear: both;
    display: block; }
    @media print, screen and (min-width: 64em) {
      .contenthub-authors__inner span {
        clear: initial;
        display: none; } }

.contenthub-authors__author {
  float: left;
  margin: 20px 0;
  width: 50%; }
  .contenthub-authors__author:nth-of-type(odd) {
    padding-right: 8px; }
  .contenthub-authors__author:nth-of-type(even) {
    padding-left: 8px; }
  @media print, screen and (min-width: 64em) {
    .contenthub-authors__author {
      padding: 0 8px;
      width: 25%; } }

.contenthub-authors__author-image {
  float: left;
  height: 0;
  padding-bottom: 100%;
  width: 100%; }

.contenthub-authors__author-meta {
  float: left;
  padding: 20px 0 0;
  width: 100%; }

.contenthub-authors__author-title {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #333;
  font-family: "Circular Std Bold", sans-serif; }
  @media print, screen and (min-width: 40em) {
    .contenthub-authors__author-title {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  .contenthub-authors__author-title a {
    color: inherit;
    text-decoration: none; }
    .contenthub-authors__author-title a:hover {
      text-decoration: underline; }

.contenthub-authors__author-description {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .contenthub-authors__author-description {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  @media print, screen and (min-width: 64em) {
    .contenthub-authors__author-description {
      width: 100%; } }
  .contenthub-authors__author-description a {
    color: inherit;
    text-decoration: none; }
    .contenthub-authors__author-description a:hover {
      text-decoration: underline; }

.contenthub-authors__author-link {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #3d96ca;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .contenthub-authors__author-link {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  .contenthub-authors__author-link:hover {
    text-decoration: underline; }

.contenthub-categories {
  clear: both;
  padding-bottom: 40px; }

.contenthub-categories__inner {
  padding: 0 18px;
  text-align: center;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .contenthub-categories__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .contenthub-categories__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .contenthub-categories__inner, .contenthub-categories__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .contenthub-categories__inner:last-child:not(:first-child) {
        float: right; } }
  .contenthub-categories__inner h1 {
    margin-bottom: 20px;
    padding: 0 20px; }
  .contenthub-categories__inner span {
    clear: both;
    display: block; }

.contenthub-categories__category {
  float: left;
  margin: 5px 0 0;
  text-align: left;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .contenthub-categories__category {
      margin: 15px 0;
      width: 50%; }
      .contenthub-categories__category:nth-of-type(odd) {
        padding-right: 8px; }
      .contenthub-categories__category:nth-of-type(even) {
        padding-left: 8px; } }
  @media print, screen and (min-width: 64em) {
    .contenthub-categories__category {
      margin: 20px 0; } }
  .contenthub-categories__category h4 {
    color: #333;
    cursor: pointer;
    display: block;
    padding: 10px 0;
    position: relative; }
    .contenthub-categories__category h4.expanded:before {
      background: url("../img/hide.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px; }
    @media print, screen and (min-width: 64em) {
      .contenthub-categories__category h4.expanded:after {
        background: url("../img/expand.svg") no-repeat center center;
        -webkit-background-size: 30px 30px;
                background-size: 30px; } }
    .contenthub-categories__category h4:before {
      background: url("../img/expand.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px;
      content: '';
      height: 100%;
      position: absolute;
      right: 0;
      top: 0;
      width: 35px; }
      @media print, screen and (min-width: 40em) {
        .contenthub-categories__category h4:before {
          display: none; } }
    .contenthub-categories__category h4:after {
      background-color: #c9cacb;
      bottom: 0;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      width: 100%; }
    @media print, screen and (min-width: 40em) {
      .contenthub-categories__category h4 {
        cursor: default;
        width: 90%; } }
  .contenthub-categories__category ul {
    display: none;
    list-style: none;
    margin: 0;
    padding: 10px 0 0; }
    @media print, screen and (min-width: 40em) {
      .contenthub-categories__category ul {
        display: block; } }

.contenthub-categories__post {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #333;
  margin: 5px 0; }
  @media print, screen and (min-width: 40em) {
    .contenthub-categories__post {
      font-size: 1.125rem;
      line-height: 1.5rem;
      margin: 10px 0;
      width: 90%; } }
  .contenthub-categories__post a {
    color: inherit;
    text-decoration: none; }
    .contenthub-categories__post a:hover {
      text-decoration: underline; }

.contenthub-categories__link {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #3d96ca;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .contenthub-categories__link {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  .contenthub-categories__link:hover {
    text-decoration: underline; }

.contenthub-featured::before, .contenthub-featured::after {
  display: table;
  content: ' '; }

.contenthub-featured::after {
  clear: both; }

@media print, screen and (min-width: 40em) {
  .contenthub-featured {
    margin-bottom: 25px; } }

.contenthub-featured__inner {
  padding: 0 20px;
  text-align: center;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .contenthub-featured__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .contenthub-featured__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .contenthub-featured__inner, .contenthub-featured__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .contenthub-featured__inner:last-child:not(:first-child) {
        float: right; } }

.contenthub-featured__articles {
  margin-top: 20px; }
  .contenthub-featured__articles::before, .contenthub-featured__articles::after {
    display: table;
    content: ' '; }
  .contenthub-featured__articles::after {
    clear: both; }

.contenthub-featured__row {
  clear: both; }

.contenthub-featured__article {
  float: left;
  margin: 20px 0;
  text-align: left;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .contenthub-featured__article {
      padding: 0 6px;
      width: 33.33%; }
      .contenthub-featured__article:nth-child(3n+1) {
        padding-left: 0;
        padding-right: 12px; }
      .contenthub-featured__article:nth-child(3n) {
        padding-left: 12px;
        padding-right: 0; } }

.contenthub-featured__article-image {
  float: left;
  height: 0;
  padding-bottom: 56.5%;
  width: 100%; }

.contenthub-featured__article-meta {
  float: left;
  padding: 20px;
  width: 100%; }

.contenthub-featured__article-title {
  font-size: 1.0625rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #333;
  font-family: "Circular Std Bold", sans-serif;
  margin: 6   px 0;
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .contenthub-featured__article-title {
      font-size: 1.125rem;
      line-height: 1.5rem;
      margin: 0; } }
  @media print, screen and (min-width: 64em) {
    .contenthub-featured__article-title {
      width: 100%; } }
  .contenthub-featured__article-title a {
    color: inherit;
    text-decoration: none; }
    .contenthub-featured__article-title a:hover {
      text-decoration: underline; }

.contenthub-featured__article-desc {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  margin: 10px 0; }
  @media print, screen and (min-width: 40em) {
    .contenthub-featured__article-desc {
      font-size: 1rem;
      line-height: 1.375rem; } }

.contenthub-featured__article-link {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #3d96ca;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .contenthub-featured__article-link {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  .contenthub-featured__article-link:hover {
    text-decoration: underline; }

.contenthub-latest {
  background-color: #f7f9fa;
  clear: both;
  padding: 20px 0; }
  @media print, screen and (min-width: 64em) {
    .contenthub-latest {
      padding: 50px 0 30px; } }

.contenthub-latest__inner {
  padding: 0 12px;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .contenthub-latest__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .contenthub-latest__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .contenthub-latest__inner, .contenthub-latest__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .contenthub-latest__inner:last-child:not(:first-child) {
        float: right; } }
  .contenthub-latest__inner h2 {
    text-align: center; }

.contenthub-menu {
  max-width: 75rem;
  margin-right: auto;
  margin-left: auto;
  clear: both;
  width: 100%; }
  .contenthub-menu::before, .contenthub-menu::after {
    display: table;
    content: ' '; }
  .contenthub-menu::after {
    clear: both; }
  .contenthub-menu .contenthub-menu__dropdown {
    overflow-y: scroll;
    height: 100vh; }
  .contenthub-menu .contenthub-menu__dropdown-inner-menu {
    overflow-y: scroll;
    height: 92vh; }
    @media print, screen and (min-width: 40em) {
      .contenthub-menu .contenthub-menu__dropdown-inner-menu {
        height: 89vh; } }
  .contenthub-menu.sticky-nav--active .contenthub-menu__wrapper {
    background-color: #f4f4f4;
    -webkit-box-shadow: 0 4px 2px -2px #939598;
            box-shadow: 0 4px 2px -2px #939598;
    left: 0;
    max-width: 100%;
    min-width: 300px;
    position: fixed;
    top: 60px;
    width: 100%;
    z-index: 100; }
    @media print, screen and (min-width: 40em) {
      .contenthub-menu.sticky-nav--active .contenthub-menu__wrapper {
        top: 72px; } }
    @media print, screen and (min-width: 64em) {
      .contenthub-menu.sticky-nav--active .contenthub-menu__wrapper {
        margin: 0;
        padding: 0;
        width: 100%; } }
    .contenthub-menu.sticky-nav--active .contenthub-menu__wrapper.slide-up {
      top: 0; }
  .contenthub-menu.sticky-nav--active .contenthub-menu__inner {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto;
    height: 60px;
    text-align: center; }
    .contenthub-menu.sticky-nav--active .contenthub-menu__inner::before, .contenthub-menu.sticky-nav--active .contenthub-menu__inner::after {
      display: table;
      content: ' '; }
    .contenthub-menu.sticky-nav--active .contenthub-menu__inner::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      .contenthub-menu.sticky-nav--active .contenthub-menu__inner {
        width: 100%; } }
  .contenthub-menu.sticky-nav--active .contenthub-menu__list li {
    padding: 18px 0; }
  .contenthub-menu.sticky-nav--active .contenthub-menu__column {
    padding-bottom: 18px;
    padding-top: 18px; }
  .contenthub-menu.sticky-nav--active .contenthub-menu__search {
    padding: 10px 0; }
    .contenthub-menu.sticky-nav--active .contenthub-menu__search input[type='text'] {
      padding: 0.625rem 3.75rem 0.625rem 0.9375rem; }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu.sticky-nav--active .contenthub-menu__search-icon {
      border-left: 2px solid #ffffff; } }
  .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown {
    -webkit-box-shadow: 0 4px 2px -2px #c9cacb;
            box-shadow: 0 4px 2px -2px #c9cacb;
    left: 0;
    position: absolute;
    text-align: left;
    top: 60px; }
    @media print, screen and (min-width: 40em) {
      .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown {
        padding: 1.25rem 0 0; } }
    @media print, screen and (min-width: 64em) {
      .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown {
        border-top: 0;
        clear: initial;
        top: 0;
        z-index: 10; } }
    .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__link-info--close {
      display: none; }
    .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-options {
      display: none; }
      @media print, screen and (min-width: 64em) {
        .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-options {
          display: block; } }
      .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-options .contenthub-menu__link-info--close {
        display: block; }
    .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-inner {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      position: relative; }
      .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-inner::before, .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-inner::after {
        display: table;
        content: ' '; }
      .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-inner::after {
        clear: both; }
      @media print, screen and (min-width: 40em) {
        .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-inner ul {
          padding: 0 1.5625rem 1.25rem; } }
    .contenthub-menu.sticky-nav--active .contenthub-menu__dropdown .contenthub-menu__dropdown-inner-menu {
      height: 80vh;
      overflow-y: scroll; }

.touchevents .contenthub-menu__wrapper {
  -webkit-transition: top .4s;
  transition: top .4s; }

.touchevents .contenthub-menu__inner {
  -webkit-transition: none;
  transition: none; }

.contenthub-menu__wrapper {
  position: relative;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%;
  z-index: 10; }
  .contenthub-menu__wrapper::before, .contenthub-menu__wrapper::after {
    display: table;
    content: ' '; }
  .contenthub-menu__wrapper::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__wrapper {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .contenthub-menu__wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .contenthub-menu__wrapper, .contenthub-menu__wrapper:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .contenthub-menu__wrapper:last-child:not(:first-child) {
        float: right; } }

.contenthub-menu__inner {
  background-color: #f7f9fa;
  height: 60px;
  position: relative;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%; }
  .contenthub-menu__inner::before, .contenthub-menu__inner::after {
    display: table;
    content: ' '; }
  .contenthub-menu__inner::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .contenthub-menu__inner {
      height: 64px; } }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__inner {
      height: 80px; } }

.contenthub-menu__search {
  background: #f7f9fa;
  border-right: 3px solid #fff;
  height: 100%;
  left: 0;
  overflow: hidden;
  padding: 10px 0;
  position: absolute;
  -webkit-transition: all .4s;
  transition: all .4s;
  -webkit-transition-delay: .4s;
          transition-delay: .4s;
  -webkit-transition-timing-function: ease-in;
          transition-timing-function: ease-in;
  width: 50px;
  z-index: 10; }
  @media print, screen and (min-width: 40em) {
    .contenthub-menu__search {
      padding: 12px 0; } }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__search {
      padding: 15px 0; } }
  .contenthub-menu__search input[type='text'] {
    background: #ffffff url("../img/search.svg") no-repeat 96% center;
    -webkit-background-size: 25px 25px;
            background-size: 25px;
    border-radius: 35px;
    display: block;
    font-size: 1rem;
    margin: 0 0 0 70px;
    max-width: 570px;
    opacity: 0;
    padding: 0.625rem 3.75rem 0.625rem 0.9375rem;
    pointer-events: none;
    -webkit-transition: opacity .5s;
    transition: opacity .5s;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    width: calc(100% - 50px); }
    @media print, screen and (min-width: 40em) {
      .contenthub-menu__search input[type='text'] {
        margin: auto;
        width: 60%; } }
    @media print, screen and (min-width: 64em) {
      .contenthub-menu__search input[type='text'] {
        font-size: 1.125rem;
        padding: 0.8125rem 3.75rem 0.8125rem 1.25rem; } }
  .contenthub-menu__search.active {
    border-right: 0;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
    width: 100%; }
    .contenthub-menu__search.active .contenthub-menu__search-icon:before {
      background: url("../img/arrow-left-blue.svg") no-repeat 14px center;
      -webkit-background-size: 35px 35px;
              background-size: 35px; }
      @media print, screen and (min-width: 64em) {
        .contenthub-menu__search.active .contenthub-menu__search-icon:before {
          background: url("../img/close.svg") no-repeat center center;
          -webkit-background-size: 20px 20px;
                  background-size: 20px; } }
    .contenthub-menu__search.active input[type='text'] {
      opacity: 1;
      pointer-events: auto;
      -webkit-transition-delay: .4s;
              transition-delay: .4s; }

.contenthub-menu__search-icon {
  cursor: pointer;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: border .4s;
  transition: border .4s;
  width: 50px; }
  .contenthub-menu__search-icon:before {
    background: url("../img/search.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-transition: width .4s;
    transition: width .4s;
    width: 100%; }

.contenthub-menu__items {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  float: left;
  margin-left: 50px;
  padding-left: 20px;
  text-align: center;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: calc(100% - 50px); }
  .contenthub-menu__items::before, .contenthub-menu__items::after {
    display: table;
    content: ' '; }
  .contenthub-menu__items::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__items {
      padding-left: 0; } }

.contenthub-menu__list {
  margin: 0;
  padding: 0; }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__list {
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 1;
          -ms-flex: 1 0 auto;
              flex: 1 0 auto;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  .contenthub-menu__list li {
    display: none;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    float: left;
    list-style: none;
    margin-bottom: 0;
    outline: 0;
    padding: 18px 0;
    text-align: left;
    -webkit-transition: all .4s;
    transition: all .4s;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .contenthub-menu__list li {
        padding: 20px 0; } }
    @media print, screen and (min-width: 64em) {
      .contenthub-menu__list li {
        border-right: 3px solid #fff;
        display: inline-block;
        padding: 28px 0;
        text-align: center;
        width: auto; } }
    .contenthub-menu__list li.current-menu-item a {
      border-bottom: 1px solid #ff080d; }
    .contenthub-menu__list li a {
      color: #333;
      font-family: "Circular Std Book", sans-serif;
      font-size: 0.875rem;
      line-height: 1.125rem;
      outline: 0;
      padding-bottom: 1px;
      text-decoration: none;
      text-transform: uppercase; }
      @media print, screen and (min-width: 64em) {
        .contenthub-menu__list li a {
          font-size: 0.9375rem; } }

.contenthub-menu__column {
  background-color: #e7e8ef;
  float: left;
  margin-bottom: 0;
  outline: 0;
  padding: 18px 0;
  text-align: left;
  -webkit-transition: all .4s;
  transition: all .4s; }
  @media print, screen and (min-width: 40em) {
    .contenthub-menu__column {
      padding: 20px 40px 20px 0; } }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__column {
      display: block;
      padding: 28px 40px 28px 20px;
      text-align: center; } }

.contenthub-menu__link {
  color: #ff080d;
  font-size: 0.875rem;
  font-weight: bold;
  outline: 0;
  text-decoration: none;
  text-transform: uppercase; }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__link {
      font-size: 0.9375rem; } }
  .contenthub-menu__link:hover {
    text-decoration: underline; }

.contenthub-menu__link-info {
  color: #000;
  position: relative;
  text-transform: none; }
  .contenthub-menu__link-info:after {
    background: url("../img/expand.svg") center center/15px auto no-repeat;
    content: '';
    height: 100%;
    position: absolute;
    right: -35px;
    top: 0;
    width: 35px; }
  .contenthub-menu__link-info.expanded:after {
    background: url("../img/hide.svg") center center/30px auto no-repeat; }
  .contenthub-menu__link-info.contenthub-menu__link-info--open {
    display: none; }
    @media print, screen and (min-width: 64em) {
      .contenthub-menu__link-info.contenthub-menu__link-info--open {
        display: inline-block; } }
  .contenthub-menu__link-info.contenthub-menu__link-info--mobile {
    display: inline-block; }
    @media print, screen and (min-width: 64em) {
      .contenthub-menu__link-info.contenthub-menu__link-info--mobile {
        display: none; } }

.contenthub-menu__dropdown {
  background-color: #f4f4f4;
  clear: both;
  display: none;
  -webkit-transition: background .4s;
  transition: background .4s;
  width: 100%; }
  .contenthub-menu__dropdown::before, .contenthub-menu__dropdown::after {
    display: table;
    content: ' '; }
  .contenthub-menu__dropdown::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .contenthub-menu__dropdown {
      border-top: 2px solid #ffffff;
      padding: 1.25rem 1.5625rem; } }
  .contenthub-menu__dropdown ul {
    margin: 0;
    padding: 0;
    text-align: center; }
    .contenthub-menu__dropdown ul::before, .contenthub-menu__dropdown ul::after {
      display: table;
      content: ' '; }
    .contenthub-menu__dropdown ul::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .contenthub-menu__dropdown ul {
        text-align: left; } }
  @media print, screen and (min-width: 40em) {
    .contenthub-menu__dropdown span {
      clear: both;
      display: block; } }
  .contenthub-menu__dropdown .contenthub-menu__link-info {
    display: none;
    float: right;
    margin-right: 40px; }
    @media print, screen and (min-width: 40em) {
      .contenthub-menu__dropdown .contenthub-menu__link-info {
        display: block; } }
    .contenthub-menu__dropdown .contenthub-menu__link-info:after {
      background: url("../img/hide.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px; }

.contenthub-menu__dropdown-item {
  border-top: 1px solid #ffffff;
  list-style: none;
  padding: 15px 0; }
  @media print, screen and (min-width: 40em) {
    .contenthub-menu__dropdown-item {
      border-top: 0;
      float: left;
      margin: 10px 0;
      padding: 0;
      width: 50%; } }

.contenthub-menu__dropdown-description {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666;
  display: none;
  margin-top: 5px;
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .contenthub-menu__dropdown-description {
      display: block; } }

.contenthub-menu__dropdown-options {
  background: #f4f4f4;
  display: none;
  width: 100%; }
  .contenthub-menu__dropdown-options form {
    margin: auto;
    max-width: 600px;
    position: relative;
    width: 60%; }
  .contenthub-menu__dropdown-options input[type='text'] {
    border-radius: 35px;
    font-size: 1rem;
    max-width: 600px;
    padding: 0.625rem 7.1875rem 0.625rem 0.9375rem; }
  @media print, screen and (min-width: 64em) {
    .contenthub-menu__dropdown-options .contenthub-menu__dropdown-inner {
      border-right: 2px solid #ffffff; } }
  .contenthub-menu__dropdown-options .contenthub-menu__link-info--close {
    height: 100%;
    line-height: 62px;
    position: absolute;
    right: 20px;
    top: 0; }
    .contenthub-menu__dropdown-options .contenthub-menu__link-info--close:after {
      background: url("../img/close-blue.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px; }

.contenthub-menu__dropdown-options-search {
  min-height: 62px;
  padding: 11px 0; }
  .contenthub-menu__dropdown-options-search .contenthub-menu__search-icon {
    pointer-events: none; }

.contenthub-menu__search-button {
  position: absolute;
  right: 0px;
  top: 0px;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
  height: 41px; }

.divider {
  clear: both;
  height: 110px;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .divider {
      height: 130px; } }
  .divider:before {
    background: #c9cacb;
    content: '';
    height: 40px;
    left: 50%;
    position: absolute;
    top: 20px;
    width: 1px; }
    @media print, screen and (min-width: 64em) {
      .divider:before {
        height: 60px; } }
  .divider:after {
    background: #ff080d;
    border-radius: 50%;
    content: '';
    height: 12px;
    left: 50%;
    position: absolute;
    top: 70px;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 12px; }
    @media print, screen and (min-width: 64em) {
      .divider:after {
        top: 90px; } }
  .divider.divider--min {
    height: 80px;
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .divider.divider--min {
        height: 100px; } }
    .divider.divider--min:after {
      display: none; }

.faqs-page .generic-main {
  padding: 3.75rem 0 2.5rem; }
  @media print, screen and (min-width: 40em) {
    .faqs-page .generic-main {
      padding: 6.25rem 0 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .faqs-page .generic-main {
      padding: 7.8125rem 0; } }

.faqs-page .faqs {
  background-color: transparent;
  color: #333; }

@media print, screen and (min-width: 64em) {
  .faqs-page .faqs__inner {
    width: 83.33333%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .faqs-page .faqs__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .faqs-page .faqs__inner, .faqs-page .faqs__inner:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .faqs-page .faqs__inner:last-child:not(:first-child) {
      float: right; } }

.faqs-page .faqs__column-title {
  font-size: 1.25rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.75rem;
  margin: 0;
  margin-bottom: 10px; }
  @media print, screen and (min-width: 40em) {
    .faqs-page .faqs__column-title {
      font-size: 1.75rem;
      line-height: 2.25rem;
      margin-bottom: 20px; } }
  @media print, screen and (min-width: 64em) {
    .faqs-page .faqs__column-title {
      width: 100%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 0%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .faqs-page .faqs__column-title {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .faqs-page .faqs__column-title, .faqs-page .faqs__column-title:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .faqs-page .faqs__column-title:last-child:not(:first-child) {
        float: right; } }

@media print, screen and (min-width: 64em) {
  .faqs-page .faqs__post-wrapper {
    width: 100%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .faqs-page .faqs__post-wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .faqs-page .faqs__post-wrapper, .faqs-page .faqs__post-wrapper:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .faqs-page .faqs__post-wrapper:last-child:not(:first-child) {
      float: right; } }

.faqs-page .faqs__post {
  border-bottom: 2px solid #c9cacb;
  color: #333; }

.faqs-page .faqs__question:after {
  background: url("../img/show-more-grey.svg") no-repeat center center; }

.faqs {
  background-color: #1b2326;
  color: #ffffff;
  display: none;
  padding: 0 20px;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .faqs {
      padding: 0; } }
  .faqs.faqs--visible {
    display: block; }

.faqs__content {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .faqs__content {
      padding-top: 10px; } }

.faqs__column-title {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  padding-top: 20px;
  width: 100%; }
  .faqs__column-title span {
    display: block;
    margin-bottom: 20px; }
  @media print, screen and (min-width: 40em) {
    .faqs__column-title {
      font-size: 1.5rem;
      line-height: 1.875rem; } }
  @media print, screen and (min-width: 64em) {
    .faqs__column-title {
      width: 16.66667%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      padding-top: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .faqs__column-title {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .faqs__column-title, .faqs__column-title:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .faqs__column-title:last-child:not(:first-child) {
        float: right; } }

.faqs__column-list {
  margin-bottom: 20px;
  width: 100%; }
  .faqs__column-list::before, .faqs__column-list::after {
    display: table;
    content: ' '; }
  .faqs__column-list::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .faqs__column-list {
      margin-bottom: 40px; } }

.faqs__post-wrapper {
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .faqs__post-wrapper {
      width: 66.66667%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .faqs__post-wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .faqs__post-wrapper, .faqs__post-wrapper:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .faqs__post-wrapper:last-child:not(:first-child) {
        float: right; } }

.faqs__post {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  border-bottom: 1px solid #fff;
  color: #fff;
  padding: 15px 0; }
  @media print, screen and (min-width: 40em) {
    .faqs__post {
      font-size: 1.125rem;
      line-height: 1.625rem; } }
  @media print, screen and (min-width: 64em) {
    .faqs__post:first-of-type {
      padding-top: 0; } }
  .faqs__post a {
    color: inherit;
    text-decoration: none; }
    .faqs__post a:hover {
      text-decoration: underline; }

.faqs__question {
  cursor: pointer;
  padding-right: 35px;
  position: relative; }
  .faqs__question:after {
    background: url("../img/show-more-white.svg") no-repeat center center;
    -webkit-background-size: 25px 25px;
            background-size: 25px;
    content: '';
    cursor: pointer;
    height: 20px;
    position: absolute;
    right: 5px;
    top: 0;
    -webkit-transition: all .4s;
    transition: all .4s;
    width: 30px; }
  .faqs__question.expanded:after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg); }

.faqs__answer {
  display: none;
  margin-top: 20px; }
  .faqs__answer a {
    color: #ffffff;
    text-decoration: underline; }

.page-template-faqs .faqs__answer a {
  color: #3d96ca; }

.faqs__link {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #ffffff;
  display: inline-block;
  float: right;
  margin-top: 20px;
  padding-right: 25px;
  position: relative;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .faqs__link {
      font-size: 1.125rem;
      line-height: 1.625rem; } }
  .faqs__link:hover {
    text-decoration: underline; }
  .faqs__link:after {
    background: url("../img/chevron-right-white.svg") no-repeat center center;
    -webkit-background-size: 25px 25px;
            background-size: 25px;
    content: '';
    cursor: pointer;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 25px; }

.faqs__return-to-top {
  float: right;
  margin: 20px 0;
  text-decoration: none;
  font-size: 80%;
  font-weight: bold; }
  .faqs__return-to-top:visited, .faqs__return-to-top :hover, .faqs__return-to-top :active {
    color: #3d96ca; }

.faqs__answer-helpful {
  margin-top: 10px;
  -webkit-transition-duration: .4s;
          transition-duration: .4s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  font-size: 0.85em; }

.faqs__helpful-choice {
  padding: 0.2rem 0.5rem; }

.contact-main__suggest {
  display: none; }
  .contact-main__suggest .suggest__input {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .contact-main__suggest .suggest__input input {
      display: inline-block;
      font-size: 15px;
      min-width: 400px;
      margin-right: 15px; }
    .contact-main__suggest .suggest__input .loader {
      display: none; }
  .contact-main__suggest .faqs-suggest {
    background: none;
    color: #1b2326;
    padding: 0;
    padding-top: 25px;
    width: 100%; }
    @media print, screen and (min-width: 64em) {
      .contact-main__suggest .faqs-suggest {
        padding: 0; } }
    .contact-main__suggest .faqs-suggest.faqs--visible {
      display: block; }
    .contact-main__suggest .faqs-suggest .faqs__post {
      border-bottom: 1px solid rgba(27, 35, 38, 0.25);
      color: #1b2326;
      padding: 15px 0; }
      .contact-main__suggest .faqs-suggest .faqs__post:first-child {
        border-top: 1px solid rgba(27, 35, 38, 0.25); }
    .contact-main__suggest .faqs-suggest .faqs__question {
      cursor: pointer;
      padding-right: 35px;
      position: relative; }
      .contact-main__suggest .faqs-suggest .faqs__question:after {
        background: url("../img/show-more-grey.svg") no-repeat center center; }
    .contact-main__suggest .faqs-suggest .faqs__answer {
      display: none;
      margin-top: 20px; }
      .contact-main__suggest .faqs-suggest .faqs__answer a {
        color: #3d96ca;
        text-decoration: underline; }
    .contact-main__suggest .faqs-suggest .faqs__post-wrapper {
      width: 100%; }
      @media print, screen and (min-width: 64em) {
        .contact-main__suggest .faqs-suggest .faqs__post-wrapper {
          width: 100%;
          float: left;
          padding-right: 0.25rem;
          padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .contact-main__suggest .faqs-suggest .faqs__post-wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
      @media print, screen and (min-width: 64em) {
          .contact-main__suggest .faqs-suggest .faqs__post-wrapper, .contact-main__suggest .faqs-suggest .faqs__post-wrapper:last-child:not(:first-child) {
            float: left;
            clear: none; }
          .contact-main__suggest .faqs-suggest .faqs__post-wrapper:last-child:not(:first-child) {
            float: right; } }
    .contact-main__suggest .faqs-suggest .faqs__column-list {
      margin-bottom: 5px;
      width: 100%; }
      .contact-main__suggest .faqs-suggest .faqs__column-list::before, .contact-main__suggest .faqs-suggest .faqs__column-list::after {
        display: table;
        content: ' '; }
      .contact-main__suggest .faqs-suggest .faqs__column-list::after {
        clear: both; }
      @media print, screen and (min-width: 40em) {
        .contact-main__suggest .faqs-suggest .faqs__column-list {
          margin-bottom: 10px; } }
  .contact-main__suggest .contact-main__answer-title,
  .contact-main__suggest .contact-main__no-results {
    display: none; }
  .contact-main__suggest .contact-main__no-results {
    margin: 20px 0 5px; }
  .contact-main__suggest #load-more-btn {
    background: #7e8787;
    display: none;
    margin: 5px 10px 5px 0; }
  .contact-main__suggest #submit-enquiry-btn {
    display: none;
    margin: 5px 10px 5px 0; }
  .contact-main__suggest #submit-secondary-btn {
    display: none;
    margin: 5px 10px 5px 0; }

.page-template-enquiries .contact-main__footer {
  display: none;
  background: #ffffff;
  width: 100%;
  margin-left: 0; }
  @media print, screen and (min-width: 64em) {
    .page-template-enquiries .contact-main__footer {
      padding-left: 0; } }
  .page-template-enquiries .contact-main__footer:before {
    content: "";
    border-bottom: 1px solid rgba(27, 35, 38, 0.25);
    width: 100%;
    display: block;
    margin: 0 auto;
    margin-bottom: 20px; }
  .page-template-enquiries .contact-main__footer .contact-main__button {
    float: left; }

.faqs__anchor-links {
  padding: 1.25rem;
  width: 100%; }
  .faqs__anchor-links::before, .faqs__anchor-links::after {
    display: table;
    content: ' '; }
  .faqs__anchor-links::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .faqs__anchor-links {
      padding: 10rem 0 5.625rem 1.875rem; } }
  .faqs__anchor-links h3 {
    color: #333;
    display: none;
    padding: 10px 0;
    position: relative; }
    .faqs__anchor-links h3:after {
      background-color: #333;
      bottom: 0;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      width: 100%; }
  .faqs__anchor-links .faqs__anchor-link {
    display: none;
    margin: 10px 0;
    text-decoration: none;
    cursor: pointer;
    color: #3d96ca; }

.faqs__anchor-links-list {
  margin: 20px 0;
  padding: 0; }
  .faqs__anchor-links-list li {
    color: #666;
    font-size: 0.9375rem;
    line-height: 1.25rem;
    list-style: none;
    margin: 15px 0;
    padding-left: 25px;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .faqs__anchor-links-list li {
        font-size: 1.125rem;
        line-height: 1.5rem;
        padding-left: 30px; } }
    .faqs__anchor-links-list li:before {
      background: url("../img/check.svg") no-repeat center center;
      -webkit-background-size: 27px 27px;
              background-size: 27px;
      content: '';
      height: 1.25rem;
      left: 0;
      position: absolute;
      top: 0;
      width: 15px; }
      @media print, screen and (min-width: 40em) {
        .faqs__anchor-links-list li:before {
          -webkit-background-size: 30px 30px;
                  background-size: 30px; } }

.faqs-page .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse; }
  @media print, screen and (min-width: 64em) {
    .faqs-page .container {
      display: inherit;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: inherit;
              flex-flow: inherit; } }

.faqs-page .generic-main {
  padding-top: 20px; }
  @media print, screen and (min-width: 64em) {
    .faqs-page .generic-main {
      padding: 7.8125rem 0; } }

.faqs-page .generic-main__header:not(.mobile) {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .faqs-page .generic-main__header:not(.mobile) {
      display: block; } }

.faqs-page .generic-main__header.mobile {
  margin-bottom: 0;
  padding-top: 60px; }
  @media print, screen and (min-width: 64em) {
    .faqs-page .generic-main__header.mobile {
      display: none; } }

.featured-facilities {
  margin-top: 80px;
  padding-bottom: 50px;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities {
      margin-top: 30px;
      padding-bottom: 0; } }
  .featured-facilities:after {
    background: #ff080d;
    border-radius: 50%;
    bottom: 20px;
    content: '';
    height: 12px;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 12px; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities.featured-facilities--centre {
      margin-top: 110px; } }
  .featured-facilities.featured-facilities--centre .featured-facilities__highlights {
    margin-top: 70px; }

.featured-facilities__intro {
  margin: auto;
  max-width: 400px;
  padding: 0 20px;
  position: relative;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__intro {
      max-width: 520px; } }
  .featured-facilities__intro:before {
    background: #ff080d;
    border-radius: 50%;
    content: '';
    height: 12px;
    left: 50%;
    position: absolute;
    top: -50px;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 12px;
    z-index: 1; }
    @media print, screen and (min-width: 64em) {
      .featured-facilities__intro:before {
        top: -110px; } }
  .featured-facilities__intro h2 {
    font-size: 2.25rem;
    line-height: 2.625rem;
    margin: 30px 0 0;
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .featured-facilities__intro h2 {
        margin: 45px 0 0; } }
    .featured-facilities__intro h2:before {
      background: #c9cacb;
      content: '';
      height: 40px;
      left: 50%;
      position: absolute;
      top: -60px;
      width: 1px; }
      @media print, screen and (min-width: 64em) {
        .featured-facilities__intro h2:before {
          height: 60px;
          top: -90px; } }

.featured-facilities__virtual-button {
  background-color: #fff;
  border-color: #000;
  color: #000;
  display: inline-block;
  margin-top: 30px;
  padding-right: 50px;
  position: relative;
  text-decoration: none;
  -webkit-transition: all .4s;
  transition: all .4s; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__virtual-button {
      margin-top: 45px; } }
  .featured-facilities__virtual-button:after {
    background: url("../img/external-link-black.svg") no-repeat center center #fff;
    -webkit-background-size: 25px 25px;
            background-size: 25px;
    content: '';
    height: 100%;
    position: absolute;
    right: 20px;
    top: 0;
    -webkit-transition: all .4s;
    transition: all .4s;
    width: 25px; }
  .featured-facilities__virtual-button:hover {
    background-color: #000;
    border-color: #000;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }
    .featured-facilities__virtual-button:hover:after {
      background: url("../img/external-link-white.svg") no-repeat center center #000;
      -webkit-background-size: 25px 25px;
              background-size: 25px;
      -webkit-transition: all .4s;
      transition: all .4s; }

.featured-facilities__highlights-wrapper::before, .featured-facilities__highlights-wrapper::after {
  display: table;
  content: ' '; }

.featured-facilities__highlights-wrapper::after {
  clear: both; }

.featured-facilities__highlights {
  margin: 0 0 55px;
  position: relative;
  width: 100%; }
  .featured-facilities__highlights:before {
    background: #c9cacb;
    bottom: -75px;
    content: '';
    height: 40px;
    left: 50%;
    position: absolute;
    width: 1px; }
    @media print, screen and (min-width: 64em) {
      .featured-facilities__highlights:before {
        bottom: -10px;
        display: none;
        padding-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__highlights {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      padding: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .featured-facilities__highlights {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .featured-facilities__highlights, .featured-facilities__highlights:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .featured-facilities__highlights:last-child:not(:first-child) {
        float: right; } }

.featured-facilities__highlight {
  margin-bottom: 45px;
  padding: 0 20px; }
  .featured-facilities__highlight::before, .featured-facilities__highlight::after {
    display: table;
    content: ' '; }
  .featured-facilities__highlight::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__highlight {
      margin-bottom: 70px; } }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__highlight {
      margin-bottom: 140px;
      padding: 0; } }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__highlight:nth-of-type(2n+1) .featured-facilities__highlight-column {
      padding: 0 25px 0 0; } }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__highlight:nth-of-type(2n+1) .featured-facilities__highlight-column-image {
      float: right; }
      .featured-facilities__highlight:nth-of-type(2n+1) .featured-facilities__highlight-column-image:after {
        left: 0;
        right: auto; } }
  .featured-facilities__highlight:nth-of-type(2n+1) .featured-facilities__highlight-title a {
    color: #0a0a0a; }
    .featured-facilities__highlight:nth-of-type(2n+1) .featured-facilities__highlight-title a:hover {
      color: #3d96ca; }
  .featured-facilities__highlight:nth-of-type(2n+1) .featured-facilities__highlight-title:before {
    left: auto;
    right: -30px; }
  .featured-facilities__highlight:nth-of-type(2n+1) .featured-facilities__highlight-title:after {
    left: auto;
    right: -25px; }

.featured-facilities__highlight-column {
  float: left;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__highlight-column {
      padding: 0 0 0 25px;
      width: 50%; } }
  .featured-facilities__highlight-column .featured-facilities__highlight-title {
    font-family: "Circular Std Book", sans-serif;
    text-transform: none; }

.featured-facilities__highlight-title {
  padding-right: 15%;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__highlight-title:before {
      background: #ff080d;
      border-radius: 50%;
      bottom: 15px;
      content: '';
      height: 12px;
      left: -30px;
      position: absolute;
      top: 15px;
      width: 12px; }
    .featured-facilities__highlight-title:after {
      background: #c9cacb;
      content: '';
      height: 70%;
      left: -25px;
      min-height: 45px;
      position: absolute;
      top: 36px;
      width: 1px; } }

.featured-facilities__highlight-description, .smart__content {
  margin-bottom: 10px; }
  .featured-facilities__highlight-description p, .smart__content p {
    font-size: 1rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.375rem;
    margin: 0;
    color: #666;
    margin: 5px 0 20px;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .featured-facilities__highlight-description p, .smart__content p {
        font-size: 1.125rem;
        line-height: 1.5rem;
        margin: 15px 0 25px; } }
    @media print, screen and (min-width: 64em) {
      .featured-facilities__highlight-description p, .smart__content p {
        line-height: 1.875rem; } }
    .featured-facilities__highlight-description p a, .smart__content p a {
      color: #3d96ca;
      text-decoration: none; }
      .featured-facilities__highlight-description p a:hover, .smart__content p a:hover {
        text-decoration: underline; }

.featured-facilities__highlight-cta {
  background-color: #fff;
  border-color: #ff080d;
  color: #ff080d;
  font-size: 1rem;
  margin-bottom: 15px;
  text-decoration: none;
  width: 100%; }
  .featured-facilities__highlight-cta:hover {
    background-color: #ff080d;
    border-color: #ff080d;
    color: #fff; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__highlight-cta {
      width: auto; }
      .featured-facilities__highlight-cta.featured-facilities__highlight-cta--half {
        margin-right: 30px; } }

.featured-facilities__highlight-link {
  color: #3d96ca;
  display: block;
  font-size: 0.9375rem;
  margin-top: 20px;
  text-align: left;
  text-decoration: none; }
  .featured-facilities__highlight-link:hover {
    text-decoration: underline; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__highlight-link {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__highlight-link {
      margin-top: 7px; } }

.featured-facilities__highlight-link.red {
  color: #ff080d; }

.featured-facilities__highlight-column-image {
  float: left;
  margin: 0 0 15px;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__highlight-column-image {
      margin: 0;
      width: 50%; } }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__highlight-column-image {
      margin-top: 100px; }
      .featured-facilities__highlight-column-image:after {
        background: #c9cacb;
        bottom: -145px;
        content: '';
        height: 120px;
        position: absolute;
        right: 0;
        width: 1px; } }

.featured-facilities__highlight-image {
  height: 0;
  padding-bottom: 60%;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__highlight-image {
      padding-bottom: 56.5%; } }

.featured-facilities__extras {
  background: #f4f4f4;
  padding: 20px 0; }
  .featured-facilities__extras::before, .featured-facilities__extras::after {
    display: table;
    content: ' '; }
  .featured-facilities__extras::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__extras {
      padding: 40px 0 30px; } }

.featured-facilities__extras-wrapper {
  padding: 0 20px;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__extras-wrapper {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .featured-facilities__extras-wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .featured-facilities__extras-wrapper, .featured-facilities__extras-wrapper:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .featured-facilities__extras-wrapper:last-child:not(:first-child) {
        float: right; } }
  .featured-facilities__extras-wrapper h2 {
    color: #333;
    font-family: "Circular Std Book", sans-serif;
    text-transform: none; }

.featured-facilities__extras-list {
  border-bottom: 2px solid #c9cacb;
  border-top: 2px solid #c9cacb;
  height: auto;
  margin: 10px 0;
  overflow: hidden;
  padding: 20px 0 15px;
  position: relative;
  -webkit-transition: height .4s;
  transition: height .4s; }
  .featured-facilities__extras-list.hidden-content:after {
    background: url("../img/gradient-up.png") no-repeat bottom;
    -webkit-background-size: 100% 60px;
            background-size: 100% 60px;
    bottom: 0;
    content: '';
    height: 60px;
    left: 0;
    position: absolute;
    width: 100%; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__extras-list {
      margin: 20px 0;
      padding-top: 30px; } }
  .featured-facilities__extras-list .inner::before, .featured-facilities__extras-list .inner::after {
    display: table;
    content: ' '; }
  .featured-facilities__extras-list .inner::after {
    clear: both; }

.featured-facilities__extras-item {
  float: left;
  margin-bottom: 25px;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__extras-item {
      min-height: 85px;
      padding-right: 40px;
      width: 50%; } }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__extras-item {
      width: 33.33%; } }

.featured-facilities__extras-title {
  font-size: 0.9375rem;
  line-height: 1.25rem;
  margin-bottom: 5px;
  padding-left: 25px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__extras-title {
      font-size: 1.125rem;
      line-height: 1.5rem;
      padding-left: 30px; } }
  .featured-facilities__extras-title a {
    color: #0a0a0a;
    text-decoration: none; }
    .featured-facilities__extras-title a:hover {
      color: #3d96ca; }
  .featured-facilities__extras-title:after {
    background: url("../img/check-blue.svg") no-repeat center center;
    -webkit-background-size: 27px 27px;
            background-size: 27px;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 15px; }
    @media print, screen and (min-width: 40em) {
      .featured-facilities__extras-title:after {
        -webkit-background-size: 30px 30px;
                background-size: 30px; } }

.featured-facilities__extras-description {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  padding-left: 25px; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__extras-description {
      font-size: 1.125rem;
      line-height: 1.5rem;
      padding-left: 30px; } }
  .featured-facilities__extras-description a {
    color: #3d96ca;
    display: block;
    margin-top: 10px;
    text-decoration: none; }
    .featured-facilities__extras-description a:hover {
      text-decoration: underline; }

.featured-facilities__extras-link {
  display: block; }

.featured-facilities__extras-more {
  background: #f4f4f4;
  bottom: -10px;
  display: none;
  font-size: 0.9375rem;
  left: 50%;
  padding: 0 40px 0 20px;
  position: absolute;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }
  .featured-facilities__extras-more:after {
    right: 15px; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__extras-more {
      font-size: 1.125rem;
      padding: 0 60px 0 40px; }
      .featured-facilities__extras-more:after {
        right: 35px; } }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__extras-more {
      bottom: 0; } }

.featured-facilities__break.featured-facilities__break--desktop {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__break.featured-facilities__break--desktop {
      clear: both;
      display: block; } }

.featured-facilities__break.featured-facilities__break--tablet {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .featured-facilities__break.featured-facilities__break--tablet {
      clear: both;
      display: block; } }
  @media print, screen and (min-width: 64em) {
    .featured-facilities__break.featured-facilities__break--tablet {
      clear: initial;
      display: none; } }

.feeling-inspired {
  background: -webkit-gradient(linear, left top, right top, from(#9a0406), to(#ff080d));
  background: -webkit-linear-gradient(left, #9a0406, #ff080d);
  background: linear-gradient(to right, #9a0406, #ff080d);
  clear: both;
  color: #ffffff;
  padding: 30px 0 20px;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .feeling-inspired {
      padding: 40px 0 30px; } }
  @media print, screen and (min-width: 64em) {
    .feeling-inspired {
      padding: 60px 0 40px; } }

.feeling-inspired__inner {
  padding: 0 12px;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .feeling-inspired__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .feeling-inspired__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .feeling-inspired__inner, .feeling-inspired__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .feeling-inspired__inner:last-child:not(:first-child) {
        float: right; } }
  .feeling-inspired__inner h1 {
    padding-bottom: 20px;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .feeling-inspired__inner h1 {
        padding-bottom: 30px; } }
    .feeling-inspired__inner h1:after {
      background-color: #ffffff;
      bottom: 0;
      content: '';
      height: 2px;
      left: 50%;
      position: absolute;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 30px; }
  .feeling-inspired__inner p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    margin: 20px auto 10px;
    max-width: 450px; }
    @media print, screen and (min-width: 40em) {
      .feeling-inspired__inner p {
        font-size: 1.375rem;
        line-height: 1.875rem;
        margin: 30px auto;
        max-width: 650px; } }

.feeling-inspired__buttons {
  margin: 20px 0 10px; }
  @media print, screen and (min-width: 40em) {
    .feeling-inspired__buttons {
      margin: 40px 0 20px; } }

.feeling-inspired__button {
  background: #000;
  border: 2px solid #000;
  border-radius: 3px;
  color: #fff;
  display: inline-block;
  font-size: 0.9375rem;
  margin: 10px auto;
  text-decoration: none;
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .feeling-inspired__button {
      border: 1px solid #000;
      margin: 0 5px;
      max-width: 270px;
      padding: 0.8125rem 0.625rem;
      width: 30%; } }
  @media print, screen and (min-width: 64em) {
    .feeling-inspired__button {
      font-size: 1rem;
      margin: 0 10px; } }
  .feeling-inspired__button:hover {
    background: #fff;
    border-color: #fff;
    color: #000; }

.home .footer {
  display: none; }
  @media screen and (min-width: 48em) {
    .home .footer.fixed {
      position: relative;
      top: 40vh; } }

.footer {
  background-color: #e4e4e5;
  position: relative;
  width: 100%; }
  .footer::before, .footer::after {
    display: table;
    content: ' '; }
  .footer::after {
    clear: both; }

.footer__container {
  max-width: 75rem;
  margin-right: auto;
  margin-left: auto; }
  .footer__container::before, .footer__container::after {
    display: table;
    content: ' '; }
  .footer__container::after {
    clear: both; }

.footer__menus::before, .footer__menus::after {
  display: table;
  content: ' '; }

.footer__menus::after {
  clear: both; }

@media print, screen and (min-width: 64em) {
  .footer__menus {
    height: 300px;
    padding: 30px 0 50px; } }

@media print, screen and (min-width: 64em) {
  .footer__menu-wrapper {
    width: 50%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .footer__menu-wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .footer__menu-wrapper, .footer__menu-wrapper:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .footer__menu-wrapper:last-child:not(:first-child) {
      float: right; } }

.footer__menu-about {
  border-bottom: 1px solid #ffffff; }
  @media print, screen and (min-width: 64em) {
    .footer__menu-about {
      width: 75%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 16.66667%;
      border-bottom: 0;
      margin-top: 20px; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .footer__menu-about {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .footer__menu-about, .footer__menu-about:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .footer__menu-about:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .footer__menu-about .footer__menu-title:after {
      width: 95%; } }

.footer__menu-contact {
  border-bottom: 1px solid #ffffff; }
  @media print, screen and (min-width: 64em) {
    .footer__menu-contact {
      width: 50%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      border-bottom: 0;
      margin-top: 20px; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .footer__menu-contact {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .footer__menu-contact, .footer__menu-contact:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .footer__menu-contact:last-child:not(:first-child) {
        float: right; } }

@media print, screen and (min-width: 64em) {
  .footer__menu-social {
    width: 50%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    margin-top: 20px; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .footer__menu-social {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .footer__menu-social, .footer__menu-social:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .footer__menu-social:last-child:not(:first-child) {
      float: right; } }

@media print, screen and (min-width: 64em) {
  .footer__menu-social .footer__menu-title:after {
    width: 75%; } }

.footer__menu-social img {
  display: block;
  margin-right: 10px;
  min-width: 125px;
  padding-top: 8px; }
  @media print, screen and (min-width: 64em) {
    .footer__menu-social img {
      margin: 0;
      padding-top: 8px; } }

.no-touchevents .footer__menu-title {
  border-bottom: 2px solid #c9cacb; }

.footer__menu-title {
  background-color: transparent;
  color: #333;
  cursor: pointer;
  font-size: 1.125rem;
  padding: 20px;
  position: relative; }
  .footer__menu-title:after {
    background: url("../img/expand.svg") no-repeat center center;
    -webkit-background-size: 15px 15px;
            background-size: 15px;
    content: '';
    height: 100%;
    position: absolute;
    right: 20px;
    top: 0;
    width: 15px; }
  .footer__menu-title.expanded {
    background-color: #e4e4e5; }
    .footer__menu-title.expanded:after {
      background: url("../img/hide-grey.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px; }
    @media print, screen and (min-width: 64em) {
      .footer__menu-title.expanded {
        background-color: transparent; }
        .footer__menu-title.expanded:after {
          background: #e4e4e5; } }
  @media print, screen and (min-width: 64em) {
    .footer__menu-title {
      cursor: default;
      margin-bottom: 20px;
      padding: 0 0 10px; }
      .footer__menu-title:after {
        background: #e4e4e5;
        bottom: 0;
        content: '';
        height: 2px;
        left: 0;
        position: absolute;
        right: auto;
        top: auto;
        width: 90%; } }

.footer__menu-content {
  background-color: #e4e4e5;
  display: none;
  padding: 0 20px; }
  .footer__menu-content::before, .footer__menu-content::after {
    display: table;
    content: ' '; }
  .footer__menu-content::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .footer__menu-content {
      background-color: transparent;
      display: block;
      padding: 0; } }

.footer__menu {
  float: left;
  margin: 0;
  padding: 0;
  width: 100%; }
  .footer__menu li {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.3125rem;
    margin: 0;
    border-top: 1px solid #ffffff;
    color: #666;
    list-style: none;
    padding: 15px 0;
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .footer__menu li {
        border-top: 0;
        margin: 10px 0;
        padding: 0; } }
    .footer__menu li a {
      color: inherit;
      text-decoration: none; }
      .footer__menu li a:hover {
        text-decoration: underline; }

@media print, screen and (min-width: 64em) {
  .footer__menu--half {
    float: left;
    width: 50%; }
    .footer__menu--half:first-of-type {
      padding-right: 20px; } }

.footer__social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  margin-top: 20px; }
  @media print, screen and (min-width: 64em) {
    .footer__social {
      margin-top: 15px; } }
  .footer__social a {
    text-decoration: none; }
    .footer__social a:not(:last-child) {
      margin-right: 10px; }

.footer__social-icon {
  background-color: transparent;
  -webkit-background-size: contain;
          background-size: contain;
  display: inline-block;
  height: 36px;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 36px;
  background: transparent no-repeat center; }
  @media print, screen and (min-width: 64em) {
    .footer__social-icon {
      height: 24px;
      width: 24px; } }
  .footer__social-icon.footer__social-icon--fb {
    background-image: url("../img/facebook-black.svg"); }
  .footer__social-icon.footer__social-icon--tw {
    background-image: url("../img/x-black.svg"); }
  .footer__social-icon.footer__social-icon--ig {
    background-image: url("../img/instagram-black.svg"); }
  .footer__social-icon.footer__social-icon--tt {
    background-image: url("../img/tiktok-black.svg"); }
  .footer__social-icon.footer__social-icon--yt {
    background-image: url("../img/youtube-black.svg"); }

.footer__copyright {
  border-top: 1px solid #ffffff;
  padding: 15px 20px;
  width: 100%; }
  .footer__copyright::before, .footer__copyright::after {
    display: table;
    content: ' '; }
  .footer__copyright::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .footer__copyright {
      padding: 15px 0; } }

.footer__copyright-content {
  color: #000;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .footer__copyright-content {
      width: 66.66667%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .footer__copyright-content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
      .footer__copyright-content, .footer__copyright-content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .footer__copyright-content:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .footer__copyright-content {
      width: 58.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .footer__copyright-content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .footer__copyright-content, .footer__copyright-content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .footer__copyright-content:last-child:not(:first-child) {
        float: right; } }
  .footer__copyright-content p {
    font-size: 0.75rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0; }
    @media print, screen and (min-width: 40em) {
      .footer__copyright-content p {
        padding-left: 12px; } }
    @media print, screen and (min-width: 64em) {
      .footer__copyright-content p {
        padding-left: 0; } }

.footer__copyright-image {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .footer__copyright-image {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      width: 33.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      text-align: right; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .footer__copyright-image {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
      .footer__copyright-image, .footer__copyright-image:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .footer__copyright-image:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .footer__copyright-image {
      width: 25%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      text-align: left; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .footer__copyright-image {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .footer__copyright-image, .footer__copyright-image:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .footer__copyright-image:last-child:not(:first-child) {
        float: right; } }
  .footer__copyright-image img {
    margin-top: 10px;
    width: -webkit-min-content;
    width: min-content; }
    @media print, screen and (min-width: 40em) {
      .footer__copyright-image img {
        margin-right: 12px;
        margin-top: 6px; } }
    @media print, screen and (min-width: 64em) {
      .footer__copyright-image img {
        margin-right: 0; } }

input:not(.CybotCookiebotDialogBodyLevelButton)[type='text']:focus, input:not(.CybotCookiebotDialogBodyLevelButton)[type='password']:focus, input:not(.CybotCookiebotDialogBodyLevelButton)[type='email']:focus, input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel']:focus, textarea:focus, select:focus {
  border: 1px solid #df7208;
  -webkit-box-shadow: 0 0 10px #df7208;
          box-shadow: 0 0 10px #df7208;
  outline: none; }

input:not(.CybotCookiebotDialogBodyLevelButton)[type='text'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='password'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='email'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel'] {
  border: 1px solid #666;
  border-radius: 3px;
  color: #333;
  font-family: "Circular Std Book", sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: -.01em;
  padding: 0.8125rem 1.25rem;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    input:not(.CybotCookiebotDialogBodyLevelButton)[type='text'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='password'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='email'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel'] {
      max-width: 500px; } }
  @media print, screen and (min-width: 64em) {
    input:not(.CybotCookiebotDialogBodyLevelButton)[type='text'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='password'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='email'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel'] {
      max-width: 400px; } }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='text']:disabled, input:not(.CybotCookiebotDialogBodyLevelButton)[type='password']:disabled, input:not(.CybotCookiebotDialogBodyLevelButton)[type='email']:disabled, input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel']:disabled {
    opacity: .6;
    pointer-events: none; }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='text'].input__search, input:not(.CybotCookiebotDialogBodyLevelButton)[type='password'].input__search, input:not(.CybotCookiebotDialogBodyLevelButton)[type='email'].input__search, input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel'].input__search {
    background: #ffffff url("../img/search.svg") no-repeat 94% 13px;
    -webkit-background-size: 18px 18px;
            background-size: 18px;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      input:not(.CybotCookiebotDialogBodyLevelButton)[type='text'].input__search, input:not(.CybotCookiebotDialogBodyLevelButton)[type='password'].input__search, input:not(.CybotCookiebotDialogBodyLevelButton)[type='email'].input__search, input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel'].input__search {
        background: #ffffff url("../img/search.svg") no-repeat 95% 13px;
        -webkit-background-size: 22px 22px;
                background-size: 22px;
        padding: 0.9375rem 3.125rem 0.9375rem 1.25rem; } }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='text'].input__filter, input:not(.CybotCookiebotDialogBodyLevelButton)[type='password'].input__filter, input:not(.CybotCookiebotDialogBodyLevelButton)[type='email'].input__filter, input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel'].input__filter {
    border: 0;
    padding: 0; }
    input:not(.CybotCookiebotDialogBodyLevelButton)[type='text'].input__filter:focus, input:not(.CybotCookiebotDialogBodyLevelButton)[type='password'].input__filter:focus, input:not(.CybotCookiebotDialogBodyLevelButton)[type='email'].input__filter:focus, input:not(.CybotCookiebotDialogBodyLevelButton)[type='tel'].input__filter:focus {
      border: 0;
      -webkit-box-shadow: initial;
              box-shadow: initial;
      outline: none; }

input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio'], input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox'] {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio'] + label, input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox'] + label {
    cursor: pointer;
    display: block;
    margin: 10px 0;
    padding-left: 31px;
    position: relative; }
    input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio'] + label span, input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox'] + label span {
      background-position: center center;
      background-repeat: no-repeat;
      -webkit-background-size: 24px 24px;
              background-size: 24px;
      cursor: pointer;
      display: inline-block;
      height: 24px;
      left: 0;
      margin: -1px 6px 0 0;
      position: absolute;
      top: 3px;
      vertical-align: middle;
      width: 24px; }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio']:focus + label span, input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox']:focus + label span {
    outline: auto 3px #df7208; }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio'].forms__input--checkbox + label span, input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox'].forms__input--checkbox + label span {
    background-image: url("../img/checkbox-blank.svg");
    margin: -4px 8px 0 0; }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio'].forms__input--checkbox:checked + label span, input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox'].forms__input--checkbox:checked + label span {
    background-image: url("../img/checkbox-checked.svg"); }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio'].forms__input--radio + label span, input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox'].forms__input--radio + label span {
    background-image: url("../img/radio-blank.svg");
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    height: 24px;
    margin: -3px 8px 0 0;
    width: 24px; }
  input:not(.CybotCookiebotDialogBodyLevelButton)[type='radio'].forms__input--radio:checked + label span, input:not(.CybotCookiebotDialogBodyLevelButton)[type='checkbox'].forms__input--radio:checked + label span {
    background-image: url("../img/radio-checked.svg"); }

textarea {
  border: 1px solid #666;
  border-radius: 3px;
  color: #333;
  display: block;
  font-family: "Circular Std Book", sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  height: 170px;
  letter-spacing: -.01em;
  padding: 0.8125rem 1.25rem;
  resize: none;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    textarea {
      max-width: 500px; } }
  @media print, screen and (min-width: 64em) {
    textarea {
      max-width: 400px; } }

.radio__wrapper {
  display: block; }

.radio__wrapper--inline {
  display: inline-block;
  margin-right: 25px; }

.select__wrapper {
  margin-top: 20px;
  position: relative;
  width: 100%; }
  .select__wrapper:before {
    background: url("../img/expand-grey.svg") no-repeat center center;
    -webkit-background-size: 18px 18px;
            background-size: 18px;
    content: '';
    height: 94%;
    pointer-events: none;
    position: absolute;
    right: 10px;
    top: 3%;
    width: 30px; }
  .select__wrapper .form__validity-icon {
    right: 10px; }
  .select__wrapper.input__wrapper--valid:before, .select__wrapper.input__wrapper--invalid:before {
    right: 40px; }
  .select__wrapper.input__wrapper--valid select, .select__wrapper.input__wrapper--invalid select {
    padding-right: 70px; }
  @media print, screen and (min-width: 40em) {
    .select__wrapper {
      max-width: 500px; }
      .select__wrapper .form__validity-icon {
        left: 460px; } }
  @media print, screen and (min-width: 64em) {
    .select__wrapper {
      max-width: 400px; }
      .select__wrapper .form__validity-icon {
        left: 415px; }
      .select__wrapper.input__wrapper--valid:before, .select__wrapper.input__wrapper--invalid:before {
        right: 10px; }
      .select__wrapper.input__wrapper--valid select, .select__wrapper.input__wrapper--invalid select {
        padding-right: 40px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .select__wrapper:before {
    display: none; } }

select {
  -webkit-appearance: none;
          appearance: none;
  background-color: #ffffff;
  border: 1px solid #666;
  border-radius: 3px;
  color: #333;
  display: inline-block;
  font-family: "Circular Std Book", sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  height: 3rem;
  letter-spacing: -.01em;
  padding: 0.8125rem 2.5rem 0.8125rem 1.25rem;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    select {
      max-width: 600px; } }
  @media print, screen and (min-width: 64em) {
    select {
      max-width: 400px; } }

.form__validity-icon {
  background-color: transparent;
  background-position: right center;
  background-repeat: no-repeat;
  -webkit-background-size: 25px 25px;
          background-size: 25px;
  display: none;
  height: 30px;
  pointer-events: none;
  position: absolute;
  right: 4%;
  top: 8px;
  width: 30px; }
  @media print, screen and (min-width: 40em) {
    .form__validity-icon {
      background-position: center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px;
      left: 450px;
      position: absolute;
      top: 10px; } }
  @media print, screen and (min-width: 64em) {
    .form__validity-icon {
      background-color: transparent;
      left: 415px;
      top: 12px; } }

.input__wrapper {
  margin-top: 20px;
  position: relative; }

.input__wrapper--valid input {
  border-color: #b9c700; }
  .input__wrapper--valid input[type='text'].input__search {
    background-position-x: 89%;
    padding-right: 75px; }
    @media print, screen and (min-width: 40em) {
      .input__wrapper--valid input[type='text'].input__search {
        background-position-x: 87%;
        padding-right: 90px; } }
    @media print, screen and (min-width: 64em) {
      .input__wrapper--valid input[type='text'].input__search {
        background-position-x: 95%;
        padding-right: 50px; } }

.input__wrapper--valid .form__validity-icon {
  background-image: url("../img/valid.svg");
  color: #b9c700;
  content: '';
  display: block;
  text-transform: uppercase; }

.input__wrapper--invalid input,
.input__wrapper--invalid textarea {
  border-color: #df7208; }
  .input__wrapper--invalid input[type='text'].input__search,
  .input__wrapper--invalid textarea[type='text'].input__search {
    background-position-x: 89%;
    padding-right: 75px; }
    @media print, screen and (min-width: 40em) {
      .input__wrapper--invalid input[type='text'].input__search,
      .input__wrapper--invalid textarea[type='text'].input__search {
        background-position-x: 87%;
        padding-right: 90px; } }
    @media print, screen and (min-width: 64em) {
      .input__wrapper--invalid input[type='text'].input__search,
      .input__wrapper--invalid textarea[type='text'].input__search {
        background-position-x: 95%;
        padding-right: 50px; } }

.input__wrapper--invalid .form__validity-message {
  display: block; }

.input__wrapper--invalid .form__validity-icon {
  background-image: url("../img/attention.svg");
  color: #df7208;
  content: '';
  display: block;
  text-transform: uppercase; }

.form__validity-message {
  position: absolute;
  left: 0;
  bottom: -25px;
  color: #df7208;
  display: none;
  font-size: 14px; }

.form__subfields {
  display: none; }

.freeswim__login {
  display: block; }

.freeswim__eligibility-message {
  background: transparent;
  margin: 0 auto;
  padding: 40px 0;
  text-align: center;
  width: 80%; }
  @media print, screen and (min-width: 40em) {
    .freeswim__eligibility-message {
      max-width: 500px;
      width: 100%; } }

.freeswim__eligibility-message-title {
  color: #ff080d;
  margin-bottom: 20px; }

.freeswim__detailed-form p {
  color: #666;
  font-size: 14px; }

.freeswim__eligibility-other-input:empty {
  display: none; }

.freeswim__eligibility-secondary-options .form__validity-icon {
  background-color: transparent; }

@media print, screen and (min-width: 40em) {
  .freeswim__sections {
    margin: 0 20px; } }

@media print, screen and (min-width: 64em) {
  .freeswim__sections {
    margin: 0; } }

.freeswim__section {
  border-top: 2px solid #ffffff;
  display: none;
  margin-bottom: 20px;
  position: relative; }
  .freeswim__section.active {
    background: #eaefff; }
  .freeswim__section.contact-main__module--details {
    display: none; }
  @media print, screen and (min-width: 40em) {
    .freeswim__section {
      margin-bottom: 40px; } }
  @media print, screen and (min-width: 64em) {
    .freeswim__section {
      margin: 0 0 40px 30px;
      max-width: 780px;
      width: 90%; } }
  .freeswim__section--active {
    display: block; }
    .freeswim__section--active .freeswim__section-title {
      background: #e1e7ff; }
    .freeswim__section--active .freeswim__section-body {
      background: #eaefff; }
  .freeswim__section--preferences {
    margin-bottom: 0; }
    .freeswim__section--preferences label {
      display: inline !important; }
  .freeswim__section--visible {
    display: block; }

.freeswim__section-title,
.freeswim__section-body {
  padding: 20px 15px; }
  @media print, screen and (min-width: 40em) {
    .freeswim__section-title,
    .freeswim__section-body {
      padding: 20px 25px; } }

.freeswim__section-title {
  background: #e4e4e5;
  border-bottom: 2px solid #ffffff; }

.freeswim__section-body {
  background: #f4f4f4;
  padding: 20px 35px 35px; }
  .freeswim__section-body .input__wrapper {
    margin-top: 0;
    padding-top: 15px; }
  .freeswim__section-body .select__wrapper {
    margin-bottom: 30px;
    margin-top: 10px; }
  .freeswim__section-body [id^='select-option-choice'] > .form__validity-icon {
    background-color: transparent;
    left: auto;
    right: -20px;
    top: -8px; }
    @media print, screen and (min-width: 40em) {
      .freeswim__section-body [id^='select-option-choice'] > .form__validity-icon {
        right: 0;
        top: 0; } }
  .freeswim__section-body label p {
    color: #939598;
    font-size: 14px; }
  .freeswim__section-body textarea {
    margin-top: 10px; }

.freeswim__footer {
  background: #eaefff;
  border-top: 2px solid #ffffff;
  display: none;
  margin-top: -18px;
  padding: 25px 15px; }
  .freeswim__footer::before, .freeswim__footer::after {
    display: table;
    content: ' '; }
  .freeswim__footer::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .freeswim__footer {
      margin: -38px 20px 0;
      padding: 25px; } }
  @media print, screen and (min-width: 64em) {
    .freeswim__footer {
      margin: -38px 0 0 30px;
      max-width: 780px;
      width: 90%; } }
  .freeswim__footer .contact-main__button {
    float: right; }

.freeswim__confirm {
  cursor: pointer;
  float: none;
  text-align: left !important; }
  .freeswim__confirm--checkboxes {
    display: none; }
  .freeswim__confirm--marketing {
    display: block !important; }

.login__form--card {
  display: none;
  padding-top: 20px; }

.wrapper-marketingPreferences {
  display: none; }

@media print, screen and (min-width: 64em) {
  .page-template-enquiries .wrapper,
  .page-template-enquiries-thank-you .wrapper,
  .page-template-faqs .wrapper,
  .page-template-feedback .wrapper,
  .page-template-feedback-thank-you .wrapper,
  .page-template-generic .wrapper,
  .page-template-freeswim .wrapper,
  .page-template-scv .wrapper,
  .single-centre-subpage .wrapper,
  .single-promo-page .wrapper,
  .error404 .wrapper {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    background: -webkit-gradient(linear, left top, right top, color-stop(50%, #ffffff), color-stop(50%, #f4f4f4));
    background: -webkit-linear-gradient(left, #ffffff 50%, #f4f4f4 50%);
    background: linear-gradient(90deg, #ffffff 50%, #f4f4f4 50%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; } }

@media print, screen and (min-width: 64em) {
  .generic {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; } }

.generic__content {
  background: #ffffff; }
  @media print, screen and (min-width: 64em) {
    .generic__content {
      width: 66.66667%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      height: 100%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .generic__content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .generic__content, .generic__content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .generic__content:last-child:not(:first-child) {
        float: right; } }
  @media screen and (min-width: 81.25em) {
    .generic__content {
      width: 75%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 0%; } }
  @media screen and (min-width: 81.25em) and (min-width: 40em) {
    .generic__content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media screen and (min-width: 81.25em) {
      .generic__content, .generic__content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .generic__content:last-child:not(:first-child) {
        float: right; } }

@media print, screen and (min-width: 64em) {
  .generic__wrapper {
    overflow-x: hidden; } }

@media print, screen and (min-width: 64em) {
  .generic__sidebar {
    width: 25%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    background: #f4f4f4;
    height: 100%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .generic__sidebar {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .generic__sidebar, .generic__sidebar:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .generic__sidebar:last-child:not(:first-child) {
      float: right; } }

.generic-main {
  padding: 6.25rem 0 2.5rem; }
  @media print, screen and (min-width: 40em) {
    .generic-main {
      padding: 7.8125rem 0 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .generic-main {
      padding: 7.8125rem 0; } }

.generic-main__header {
  margin-bottom: 10px;
  padding: 0 20px 20px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .generic-main__header {
      margin-bottom: 35px;
      padding: 0 20px 30px; } }
  @media print, screen and (min-width: 64em) {
    .generic-main__header {
      padding: 0 30px 30px 0; } }
  .generic-main__header:after {
    background: #e4e4e5;
    bottom: 0;
    content: '';
    height: 1px;
    left: 20px;
    position: absolute;
    width: calc(100% - 40px); }
    @media print, screen and (min-width: 64em) {
      .generic-main__header:after {
        left: 0;
        width: calc(100% + 6px); } }
  @media print, screen and (min-width: 64em) {
    .generic-main__header h1 {
      font-size: 2.875rem;
      line-height: 3.875rem; } }
  .generic-main__header p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    color: #666;
    max-width: 680px;
    padding: 20px 0; }
    @media print, screen and (min-width: 40em) {
      .generic-main__header p {
        font-size: 1.375rem;
        line-height: 1.875rem;
        padding: 20px 0 40px; } }

.generic-main__header-buttons {
  margin: 10px 0;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .generic-main__header-buttons {
      margin: 0;
      text-align: left; } }

.generic-main__button {
  background: #ffffff;
  display: inline-block; }

.generic-main__divider {
  font-size: 1rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.375rem;
  margin: 0;
  margin: 15px 0; }
  @media print, screen and (min-width: 40em) {
    .generic-main__divider {
      display: inline;
      margin: 0 10px; } }
  .generic-main__divider span {
    margin: 0 2px; }

.generic-main__link {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.625rem;
  margin: 0;
  display: inline-block;
  margin-bottom: 30px; }

.generic-main__content {
  color: #666;
  padding: 25px 20px 0; }
  @media print, screen and (min-width: 40em) {
    .generic-main__content {
      margin-left: 5%;
      width: 90%; } }
  @media print, screen and (min-width: 64em) {
    .generic-main__content {
      margin-left: 8%;
      width: 84%; } }
  .generic-main__content p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.375rem;
    margin: 0;
    margin-bottom: 15px; }
    @media print, screen and (min-width: 40em) {
      .generic-main__content p {
        font-size: 1.125rem;
        line-height: 1.75rem;
        margin-bottom: 30px; } }
    .generic-main__content p strong {
      font-weight: bold; }
    .generic-main__content p em {
      font-style: italic; }
  .generic-main__content h1 {
    margin-bottom: 10px; }
  .generic-main__content h2,
  .generic-main__content h3,
  .generic-main__content h4,
  .generic-main__content h5 {
    color: #333;
    margin-bottom: 10px; }
  .generic-main__content a {
    color: #3d96ca;
    text-decoration: none; }
    .generic-main__content a:hover {
      text-decoration: underline; }
  .generic-main__content > ul,
  .generic-main__content > ol {
    margin-bottom: 30px;
    padding-left: 20px; }
    @media print, screen and (min-width: 40em) {
      .generic-main__content > ul,
      .generic-main__content > ol {
        padding-left: 30px; } }
    .generic-main__content > ul li,
    .generic-main__content > ol li {
      font-size: 0.9375rem;
      line-height: 1.5625rem;
      margin: 10px 0;
      position: relative; }
  .generic-main__content > ul li {
    list-style: none; }
    .generic-main__content > ul li:before {
      background: #ff080d;
      border-radius: 50%;
      content: '';
      display: block;
      height: 6px;
      left: -20px;
      position: absolute;
      top: 10px;
      width: 6px; }
      @media print, screen and (min-width: 40em) {
        .generic-main__content > ul li:before {
          left: -27px; } }
  .generic-main__content > ol {
    counter-reset: item; }
    .generic-main__content > ol li {
      display: block;
      list-style-type: decimal; }
      .generic-main__content > ol li:before {
        color: #ff080d;
        content: counter(item) ".";
        counter-increment: item;
        left: -20px;
        position: absolute;
        top: 0; }
        @media print, screen and (min-width: 40em) {
          .generic-main__content > ol li:before {
            left: -27px; } }
  .generic-main__content > blockquote {
    color: #333;
    margin: 20px;
    padding: 30px;
    position: relative; }
    .generic-main__content > blockquote p {
      font-size: 1.25rem;
      font-family: "Circular Std Book", sans-serif;
      font-weight: 400;
      letter-spacing: -0.01em;
      line-height: 1.75rem;
      margin: 0;
      margin: 0;
      position: relative; }
      .generic-main__content > blockquote p:after, .generic-main__content > blockquote p:before {
        background: url("../img/quote-red.png") no-repeat center center;
        -webkit-background-size: 20px 20px;
                background-size: 20px;
        content: '';
        height: 25px;
        position: absolute;
        width: 25px; }
        @media print, screen and (min-width: 40em) {
          .generic-main__content > blockquote p:after, .generic-main__content > blockquote p:before {
            -webkit-background-size: 25px 25px;
                    background-size: 25px; } }
      .generic-main__content > blockquote p:after {
        bottom: -10px;
        right: -30px;
        -webkit-transform: scale(-1, -1);
            -ms-transform: scale(-1, -1);
                transform: scale(-1, -1); }
      .generic-main__content > blockquote p:before {
        left: -40px;
        top: -10px; }
    @media print, screen and (min-width: 40em) {
      .generic-main__content > blockquote {
        margin-bottom: 30px;
        padding: 30px 50px; }
        .generic-main__content > blockquote p {
          font-size: 1.75rem;
          line-height: 2.25rem; } }
  @media print, screen and (min-width: 40em) {
    .generic-main__content figure.alignleft.wp-caption, .generic-main__content figure.alignright.wp-caption,
    .generic-main__content img.alignleft.wp-caption,
    .generic-main__content img.alignright.wp-caption {
      max-width: 50%; } }
  .generic-main__content figure.alignleft.wp-caption img, .generic-main__content figure.alignright.wp-caption img,
  .generic-main__content img.alignleft.wp-caption img,
  .generic-main__content img.alignright.wp-caption img {
    width: 100%; }
  .generic-main__content figure.alignleft,
  .generic-main__content img.alignleft {
    float: left;
    height: auto;
    margin: 30px 0;
    position: relative;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .generic-main__content figure.alignleft,
      .generic-main__content img.alignleft {
        margin: 20px 25px 20px 0;
        max-width: 50%;
        width: auto; } }
    @media print, screen and (min-width: 64em) {
      .generic-main__content figure.alignleft,
      .generic-main__content img.alignleft {
        margin: 20px -25px 20px 0;
        right: 60px;
        width: auto; } }
  .generic-main__content figure.alignright,
  .generic-main__content img.alignright {
    float: right;
    height: auto;
    margin: 30px 0;
    position: relative;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .generic-main__content figure.alignright,
      .generic-main__content img.alignright {
        margin: 20px 0 20px 25px;
        max-width: 50%;
        width: auto; } }
    @media print, screen and (min-width: 64em) {
      .generic-main__content figure.alignright,
      .generic-main__content img.alignright {
        left: 60px;
        margin: 20px 0 20px -25px;
        width: auto; } }
  .generic-main__content figure.aligncenter, .generic-main__content figure.alignnone,
  .generic-main__content img.aligncenter,
  .generic-main__content img.alignnone {
    display: tabke;
    height: auto;
    margin: 30px auto;
    max-width: 100%; }
    @media print, screen and (min-width: 40em) {
      .generic-main__content figure.aligncenter, .generic-main__content figure.alignnone,
      .generic-main__content img.aligncenter,
      .generic-main__content img.alignnone {
        margin: 50px auto; }
        .generic-main__content figure.aligncenter.wp-caption, .generic-main__content figure.alignnone.wp-caption,
        .generic-main__content img.aligncenter.wp-caption,
        .generic-main__content img.alignnone.wp-caption {
          display: table; }
          .generic-main__content figure.aligncenter.wp-caption .wp-caption-text, .generic-main__content figure.alignnone.wp-caption .wp-caption-text,
          .generic-main__content img.aligncenter.wp-caption .wp-caption-text,
          .generic-main__content img.alignnone.wp-caption .wp-caption-text {
            caption-side: bottom;
            display: table-caption; } }
    .generic-main__content figure.aligncenter img, .generic-main__content figure.alignnone img,
    .generic-main__content img.aligncenter img,
    .generic-main__content img.alignnone img {
      height: auto; }
  .generic-main__content img {
    height: auto;
    max-width: 100%; }
  .generic-main__content .wp-caption-text {
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.25rem;
    margin-top: 6px; }
  .generic-main__content .iframe-video {
    height: 0;
    left: 0;
    margin: 30px 0;
    padding-bottom: 55.25%;
    padding-top: 25px;
    position: relative;
    width: 100%; }
    .generic-main__content .iframe-video iframe {
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%; }
  .generic-main__content .table-container {
    margin: 40px 0;
    overflow-x: scroll;
    width: calc(100% + 20px); }
    @media print, screen and (min-width: 40em) {
      .generic-main__content .table-container {
        overflow-x: hidden; } }
    .generic-main__content .table-container table {
      border-collapse: separate;
      border-spacing: 0;
      margin-bottom: 20px;
      min-width: 600px;
      text-align: left;
      width: 100%; }
      @media print, screen and (min-width: 40em) {
        .generic-main__content .table-container table {
          margin-bottom: 0;
          min-width: 0; } }
      .generic-main__content .table-container table th {
        font-size: 1.125rem;
        font-family: "Circular Std Book", sans-serif;
        font-weight: 400;
        letter-spacing: -0.01em;
        line-height: 1.5rem;
        margin: 0;
        border-bottom: 2px solid #e4e4e5;
        border-top: 2px solid #e4e4e5;
        color: #333;
        padding: 20px; }
      .generic-main__content .table-container table tbody tr:nth-of-type(2n + 1) {
        background: #f4f4f4; }
      .generic-main__content .table-container table tbody tr td {
        font-size: 0.875rem;
        font-family: "Circular Std Book", sans-serif;
        font-weight: 400;
        letter-spacing: -0.01em;
        line-height: 1.125rem;
        margin: 0;
        color: #666;
        padding: 25px 20px; }
        .generic-main__content .table-container table tbody tr td a {
          color: #ff080d; }

.info-block {
  background: #f4f4f4;
  border: 2px solid #f4f4f4;
  margin: 5px 0;
  position: relative; }
  .info-block::before, .info-block::after {
    display: table;
    content: ' '; }
  .info-block::after {
    clear: both; }
  .info-block .info-block__image {
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
    height: 200px; }
    @media screen and (min-width: 28.125em) {
      .info-block .info-block__image {
        height: 130px;
        left: 0;
        position: absolute;
        top: 0;
        width: 180px; } }
    @media print, screen and (min-width: 40em) {
      .info-block .info-block__image {
        width: 25%;
        float: left;
        padding-right: 0.25rem;
        padding-left: 0.25rem;
        height: 150px;
        position: relative; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .info-block .info-block__image {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
    @media print, screen and (min-width: 40em) {
        .info-block .info-block__image, .info-block .info-block__image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        .info-block .info-block__image:last-child:not(:first-child) {
          float: right; } }
  .info-block .info-block__content {
    color: #333; }
    @media print, screen and (min-width: 40em) {
      .info-block .info-block__content {
        width: 75%;
        float: left;
        padding-right: 0.25rem;
        padding-left: 0.25rem;
        padding: 15px 0 20px; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .info-block .info-block__content {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
    @media print, screen and (min-width: 40em) {
        .info-block .info-block__content, .info-block .info-block__content:last-child:not(:first-child) {
          float: left;
          clear: none; }
        .info-block .info-block__content:last-child:not(:first-child) {
          float: right; } }
  .info-block .info-block__header {
    padding: 15px 10px; }
    .info-block .info-block__header p {
      margin-bottom: 0; }
    @media screen and (min-width: 28.125em) {
      .info-block .info-block__header {
        height: 130px;
        padding: 15px 10px 0 200px; } }
    @media print, screen and (min-width: 40em) {
      .info-block .info-block__header {
        height: auto;
        padding: 0; }
        .info-block .info-block__header h4 {
          padding-left: 10px; }
        .info-block .info-block__header p {
          display: none; } }
    .info-block .info-block__header .info-block__more {
      display: block;
      position: relative; }
      @media print, screen and (min-width: 40em) {
        .info-block .info-block__header .info-block__more {
          display: none; } }
  .info-block .info-block__description {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.375rem;
    margin: 0;
    padding: 0 10px; }
    @media screen and (min-width: 28.125em) {
      .info-block .info-block__description {
        margin-top: 15px;
        padding: 0 10px; } }
    @media print, screen and (min-width: 40em) {
      .info-block .info-block__description {
        padding: 0 0 0 10px;
        width: 75%; } }
    @media print, screen and (min-width: 40em) {
      .info-block .info-block__description {
        padding: 0 0 0 10px;
        width: 75%; } }
    .info-block .info-block__description .hidden {
      display: none; }
  .info-block .info-block__more {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.375rem;
    margin: 0;
    display: none; }
    @media print, screen and (min-width: 40em) {
      .info-block .info-block__more {
        bottom: 20px;
        display: block;
        position: absolute;
        right: 20px; } }

@media print, screen and (min-width: 64em) {
  .generic-mobile-menu {
    display: none; } }

.generic-mobile-menu.sticky-nav--active .generic-mobile-menu__wrapper {
  background-color: #f4f4f4;
  -webkit-box-shadow: 0 4px 2px -2px #939598;
          box-shadow: 0 4px 2px -2px #939598;
  left: 0;
  max-width: 100%;
  min-width: 300px;
  position: fixed;
  top: 60px;
  width: 100%;
  z-index: 100; }
  @media print, screen and (min-width: 40em) {
    .generic-mobile-menu.sticky-nav--active .generic-mobile-menu__wrapper {
      top: 72px; } }
  @media print, screen and (min-width: 64em) {
    .generic-mobile-menu.sticky-nav--active .generic-mobile-menu__wrapper {
      margin: 0;
      padding: 0;
      width: 100%; } }
  .generic-mobile-menu.sticky-nav--active .generic-mobile-menu__wrapper.slide-up {
    top: 0; }

.touchevents .generic-mobile-menu__wrapper {
  -webkit-transition: top .4s;
  transition: top .4s; }

.generic-mobile-menu__wrapper {
  position: relative;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%;
  z-index: 10; }

.generic-mobile-menu__title {
  font-size: 1.375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.875rem;
  margin: 0;
  padding: 15px 20px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .generic-mobile-menu__title {
      padding: 20px; } }
  .generic-mobile-menu__title:after {
    background: url("../img/expand.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 60px; }
  .generic-mobile-menu__title.expanded:after {
    background: url("../img/hide.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px; }
  .generic-mobile-menu__title a {
    color: #333;
    text-decoration: none; }

.generic-mobile-menu__list {
  display: none;
  margin: 0;
  padding: 0;
  max-height: calc(100vh - (60px + 60px));
  overflow-y: auto;
  border-top: 2px solid #ffffff; }
  .generic-mobile-menu__wrapper.slide-up .generic-mobile-menu__list {
    max-height: calc(100vh - 60px); }
  @media print, screen and (min-width: 40em) {
    .generic-mobile-menu__list {
      max-height: calc(100vh - (72px + 72px)); }
      .generic-mobile-menu__wrapper.slide-up .generic-mobile-menu__list {
        max-height: calc(100vh - 72px); } }
  .generic-mobile-menu__list li {
    font-size: 1.125rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    list-style: none;
    position: relative; }
    .generic-mobile-menu__list li:not(:first-child) {
      border-top: 2px solid #ffffff; }
    .generic-mobile-menu__list li.current_page_item > a {
      color: #333; }
    .generic-mobile-menu__list li.page_item_has_children {
      background: #eaefff; }
      .generic-mobile-menu__list li.page_item_has_children > span {
        background: url("../img/hide.svg") no-repeat center center;
        -webkit-background-size: 30px 30px;
                background-size: 30px;
        border-left: 2px solid #939598;
        height: 64px;
        position: absolute;
        right: 0;
        top: 0;
        width: 60px; }
      .generic-mobile-menu__list li.page_item_has_children ul {
        display: none;
        padding: 0 20px; }
        .generic-mobile-menu__list li.page_item_has_children ul li {
          border-top: 1px solid #ffffff; }
          .generic-mobile-menu__list li.page_item_has_children ul li a {
            color: #666;
            padding: 20px 0 20px 10px; }
      .generic-mobile-menu__list li.page_item_has_children.closed {
        background: #f4f4f4; }
        .generic-mobile-menu__list li.page_item_has_children.closed > span {
          background: url("../img/expand.svg") no-repeat center center;
          -webkit-background-size: 30px 30px;
                  background-size: 30px; }
      .generic-mobile-menu__list li.page_item_has_children > a {
        display: inline-block; }
    .generic-mobile-menu__list li a {
      color: #3d96ca;
      display: block;
      padding: 20px;
      text-decoration: none; }

.generic-sidebar {
  display: none;
  padding: 7.8125rem 0 0 3.125rem; }
  @media print, screen and (min-width: 64em) {
    .generic-sidebar {
      display: block; } }
  .generic-sidebar h4 {
    border-bottom: 2px solid #939598;
    margin: 20px 0 30px;
    padding-bottom: 5px; }
    .generic-sidebar h4 a {
      color: inherit;
      text-decoration: none; }

.generic-sidebar__list {
  margin: 0;
  padding-left: 15px; }
  .generic-sidebar__list li {
    list-style: none;
    margin: 5px 0;
    position: relative; }
    .generic-sidebar__list li.current_page_item > a {
      color: #333; }
    .generic-sidebar__list li.current_page_item.page_item_has_children:after, .generic-sidebar__list li.current_page_parent.page_item_has_children:after {
      background: url("../img/hide.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px;
      height: 44px; }
    .generic-sidebar__list li.current_page_item.page_item_has_children ul, .generic-sidebar__list li.current_page_parent.page_item_has_children ul {
      display: block; }
    .generic-sidebar__list li:after {
      background: url("../img/arrow-right-blue.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px;
      content: '';
      height: 100%;
      pointer-events: none;
      position: absolute;
      right: 0;
      top: 0;
      width: 20px; }
    .generic-sidebar__list li a {
      font-size: 1.125rem;
      font-family: "Circular Std Book", sans-serif;
      font-weight: 400;
      letter-spacing: -0.01em;
      line-height: 1.5rem;
      margin: 0;
      color: #3d96ca;
      display: block;
      padding: 10px 20px 10px 0;
      text-decoration: none; }
      .generic-sidebar__list li a:hover {
        text-decoration: underline; }
    .generic-sidebar__list li ul {
      display: none;
      padding-left: 15px; }
      .generic-sidebar__list li ul li a {
        color: #666;
        padding-right: 20px; }
      .generic-sidebar__list li ul li.current_page_item > a {
        color: #666;
        text-decoration: underline; }

.google-ad {
  border-bottom: 1px solid #c9cacb;
  border-top: 1px solid #c9cacb;
  clear: both;
  margin: 14px;
  padding: 14px 0;
  position: relative;
  text-align: center;
  white-space: nowrap; }
  @media print, screen and (min-width: 40em) {
    .google-ad {
      margin: 28px;
      padding: 28px 0; } }
  .google-ad:before {
    background: #fff;
    color: #959595;
    content: 'Partner Advertisement';
    left: 50%;
    padding: 0 10px;
    position: absolute;
    top: 0;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    white-space: nowrap; }

@media print, screen and (min-width: 64em) {
  .featured-facilities__highlight + .google-ad {
    position: relative;
    top: -100px; } }

#memberships .google-ad {
  margin-top: 30px; }
  #memberships .google-ad:before {
    background-color: #eaefff; }

.membership-benefits .google-ad:before {
  background-color: #f4f4f4; }

.article__content .google-ad {
  margin-left: 0;
  margin-right: 0; }
  @media print, screen and (min-width: 40em) {
    .article__content .google-ad {
      margin-left: -50px;
      margin-right: -50px; } }

.benefits__list .google-ad {
  width: 100%; }

.contenthub-categories .ad {
  padding-bottom: 0; }
  .contenthub-categories .ad .contenthub-categories__inner .google-ad {
    margin-left: 0;
    margin-right: 0; }

.contenthub-featured__inner .google-ad {
  margin-left: 0;
  margin-right: 0; }

.grid-helper {
  display: none;
  height: 100%;
  position: fixed;
  top: 0;
  width: 100%; }
  .grid-helper__inner {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto;
    height: 100%; }
    .grid-helper__inner::before, .grid-helper__inner::after {
      display: table;
      content: ' '; }
    .grid-helper__inner::after {
      clear: both; }
  .grid-helper__col {
    width: 8.33333%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    height: 100%; }
    @media print, screen and (min-width: 40em) {
      .grid-helper__col {
        padding-right: 0.375rem;
        padding-left: 0.375rem; } }
    .grid-helper__col, .grid-helper__col:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .grid-helper__col:last-child:not(:first-child) {
      float: right; }
    .grid-helper__col p {
      background: #00f;
      height: 100%;
      margin: 0;
      opacity: .4;
      padding: 0; }

.header {
  left: 0;
  position: fixed;
  top: 0;
  -webkit-transition: top .4s;
  transition: top .4s;
  width: 100%;
  z-index: 1000; }
  .header.hidden {
    top: -60px; }
    @media print, screen and (min-width: 40em) {
      .header.hidden {
        top: -72px; } }
    .header.hidden .nav {
      -webkit-box-shadow: none;
              box-shadow: none; }

.hero {
  min-height: 350px;
  position: relative;
  min-height: 200px; }
  .hero::before {
    background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.88)), to(rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.88) 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, rgba(0, 0, 0, 0.88) 0%, rgba(255, 255, 255, 0) 100%);
    bottom: 0;
    content: '';
    display: block;
    left: 0;
    opacity: .8;
    position: absolute;
    right: 0;
    top: 0; }
  @media print, screen and (min-width: 40em) {
    .hero {
      min-height: 300px; } }
  @media print, screen and (min-width: 64em) {
    .hero {
      min-height: 450px; } }

.home-v2-hero.hero::before {
  background: none; }

@media print, screen and (min-width: 40em) {
  .hero--menu {
    padding-top: 60px; } }

.hero__content {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  min-height: 350px;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .hero__content {
      min-height: 530px; } }
  .hero__content h1 {
    font-size: 1.625rem;
    line-height: 1.875rem;
    max-width: 500px; }
    @media print, screen and (min-width: 40em) {
      .hero__content h1 {
        font-size: 2.25rem;
        line-height: 2.625rem; } }
    @media print, screen and (min-width: 64em) {
      .hero__content h1 {
        font-size: 2.875rem;
        line-height: 3.25rem; } }
  .hero__content .hero__subtitle {
    max-width: 400px; }
  .hero__content .hero__link {
    color: #fff;
    display: block;
    margin-top: 15px;
    max-width: 400px; }

.home-v2-hero {
  position: relative; }
  .home-v2-hero .hero__content h1 {
    margin-bottom: 10px;
    max-width: 600px; }
    @media print, screen and (min-width: 40em) {
      .home-v2-hero .hero__content h1 {
        font-size: 3.125rem;
        line-height: 3.75rem;
        margin-bottom: 15px; } }
    @media print, screen and (min-width: 64em) {
      .home-v2-hero .hero__content h1 {
        font-size: 3.75rem;
        line-height: 4.375rem;
        margin-bottom: 15px; } }
    @media screen and (min-width: 81.25em) {
      .home-v2-hero .hero__content h1 {
        font-size: 4.375rem;
        line-height: 5rem;
        margin-bottom: 15px; } }
    .home-v2-hero .hero__content h1 span {
      display: block; }
  .home-v2-hero .hero__subtitle {
    max-width: 400px;
    font-size: 1.0625rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0; }
    @media print, screen and (min-width: 40em) {
      .home-v2-hero .hero__subtitle {
        font-size: 1.25rem;
        font-family: "Circular Std Book", sans-serif;
        font-weight: 400;
        letter-spacing: -0.01em;
        line-height: 1.6875rem;
        margin: 0; } }
    @media print, screen and (min-width: 64em) {
      .home-v2-hero .hero__subtitle {
        max-width: 600px;
        font-size: 1.375rem;
        font-family: "Circular Std Book", sans-serif;
        font-weight: 400;
        letter-spacing: -0.01em;
        line-height: 1.875rem;
        margin: 0; } }
  @media print, screen and (min-width: 40em) {
    .home-v2-hero .hero__content-inner {
      padding-top: 40px; } }
  @media print, screen and (min-width: 64em) {
    .home-v2-hero .hero__content-inner {
      padding-top: 10px; } }
  .home-v2-hero .full-bg {
    bottom: 0;
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -100; }
    .home-v2-hero .full-bg .video-js {
      height: 100%;
      left: 0;
      pointer-events: none;
      position: absolute;
      top: 0;
      width: 100%; }
      .home-v2-hero .full-bg .video-js .vjs-control-bar {
        display: none; }
    .home-v2-hero .full-bg .vjs-tech {
      object-fit: cover; }

.hero-image {
  background: #e5e5e5 no-repeat center center;
  -webkit-background-size: cover;
          background-size: cover; }

@media print, screen and (min-width: 40em) {
  .hero-mobile {
    display: none; } }

.hero-desktop {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .hero-desktop {
      display: block; } }

.hero__content-inner {
  padding: 40px 20px; }
  @media print, screen and (min-width: 40em) {
    .hero__content-inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%;
      padding-bottom: 50px;
      padding-top: 50px; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .hero__content-inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 40em) {
      .hero__content-inner, .hero__content-inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .hero__content-inner:last-child:not(:first-child) {
        float: right; } }

.hero__content-image {
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  border: 1px solid #c9cacb;
  border-radius: 50%;
  height: 150px;
  margin: 25px auto 0;
  width: 150px; }
  @media print, screen and (min-width: 40em) {
    .hero__content-image {
      margin-top: 40px; } }
  .hero__content-image.hero__content-image--partner {
    border: 0;
    border-radius: 0; }

.hero__subtitle {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  margin-top: 15px; }
  .hero__subtitle:not(:last-child) {
    margin-bottom: 15px; }
    @media print, screen and (min-width: 40em) {
      .hero__subtitle:not(:last-child) {
        margin-bottom: 30px; } }

.hero__image {
  height: 200px;
  position: relative;
  width: 100%; }
  .hero__image.hidden {
    display: none; }
  @media print, screen and (min-width: 40em) {
    .hero__image {
      height: 300px; } }
  @media print, screen and (min-width: 64em) {
    .hero__image {
      height: 350px; } }
  @media screen and (min-width: 81.25em) {
    .hero__image {
      height: 450px; } }

@media print, screen and (min-width: 64em) {
  .hero__image--split {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    z-index: 1; } }

a.hero-image-link {
  display: block;
  height: 100%;
  z-index: 2;
  width: 100%;
  position: absolute;
  top: 0; }

.slick-slider {
  -moz-user-select: none;
  -ms-touch-action: pan-y;
  -ms-user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  touch-action: pan-y;
  user-select: none; }
  .slick-slider .slick-track,
  .slick-slider .slick-list {
    -ms-transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

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

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

.slick-hidden {
  display: none; }

.scrollbox__carousel {
  display: none;
  overflow: hidden;
  width: 100%; }
  .scrollbox__carousel::before, .scrollbox__carousel::after {
    display: table;
    content: ' '; }
  .scrollbox__carousel::after {
    clear: both; }
  .scrollbox__carousel img {
    display: none; }
  .scrollbox__carousel .slick-current img {
    display: block; }
  .scrollbox__carousel.slick-initialized {
    display: block; }

.home-v2-callout {
  background-color: #f7f9fa;
  margin-bottom: 0;
  padding: 20px 0; }
  .home-v2-callout a.hero-image-link {
    display: block;
    height: 100%;
    z-index: 2;
    width: 100%;
    position: absolute;
    top: 0; }
  .home-v2-callout::before, .home-v2-callout::after {
    display: table;
    content: ' '; }
  .home-v2-callout::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .home-v2-callout {
      padding: 50px 0; } }

.home-v2-callout__inner {
  padding: 0 20px;
  text-align: center;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .home-v2-callout__inner {
      width: 100%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .home-v2-callout__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .home-v2-callout__inner, .home-v2-callout__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .home-v2-callout__inner:last-child:not(:first-child) {
        float: right; } }
  .home-v2-callout__inner h2 {
    font-size: 1.65rem; }
    @media print, screen and (min-width: 40em) {
      .home-v2-callout__inner h2 {
        font-size: 2.25rem; } }
  .home-v2-callout__inner p {
    font-size: 1rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    line-height: 1.375rem;
    margin: 20px auto 30px;
    max-width: 750px; }
    @media print, screen and (min-width: 40em) {
      .home-v2-callout__inner p {
        font-size: 1.125rem;
        line-height: 1.8125rem; } }
    @media print, screen and (min-width: 64em) {
      .home-v2-callout__inner p {
        font-size: 1.375rem;
        line-height: 2rem; } }
    .home-v2-callout__inner p a {
      color: #3d96ca;
      text-decoration: none; }
      .home-v2-callout__inner p a:hover {
        text-decoration: underline; }

.home-v2-callout__articles::before, .home-v2-callout__articles::after {
  display: table;
  content: ' '; }

.home-v2-callout__articles::after {
  clear: both; }

@media print, screen and (min-width: 40em) {
  .home-v2-callout__articles {
    margin-top: 20px; } }

.home-v2-callout__article {
  float: left;
  margin: 20px 0;
  text-align: left;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .home-v2-callout__article {
      padding: 0 6px;
      width: 33.33%; }
      .home-v2-callout__article:first-of-type {
        padding-left: 0;
        padding-right: 12px; }
      .home-v2-callout__article:last-of-type {
        padding-left: 12px;
        padding-right: 0; } }

.home-v2-callout__article-inner {
  background-color: #fff;
  display: inline-block; }

.home-v2-callout__article-image {
  -webkit-box-shadow: inset 0 -2px 10px rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -2px 10px rgba(0, 0, 0, 0.15);
  float: left;
  height: 0;
  padding-bottom: 56.5%;
  width: 100%;
  position: relative; }

.home-v2-callout__article-meta {
  float: left;
  padding: 20px;
  width: 100%; }
  .home-v2-callout__article-meta .highlight-cta {
    background-color: #000;
    border-color: #000;
    color: #fff;
    display: block;
    font-size: 1rem;
    margin: 25px auto 20px;
    max-width: -webkit-fit-content;
    max-width: fit-content;
    text-decoration: none;
    width: auto; }
    .home-v2-callout__article-meta .highlight-cta.red {
      background-color: #ff080d;
      border-color: #ff080d;
      color: #fff; }
    .home-v2-callout__article-meta .highlight-cta:hover {
      background-color: #fff;
      border-color: #ff080d;
      color: #ff080d; }
    @media print, screen and (min-width: 64em) {
      .home-v2-callout__article-meta .highlight-cta.highlight-cta--half {
        max-width: 80%; } }
  .home-v2-callout__article-meta .secondary-cta {
    color: #3d96ca;
    display: block;
    margin: 10px 0;
    text-align: center;
    text-decoration: none;
    width: 100%; }
    .home-v2-callout__article-meta .secondary-cta:hover {
      text-decoration: underline; }

.home-v2-callout__article-title {
  font-size: 1.0625rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #333;
  font-family: "Circular Std Bold", sans-serif;
  margin: 6px 0;
  text-align: center;
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .home-v2-callout__article-title {
      font-size: 1.25rem;
      line-height: 1.875rem;
      margin: 0; } }
  @media print, screen and (min-width: 64em) {
    .home-v2-callout__article-title {
      width: 100%; } }
  .home-v2-callout__article-title .small {
    font-size: 14px; }
  .home-v2-callout__article-title a {
    color: inherit;
    text-decoration: none; }
    .home-v2-callout__article-title a:hover {
      text-decoration: underline; }

.home-v2-callout__article-desc {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.375rem;
  margin: 0;
  color: #666;
  margin: 10px 0;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .home-v2-callout__article-desc {
      font-size: 1rem;
      line-height: 1.5rem; } }

.home-v2-content-block {
  clear: both;
  padding: 45px 20px 50px;
  text-align: center; }
  .home-v2-content-block::before, .home-v2-content-block::after {
    display: table;
    content: ' '; }
  .home-v2-content-block::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .home-v2-content-block {
      padding: 50px 20px 60px; } }
  @media print, screen and (min-width: 64em) {
    .home-v2-content-block {
      padding: 80px 20px 90px; } }
  .home-v2-content-block p {
    font-size: 1rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    line-height: 1.375rem;
    margin: 20px auto 30px;
    max-width: 750px; }
    @media print, screen and (min-width: 40em) {
      .home-v2-content-block p {
        font-size: 1.125rem;
        line-height: 1.8125rem; } }
    @media print, screen and (min-width: 64em) {
      .home-v2-content-block p {
        font-size: 1.375rem;
        line-height: 2rem; } }
    .home-v2-content-block p a {
      color: #3d96ca;
      text-decoration: none; }
      .home-v2-content-block p a:hover {
        text-decoration: underline; }
  .home-v2-content-block h2 {
    font-size: 1.65rem; }
    @media print, screen and (min-width: 40em) {
      .home-v2-content-block h2 {
        font-size: 2.25rem; } }
  .home-v2-content-block .highlight-cta {
    background-color: #fff;
    border-color: #ff080d;
    color: #ff080d;
    display: inline-block;
    font-size: 1rem;
    margin-bottom: 15px;
    max-width: 80%;
    text-decoration: none;
    width: auto; }
    .home-v2-content-block .highlight-cta:hover {
      background-color: #ff080d;
      border-color: #ff080d;
      color: #fff; }
    @media print, screen and (min-width: 64em) {
      .home-v2-content-block .highlight-cta {
        width: auto; }
        .home-v2-content-block .highlight-cta.highlight-cta--half {
          margin: 0 auto;
          max-width: 60%; } }
  .home-v2-content-block .app-store-buttons a {
    display: block;
    margin-bottom: 20px; }
    @media print, screen and (min-width: 40em) {
      .home-v2-content-block .app-store-buttons a {
        display: inline-block; } }
  .home-v2-content-block .app-store-buttons img {
    width: 180px; }
    @media print, screen and (min-width: 40em) {
      .home-v2-content-block .app-store-buttons img {
        width: 200px; }
        .home-v2-content-block .app-store-buttons img:first-of-type {
          margin-right: 30px; } }

.home-v2-latest {
  background-color: #f7f9fa;
  clear: both;
  padding: 30px 0; }
  @media print, screen and (min-width: 40em) {
    .home-v2-latest {
      padding: 40px 0; } }
  @media print, screen and (min-width: 64em) {
    .home-v2-latest {
      padding: 50px 0; } }
  .home-v2-latest .post-list {
    border-bottom: 0;
    margin: 0;
    padding: 0; }

.home-v2-latest__inner {
  padding: 0 12px;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .home-v2-latest__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .home-v2-latest__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .home-v2-latest__inner, .home-v2-latest__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .home-v2-latest__inner:last-child:not(:first-child) {
        float: right; } }
  .home-v2-latest__inner h2 {
    font-size: 1.65rem;
    padding-bottom: 20px;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .home-v2-latest__inner h2 {
        font-size: 2.25rem;
        padding-bottom: 30px; } }
  .home-v2-latest__inner .post-list__article-category {
    margin-bottom: 5px; }

.lesson-levels {
  background: #f1f2f4;
  overflow: hidden;
  padding: 30px 0 40px; }
  @media print, screen and (min-width: 40em) {
    .lesson-levels {
      padding: 50px 14px; } }
  @media print, screen and (min-width: 64em) {
    .lesson-levels {
      padding: 60px 14px 50px; } }
  .lesson-levels h2 {
    font-size: 1.5rem;
    line-height: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .lesson-levels h2 {
        font-size: 2.25rem;
        line-height: 2.625rem; } }

.lesson-levels__intro {
  margin: auto;
  max-width: 900px;
  padding: 0 20px;
  text-align: center; }
  .lesson-levels__intro.lesson-levels__intro--centre {
    max-width: 570px; }
  .lesson-levels__intro p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    color: #666;
    margin: 15px 0 20px;
    padding: 0 30px; }
    @media print, screen and (min-width: 40em) {
      .lesson-levels__intro p {
        font-size: 18px;
        line-height: 24px;
        margin: 20px 0 25px;
        padding: 0; } }
    @media print, screen and (min-width: 64em) {
      .lesson-levels__intro p {
        font-size: 22px;
        line-height: 30px;
        margin: 20px 0 30px; } }
    .lesson-levels__intro p a {
      color: #3d96ca;
      text-decoration: none; }

.lesson-levels__list {
  clear: both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  padding: 10px 0;
  text-align: center; }
  .lesson-levels__list::before, .lesson-levels__list::after {
    display: table;
    content: ' '; }
  .lesson-levels__list::after {
    clear: both; }

.lesson-levels__level {
  background: #fff;
  display: inline-block;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 280px;
          flex: 0 0 280px;
  list-style-type: none;
  margin: 0 12px 24px;
  overflow: hidden;
  padding: 0;
  text-align: left; }

.lesson-levels__image {
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  height: 155px;
  width: 100%; }

.lesson-levels__content {
  padding: 20px; }

.lesson-levels__title {
  font-family: "Circular Std Bold", sans-serif;
  font-size: 20px;
  margin-bottom: 12px;
  min-height: 30px;
  overflow: hidden; }

.lesson-levels__desc {
  border-top: 1px solid #7e8787;
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 16px;
  min-height: 89px;
  overflow: hidden;
  padding: 12px 0 0; }

.cta-module a.cta-module__secondary, .centre-info__link, .contact-main__loggedin-link, .contact--feedback .contact-main__loggedin-link, .freeswim .contact-main__loggedin-link, .generic-main__link, .lesson-levels__link, .link--external, .kiosk-menu__link {
  color: #3d96ca;
  cursor: pointer;
  display: inline-block;
  position: relative;
  text-align: left;
  text-decoration: none; }
  .cta-module a.cta-module__secondary:hover, .centre-info__link:hover, .contact-main__loggedin-link:hover, .generic-main__link:hover, .lesson-levels__link:hover, .link--external:hover, .kiosk-menu__link:hover {
    text-decoration: underline; }

.link--external {
  color: #3d96ca;
  padding-right: 27px; }
  .link--external:after {
    background: url("../img/external-link.svg") no-repeat center center;
    -webkit-background-size: 32px 32px;
            background-size: 32px;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 20px; }

.loader {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(255, 255, 255, 0.8);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  z-index: 100; }

.loader__spinner {
  border-radius: 50%;
  font-size: 80px;
  height: 1em;
  list-style: none;
  margin: 100px auto;
  position: relative;
  width: 1em; }
  .loader__spinner.loader__spinner--small {
    font-size: 28px;
    height: 35px;
    margin: 0;
    position: absolute; }
  .loader__spinner li {
    border-radius: 50%;
    height: .2em;
    position: absolute;
    width: .2em; }
    .loader__spinner li:nth-child(1) {
      -webkit-animation: rota 1.13s linear infinite, opa 3.67s ease-in-out infinite alternate;
              animation: rota 1.13s linear infinite, opa 3.67s ease-in-out infinite alternate;
      background: #ff080d;
      left: 50%;
      margin: 0 0 0 -.1em;
      top: 0;
      -webkit-transform-origin: 50% 250%;
          -ms-transform-origin: 50% 250%;
              transform-origin: 50% 250%; }
    .loader__spinner li:nth-child(2) {
      -webkit-animation: rota 1.86s linear infinite, opa 4.29s ease-in-out infinite alternate;
              animation: rota 1.86s linear infinite, opa 4.29s ease-in-out infinite alternate;
      background: #000;
      margin: -.1em 0 0;
      right: 0;
      top: 50%;
      -webkit-transform-origin: -150% 50%;
          -ms-transform-origin: -150% 50%;
              transform-origin: -150% 50%; }
    .loader__spinner li:nth-child(3) {
      -webkit-animation: rota 1.45s linear infinite, opa 5.12s ease-in-out infinite alternate;
              animation: rota 1.45s linear infinite, opa 5.12s ease-in-out infinite alternate;
      background: #666;
      bottom: 0;
      left: 50%;
      margin: 0 0 0 -.1em;
      -webkit-transform-origin: 50% -150%;
          -ms-transform-origin: 50% -150%;
              transform-origin: 50% -150%; }
    .loader__spinner li:nth-child(4) {
      -webkit-animation: rota 1.72s linear infinite, opa 5.25s ease-in-out infinite alternate;
              animation: rota 1.72s linear infinite, opa 5.25s ease-in-out infinite alternate;
      background: #ae4bd0;
      left: 0;
      margin: -.1em 0 0;
      top: 50%;
      -webkit-transform-origin: 250% 50%;
          -ms-transform-origin: 250% 50%;
              transform-origin: 250% 50%; }

@-webkit-keyframes rota {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes rota {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes opa {
  12% {
    opacity: .8; }
  19.5% {
    opacity: .88; }
  37.2% {
    opacity: .64; }
  40.5% {
    opacity: .52; }
  52.7% {
    opacity: .69; }
  60.2% {
    opacity: .6; }
  66.6% {
    opacity: .52; }
  70% {
    opacity: .63; }
  79.9% {
    opacity: .6; }
  84.2% {
    opacity: .75; }
  91% {
    opacity: .87; } }

@keyframes opa {
  12% {
    opacity: .8; }
  19.5% {
    opacity: .88; }
  37.2% {
    opacity: .64; }
  40.5% {
    opacity: .52; }
  52.7% {
    opacity: .69; }
  60.2% {
    opacity: .6; }
  66.6% {
    opacity: .52; }
  70% {
    opacity: .63; }
  79.9% {
    opacity: .6; }
  84.2% {
    opacity: .75; }
  91% {
    opacity: .87; } }

.location-finder {
  padding-bottom: 20px;
  position: relative;
  text-align: left; }
  @media print, screen and (min-width: 40em) {
    .location-finder {
      margin-top: 30px; } }
  @media print, screen and (min-width: 64em) {
    .location-finder {
      padding-bottom: 35px; } }
  .location-finder:after {
    background: #e4e4e5;
    bottom: 0;
    content: '';
    height: 1px;
    left: 0;
    position: absolute;
    width: 100%; }
    @media print, screen and (min-width: 64em) {
      .location-finder:after {
        width: calc(100% + 36px); } }
  @media print, screen and (min-width: 40em) {
    .location-finder .input__wrapper .form__validity-icon {
      left: 515px; }
    .location-finder .input__wrapper input[type='text'] {
      max-width: 500px; } }
  .location-finder .input__wrapper .loader {
    left: 89%;
    position: absolute;
    top: 4px; }
    .location-finder .input__wrapper .loader .loader__spinner {
      background: #f7f9ff; }
    @media print, screen and (min-width: 40em) {
      .location-finder .input__wrapper .loader {
        left: 510px;
        top: 8px; }
        .location-finder .input__wrapper .loader .loader__spinner {
          background: none; } }
    @media print, screen and (min-width: 64em) {
      .location-finder .input__wrapper .loader {
        left: 410px; } }

.location-finder__title {
  cursor: pointer;
  display: none;
  position: relative; }
  .location-finder__title:after {
    background: url("../img/expand.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px;
    content: '';
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 35px; }
  .location-finder__title.expanded:after {
    background: url("../img/hide.svg") no-repeat center center;
    -webkit-background-size: 30px 30px;
            background-size: 30px; }
  .location-finder__title.visible {
    display: block; }
  @media print, screen and (min-width: 40em) {
    .location-finder__title.visible {
      display: none; } }

.location-finder__filter {
  border-bottom: 2px solid transparent;
  display: none;
  margin-top: 15px;
  max-width: 425px;
  padding-bottom: 8px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .location-finder__filter {
      margin-left: 20px; } }
  .location-finder__filter span:before {
    background: url("../img/show-more-red.svg") no-repeat left center;
    -webkit-background-size: 26px 26px;
            background-size: 26px;
    content: '';
    cursor: pointer;
    height: 20px;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-transition: all .4s;
    transition: all .4s;
    width: 30px; }
  .location-finder__filter.active {
    border-bottom: 2px solid #939598; }
    .location-finder__filter.active span:before {
      -webkit-background-size: 28px 28px;
              background-size: 28px;
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg); }
    .location-finder__filter.active .location-finder__button {
      display: none; }
    .location-finder__filter.active .input__filter {
      display: block;
      width: calc(100% - 35px); }

.input__filter {
  display: none;
  height: 22px;
  margin-left: 35px; }

.location-finder__button {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #ff080d;
  cursor: pointer;
  display: block;
  padding-left: 35px;
  position: relative;
  text-align: left; }
  @media print, screen and (min-width: 40em) {
    .location-finder__button {
      height: 22px; } }

.location-finder__button-location {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #3d96ca;
  display: block;
  margin-top: 20px;
  text-align: left; }
  @media print, screen and (min-width: 40em) {
    .location-finder__button-location {
      margin-left: 20px; } }

.location-finder__button--active:before {
  -webkit-animation: rotating .5s linear infinite;
          animation: rotating .5s linear infinite; }

.location-finder__button--active,
.location-finder__button--complete {
  color: #939598;
  font-style: italic; }

@-webkit-keyframes rotating {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes rotating {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.map-toggle {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .map-toggle {
      display: inline-block;
      vertical-align: middle; } }

.map-toggle__text {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666;
  display: inline-block;
  padding: 0 5px 0 25px;
  position: relative;
  vertical-align: middle; }
  .map-toggle__text:before {
    background: url("../img/location.png") no-repeat center center;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: -1px;
    width: 25px; }

.map-toggle__switch {
  display: inline-block;
  height: 30px;
  position: relative;
  vertical-align: middle;
  width: 64px; }
  .map-toggle__switch input[type='checkbox'] {
    display: none; }
    .map-toggle__switch input[type='checkbox']:checked + label {
      background-color: #b9c700; }
      .map-toggle__switch input[type='checkbox']:checked + label:before {
        -webkit-transform: translateX(32px);
            -ms-transform: translateX(32px);
                transform: translateX(32px); }
      .map-toggle__switch input[type='checkbox']:checked + label:after {
        color: #ffffff;
        content: 'On';
        left: 7px; }
    .map-toggle__switch input[type='checkbox'] + label {
      background-color: #f4f4f4;
      border: 2px solid #666;
      border-radius: 34px;
      bottom: 0;
      cursor: pointer;
      left: 0;
      margin: 0;
      padding: 0;
      position: absolute;
      right: 0;
      top: 0;
      -webkit-transition: .4s;
      transition: .4s; }
      .map-toggle__switch input[type='checkbox'] + label:before {
        background-color: #ffffff;
        border: 1px solid #939598;
        border-radius: 50%;
        bottom: 4px;
        content: '';
        height: 28px;
        left: 0;
        position: absolute;
        top: -1px;
        -webkit-transition: .4s;
        transition: .4s;
        width: 28px;
        z-index: 1; }
      .map-toggle__switch input[type='checkbox'] + label:after {
        color: #666;
        content: 'Off';
        display: inline;
        font-size: 13px;
        font-weight: bold;
        height: 100%;
        margin-top: 4px;
        pointer-events: none;
        position: absolute;
        right: 5px;
        text-transform: uppercase;
        top: 0;
        z-index: 0; }

.modal,
.modal__bg {
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 1000; }
  .modal::before, .modal::after,
  .modal__bg::before,
  .modal__bg::after {
    display: table;
    content: ' '; }
  .modal::after,
  .modal__bg::after {
    clear: both; }

.modal__bg {
  background: rgba(0, 0, 0, 0.7); }

.modal__wrapper {
  font-size: 1rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  background-color: #f4f4f4;
  color: #333;
  left: 50%;
  margin: auto;
  max-height: 75%;
  max-width: 680px;
  overflow: auto;
  padding: 25px 20px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .modal__wrapper {
      padding: 40px 30px; } }

.modal__close {
  background-color: transparent;
  cursor: pointer;
  float: right;
  height: 16px;
  position: relative;
  right: -6px;
  top: -16px;
  width: 16px; }
  .modal__close:hover, .modal__close:focus {
    color: #333; }
  .modal__close:before {
    background: url("../img/close.svg") no-repeat center center;
    -webkit-background-size: 15px 15px;
            background-size: 15px;
    content: '';
    height: 16px;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transition-duration: .4s;
            transition-duration: .4s;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    width: 16px; }

.modal__header::before, .modal__header::after {
  display: table;
  content: ' '; }

.modal__header::after {
  clear: both; }

.modal__header h2 {
  margin-bottom: 10px; }

.modal__header p {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #666;
  margin: 10px 0 20px; }
  @media print, screen and (min-width: 40em) {
    .modal__header p {
      font-size: 1rem;
      line-height: 1.5rem; } }
  .modal__header p a {
    color: #3d96ca;
    text-decoration: none; }
    .modal__header p a:hover {
      text-decoration: underline; }

.modal__content::before, .modal__content::after {
  display: table;
  content: ' '; }

.modal__content::after {
  clear: both; }

.modal__content p {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666;
  margin-top: 10px; }

.modal__content ul {
  border-bottom: 1px solid #ffffff;
  list-style: none;
  margin: 0 0 15px;
  padding: 0 0 20px; }
  .modal__content ul li {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    color: #666;
    margin: 5px 0;
    padding-left: 15px;
    position: relative; }
    .modal__content ul li:before {
      background: #ff080d;
      border-radius: 50%;
      content: '';
      height: 6px;
      left: 0;
      position: absolute;
      top: 6px;
      width: 6px; }
    .modal__content ul li span {
      text-transform: capitalize; }

.modal__times {
  margin-bottom: 15px; }

.modal__day {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666;
  margin: 2px 0; }
  .modal__day span {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 150px); }
    @media print, screen and (min-width: 40em) {
      .modal__day span {
        width: calc(100% - 200px); } }
    .modal__day span.modal__day-name {
      width: 100px; }
      @media print, screen and (min-width: 40em) {
        .modal__day span.modal__day-name {
          width: 150px; } }

.modal__link {
  color: #3d96ca;
  display: inline-block;
  margin-bottom: 20px; }
  @media print, screen and (min-width: 40em) {
    .modal__link {
      margin-left: 10px; } }

.modal__link--button {
  background-color: #fff;
  border-color: #ff080d;
  color: #ff080d;
  display: inline-block;
  font-size: 0.875rem;
  margin: 5px 0 10px;
  padding: 6px 10px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 100%; }
  .modal__link--button:hover {
    background-color: #ff080d;
    border-color: #fff;
    color: #fff; }
  .modal__link--button:last-child {
    margin-bottom: 30px; }
  @media print, screen and (min-width: 40em) {
    .modal__link--button {
      margin-bottom: 30px;
      padding: 6px 20px;
      width: auto; } }

.modal__price-list {
  display: table; }

.modal__price-header {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .modal__price-header {
      display: table-row; } }
  .modal__price-header.modal__price-header--mobile {
    display: table-row; }
    @media print, screen and (min-width: 40em) {
      .modal__price-header.modal__price-header--mobile {
        display: none; } }
  .modal__price-header .modal__price-cell {
    border-bottom: 1px solid #666;
    font-weight: normal;
    padding: 10px 0; }
    @media print, screen and (min-width: 40em) {
      .modal__price-header .modal__price-cell {
        padding: 10px 10px 10px 0; } }

.modal__price-row {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .modal__price-row {
      display: table-row; } }
  .modal__price-row.modal__price-row--mobile {
    display: table-row; }
    @media print, screen and (min-width: 40em) {
      .modal__price-row.modal__price-row--mobile {
        display: none; } }

.modal__price-cell {
  font-size: 0.875rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.1875rem;
  margin: 0;
  border-bottom: 1px solid #c9cacb;
  color: #666;
  display: table-cell;
  font-weight: bold;
  padding: 15px 0;
  text-transform: uppercase;
  width: 16%; }
  @media print, screen and (min-width: 40em) {
    .modal__price-cell {
      font-size: 0.9375rem;
      line-height: 1.25rem;
      padding: 20px 10px 20px 0; } }
  .modal__price-cell.modal__price-cell--first {
    font-weight: normal;
    width: 12%; }
    @media print, screen and (min-width: 40em) {
      .modal__price-cell.modal__price-cell--first {
        width: 17%; } }

.modal__terms a {
  color: #3d96ca;
  text-decoration: none; }
  .modal__terms a:hover {
    text-decoration: underline; }

.membership-benefits {
  background-color: #f4f4f4;
  clear: both;
  padding: 20px 0; }
  @media print, screen and (min-width: 64em) {
    .membership-benefits {
      padding: 50px 0 30px; } }

.membership-benefits__inner {
  padding: 0 20px;
  width: 100%; }
  .membership-benefits__inner::before, .membership-benefits__inner::after {
    display: table;
    content: ' '; }
  .membership-benefits__inner::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .membership-benefits__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .membership-benefits__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .membership-benefits__inner, .membership-benefits__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .membership-benefits__inner:last-child:not(:first-child) {
        float: right; } }
  .membership-benefits__inner h2 {
    color: #333;
    display: block;
    padding: 10px 0;
    position: relative; }
    .membership-benefits__inner h2:after {
      background-color: #c9cacb;
      bottom: 0;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      width: 100%; }
      @media print, screen and (min-width: 64em) {
        .membership-benefits__inner h2:after {
          width: 90%; } }

@media print, screen and (min-width: 64em) {
  .membership-benefits__column {
    width: 50%;
    float: left;
    padding-right: 0.25rem;
    padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .membership-benefits__column {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }

@media print, screen and (min-width: 64em) {
    .membership-benefits__column, .membership-benefits__column:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .membership-benefits__column:last-child:not(:first-child) {
      float: right; } }

.membership-benefits__column .post-list {
  margin-bottom: 10px; }

.membership-benefits__column .post-list__article {
  margin-top: 15px; }
  @media print, screen and (min-width: 64em) {
    .membership-benefits__column .post-list__article {
      width: 100%; }
      .membership-benefits__column .post-list__article:nth-of-type(odd) {
        padding-right: 0; }
      .membership-benefits__column .post-list__article:nth-of-type(even) {
        padding-left: 0; } }

.membership-benefits__list {
  margin: 20px 0;
  padding: 0; }
  .membership-benefits__list li {
    color: #666;
    font-size: 0.9375rem;
    line-height: 1.25rem;
    list-style: none;
    margin: 15px 0;
    padding-left: 25px;
    position: relative;
    width: 90%; }
    @media print, screen and (min-width: 40em) {
      .membership-benefits__list li {
        font-size: 1.125rem;
        line-height: 1.5rem;
        padding-left: 35px; } }
    .membership-benefits__list li:before {
      background: url("../img/check.svg") no-repeat center center;
      -webkit-background-size: 27px 27px;
              background-size: 27px;
      content: '';
      height: 1.25rem;
      left: 0;
      position: absolute;
      top: 0;
      width: 15px; }
      @media print, screen and (min-width: 40em) {
        .membership-benefits__list li:before {
          -webkit-background-size: 30px 30px;
                  background-size: 30px; } }

.membership-benefits__button-wrapper {
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .membership-benefits__button-wrapper {
      width: 100%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .membership-benefits__button-wrapper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .membership-benefits__button-wrapper, .membership-benefits__button-wrapper:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .membership-benefits__button-wrapper:last-child:not(:first-child) {
        float: right; } }

.membership-benefits__button {
  display: inline-block;
  margin: 0 auto 30px;
  text-decoration: none; }

.membership-benefits__text {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.125rem;
  margin: 0;
  color: #666;
  margin-top: 20px; }
  @media print, screen and (min-width: 40em) {
    .membership-benefits__text {
      font-size: 1.125rem;
      font-family: "Circular Std Book", sans-serif;
      font-weight: 400;
      letter-spacing: -0.01em;
      line-height: 1.5rem;
      margin: 0;
      margin: 20px 0 10px; } }

.membership-benefits__partner-list {
  margin: 30px 0 0;
  padding: 0; }
  .membership-benefits__partner-list .loader {
    background: none; }

.membership-benefits__item {
  background: #f4f4f4;
  border: 2px solid #e4e4e5;
  list-style-type: none;
  margin: 0 0 25px;
  padding: 0;
  position: relative; }
  .membership-benefits__item::before, .membership-benefits__item::after {
    display: table;
    content: ' '; }
  .membership-benefits__item::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .membership-benefits__item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding: 0; } }

.membership-benefits__offer {
  background: -webkit-gradient(linear, left top, right top, from(#ff080d), to(#ae4bd0));
  background: -webkit-linear-gradient(left, #ff080d, #ae4bd0);
  background: linear-gradient(to right, #ff080d, #ae4bd0);
  border-radius: 50%;
  display: block;
  height: 40px;
  left: -10px;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: -20px;
  width: 40px;
  z-index: 100; }
  .membership-benefits__offer span {
    font-size: 0.875rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 0.875rem;
    margin: 0;
    color: #ffffff;
    display: block;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

.membership-benefits__thumb {
  background-color: #ffffff;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  border-bottom: 2px solid #e4e4e5;
  min-height: 250px;
  padding: 10px;
  position: relative;
  width: 100%; }
  .membership-benefits__thumb img {
    left: 50%;
    max-height: 150px;
    padding: 10px;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  @media print, screen and (min-width: 40em) {
    .membership-benefits__thumb {
      border-bottom: 0;
      min-height: 130px;
      width: 150px; }
      .membership-benefits__thumb img {
        max-height: 130px; } }

.membership-benefits__details {
  padding: 12px 12px 24px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .membership-benefits__details {
      padding: 24px 24px 14px;
      width: calc(100% - 150px); } }

.membership-benefits__name {
  font-size: 18px; }
  @media print, screen and (min-width: 40em) {
    .membership-benefits__name {
      font-size: 24px;
      margin-bottom: 6px; } }

.membership-benefits__description {
  color: #5c5c5c;
  font-size: 13px;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
  margin-top: 5px;
  word-wrap: break-word; }
  @media print, screen and (min-width: 40em) {
    .membership-benefits__description {
      font-size: 15px;
      padding-right: 10px; } }

.membership-bundles {
  background: #f7f9fa;
  overflow: hidden;
  padding: 30px 0 40px; }
  @media print, screen and (min-width: 40em) {
    .membership-bundles {
      padding: 50px 14px; } }
  @media print, screen and (min-width: 64em) {
    .membership-bundles {
      padding: 60px 14px 70px; } }
  .membership-bundles h2 {
    font-size: 2.25rem;
    line-height: 2.625rem; }
  .membership-bundles h3 {
    font-size: 1.75rem;
    letter-spacing: -.03em;
    line-height: 2.25rem; }

.membership-bundles__intro {
  margin: auto;
  max-width: 900px;
  padding: 0 20px;
  text-align: center; }
  .membership-bundles__intro.membership-bundles__intro--centre {
    max-width: 570px; }
  .membership-bundles__intro p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    margin: 15px 0 20px;
    padding: 0 30px; }
    @media print, screen and (min-width: 40em) {
      .membership-bundles__intro p {
        font-size: 18px;
        line-height: 24px;
        margin: 20px 0 25px;
        padding: 0; } }
    @media print, screen and (min-width: 64em) {
      .membership-bundles__intro p {
        font-size: 22px;
        line-height: 30px;
        margin: 20px 0 30px; } }
    .membership-bundles__intro p a {
      color: #3d96ca;
      text-decoration: none; }

.membership-bundles__wrapper {
  margin-top: 30px;
  text-align: center; }
  .membership-bundles__wrapper::before, .membership-bundles__wrapper::after {
    display: table;
    content: ' '; }
  .membership-bundles__wrapper::after {
    clear: both; }
  .membership-bundles__wrapper.slick-initialized {
    display: block; }
  @media print, screen and (min-width: 64em) {
    .membership-bundles__wrapper {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 70px; }
      .membership-bundles__wrapper.slick-initialized {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
  .membership-bundles__wrapper .slick-dots {
    margin: 15px 0 0;
    padding: 0;
    text-align: center;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .membership-bundles__wrapper .slick-dots {
        margin: 20px 0 0; } }
    .membership-bundles__wrapper .slick-dots li {
      display: inline-block;
      list-style: none;
      vertical-align: middle; }
      .membership-bundles__wrapper .slick-dots li button {
        background: #666;
        border-radius: 50%;
        font-size: 0;
        height: 8px;
        margin: 4px;
        outline: 0;
        width: 8px; }
        @media print, screen and (min-width: 40em) {
          .membership-bundles__wrapper .slick-dots li button {
            margin: 8px; } }
      .membership-bundles__wrapper .slick-dots li.slick-active button {
        background: #0a0a0a;
        height: 11px;
        width: 11px; }

.membership-bundles__type {
  background: #000;
  border-right: 1px solid #ffffff;
  color: #ffffff;
  display: inline-block;
  margin: 20px 0;
  max-width: 450px;
  outline: 0;
  padding: 30px 20px;
  text-align: left;
  -webkit-transition: all .4s;
  transition: all .4s;
  vertical-align: middle;
  width: 86%; }
  @media print, screen and (min-width: 40em) {
    .membership-bundles__type {
      max-width: 550px;
      -webkit-box-flex: 1;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .membership-bundles__type:last-of-type {
    border-right: 0; }
  .membership-bundles__type .membership-bundles__type-price {
    margin-top: 0px; }
  .membership-bundles__type p {
    font-size: 0.875rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.125rem;
    margin: 0;
    margin-top: 20px; }
  .membership-bundles__type .membership-bundles__type-title span {
    font-size: 0.875rem;
    margin-top: 20px; }
  .membership-bundles__type b, .membership-bundles__type span {
    display: block; }

.membership-bundles__inner a {
  color: inherit; }

.membership-bundles__type--popular {
  position: relative; }
  .membership-bundles__type--popular:after {
    background: #ff080d;
    border-radius: 50%;
    content: 'Most popular';
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 1rem;
    height: 88px;
    line-height: 1.125rem;
    padding: 24px 0;
    position: absolute;
    right: -20px;
    text-align: center;
    text-transform: uppercase;
    top: -45px;
    width: 88px;
    z-index: 9; }
    @media print, screen and (min-width: 64em) {
      .membership-bundles__type--popular:after {
        font-size: 1.125rem;
        height: 100px;
        line-height: 1.25rem;
        padding: 27px 0;
        right: 50%;
        top: -70px;
        width: 100px;
        -webkit-transform: translateX(50%);
            -ms-transform: translateX(50%);
                transform: translateX(50%); } }

@media print, screen and (min-width: 64em) {
  .membership-bundles__type--priority {
    margin: 0;
    padding-top: 35px; }
    .membership-bundles__type--priority.membership-bundles__type--centre {
      padding: 40px 20px 30px; }
    .membership-bundles__type--priority .membership-bundles__type-price {
      font-size: 3.75rem; }
    .membership-bundles__type--priority h4 {
      font-size: 1.5rem;
      width: 85%; } }

.membership-bundles__type--priority .membership-bundles__type-prices {
  margin-top: 15px; }
  .membership-bundles__type--priority .membership-bundles__type-prices .membership-bundles__type-time {
    margin: 10px 0 15px; }

.membership-bundles__type--priority p {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  margin-top: 20px; }

.membership-bundles__type--special-offer {
  background-color: #fff;
  border: 1px solid #fff;
  font-weight: bold;
  margin-top: 20px;
  text-align: center; }

.membership-bundles__type--special-offer-head {
  display: block;
  background-color: #fff;
  color: #ff080d;
  text-transform: uppercase;
  letter-spacing: 1px; }

.membership-bundles__type--special-offer-body {
  font-size: 1.1em;
  padding: 10px;
  background-color: #262626; }

.membership-bundles__type--pair-middle {
  margin-top: 20px; }

.membership-bundles__type--bundle-centred {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.membership-bundles__type--bundle {
  background: #ffffff;
  color: #0a0a0a;
  padding: 40px 20px;
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .membership-bundles__type--bundle {
      display: none; } }
  .membership-bundles__type--bundle p {
    font-size: 1rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.375rem;
    margin: 0;
    color: #666;
    margin-top: 15px; }

.membership-bundles__type-prices .membership-bundles__type-prices-container {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  .membership-bundles__type-prices .membership-bundles__type-prices-container::before, .membership-bundles__type-prices .membership-bundles__type-prices-container::after {
    display: table;
    content: ' '; }
  .membership-bundles__type-prices .membership-bundles__type-prices-container::after {
    clear: both; }

.membership-bundles__type-prices .membership-bundles__type-time {
  -ms-flex-item-align: end;
      align-self: flex-end;
  color: #f5f0c6;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  font-size: 15px;
  margin: 10px 0;
  text-transform: uppercase; }

.membership-bundles__type-prices .membership-bundles__type-price {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  line-height: 1em;
  margin: 10px 0;
  text-align: right; }

.membership-bundles__type-price {
  display: block;
  font-family: "Barlow Semi Condensed", sans-serif;
  font-size: 2.25rem;
  font-weight: 300;
  line-height: 1em;
  margin: 20px 0;
  -webkit-transition: font-size .4s;
  transition: font-size .4s; }
  @media print, screen and (min-width: 40em) {
    .membership-bundles__type-price {
      font-size: 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .membership-bundles__type-price {
      font-size: 2.25rem;
      line-height: initial; } }

.membership-bundles__type-link {
  display: inline-block;
  font-size: 1rem;
  left: 50%;
  margin-top: 25px;
  position: relative;
  text-decoration: none;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }
  .membership-bundles__type-link:hover {
    background-color: transparent;
    border-color: #fff;
    color: #fff; }

.membership-bundles__type-secondaryLink {
  color: #fff;
  display: block;
  margin: 15px auto 0px;
  width: 95px; }

.membership-bundles__bundle {
  background: #ffffff;
  color: #0a0a0a;
  margin: auto;
  max-width: 850px;
  padding: 80px 40px 0;
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .membership-bundles__bundle {
      padding: 120px 20px 0; } }
  .membership-bundles__bundle.membership-bundles__bundle--centre {
    max-width: 670px;
    padding-top: 40px; }
  .membership-bundles__bundle h2 {
    position: relative; }
    .membership-bundles__bundle h2:before {
      background: #c9cacb;
      content: '';
      height: 40px;
      left: 50%;
      position: absolute;
      top: -60px;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 1px; }
      @media print, screen and (min-width: 64em) {
        .membership-bundles__bundle h2:before {
          height: 60px;
          top: -90px; } }
  .membership-bundles__bundle p {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.25rem;
    margin: 0;
    color: #666;
    margin-top: 10px; }
    @media print, screen and (min-width: 64em) {
      .membership-bundles__bundle p {
        font-size: 1.125rem;
        line-height: 1.75rem;
        margin-top: 25px; } }
    .membership-bundles__bundle p a {
      color: #3d96ca;
      text-decoration: none; }

.membership-bundles__type-bundle-link {
  background: #ffffff;
  border-color: #ff080d;
  color: #ff080d;
  display: inline-block;
  font-size: 0.9375rem;
  margin-top: 10px;
  text-decoration: none; }
  @media print, screen and (min-width: 64em) {
    .membership-bundles__type-bundle-link {
      font-size: 1rem; } }
  .membership-bundles__type-bundle-link:hover {
    background: #ff080d;
    color: #ffffff; }

.membership-offers {
  margin-top: 100px; }

.membership-offers-nav {
  overflow-x: scroll; }
  @media print, screen and (min-width: 64em) {
    .membership-offers-nav {
      overflow-x: initial; } }

.membership-offers__latest {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  min-width: 800px; }
  @media print, screen and (min-width: 64em) {
    .membership-offers__latest {
      padding: 0 0 0 100px; } }
  .membership-offers__latest:before {
    background: #000;
    border-radius: 50%;
    content: "Latest Offers";
    color: #fff;
    display: none;
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 1rem;
    height: 82px;
    left: 20px;
    line-height: 1.25em;
    padding: 21px 17px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: -4px;
    -webkit-transform: rotate(-20deg);
        -ms-transform: rotate(-20deg);
            transform: rotate(-20deg);
    width: 82px; }
    @media screen and (min-width: 48em) {
      .membership-offers__latest:before {
        top: -4px; } }
    @media print, screen and (min-width: 64em) {
      .membership-offers__latest:before {
        display: block;
        font-size: 1rem;
        height: 82px;
        left: 0;
        line-height: 1.25em;
        padding: 21px 17px;
        top: -4px;
        width: 82px; } }

.membership-offers__title {
  text-align: center;
  margin-bottom: 24px; }
  @media print, screen and (min-width: 64em) {
    .membership-offers__title {
      display: none; } }

.membership-offers-nav {
  background: #f4f4f4;
  position: relative;
  margin-bottom: 4px; }

.membership-offers-nav__option {
  border-bottom: 6px solid transparent;
  cursor: pointer;
  font-size: 0.75rem;
  text-transform: uppercase;
  font-weight: bold;
  padding: 24px 0 18px;
  width: 25%;
  text-align: center; }
  .membership-offers-nav__option:hover {
    color: #e43227;
    text-decoration: underline; }
  .membership-offers-nav__option.active {
    border-bottom: 6px solid #e43227; }

.membership-offer {
  background: -webkit-gradient(linear, left top, right top, from(#9a0406), to(#ff080d));
  background: -webkit-linear-gradient(left, #9a0406, #ff080d);
  background: linear-gradient(to right, #9a0406, #ff080d);
  clear: both;
  color: #ffffff;
  display: none;
  padding: 60px 0 30px;
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .membership-offer {
      padding: 60px 0 40px; } }

.membership-offer--visible {
  display: block; }

.membership-offer__inner {
  padding: 0 20px;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .membership-offer__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .membership-offer__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .membership-offer__inner, .membership-offer__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .membership-offer__inner:last-child:not(:first-child) {
        float: right; } }
  .membership-offer__inner h1 {
    font-size: 2rem;
    margin: auto;
    max-width: 650px;
    padding-bottom: 20px;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .membership-offer__inner h1 {
        font-size: 3.5rem;
        padding-bottom: 30px; } }
    @media print, screen and (min-width: 64em) {
      .membership-offer__inner h1 {
        font-size: 5rem; } }
    .membership-offer__inner h1:after {
      background-color: #ffffff;
      bottom: 0;
      content: "";
      height: 2px;
      left: 50%;
      position: absolute;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 30px; }

.membership-offer__description p {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  margin: 20px auto 10px;
  max-width: 450px; }
  @media print, screen and (min-width: 40em) {
    .membership-offer__description p {
      font-size: 1.375rem;
      line-height: 1.875rem;
      margin: 30px auto;
      max-width: 650px; } }

.membership-offer__buttons {
  margin: 20px 0 10px; }
  @media print, screen and (min-width: 40em) {
    .membership-offer__buttons {
      margin: 40px 0 20px; } }

.membership-offer__button {
  background: #000;
  border: 2px solid #000;
  border-radius: 3px;
  color: #fff;
  display: inline-block;
  font-size: 0.9375rem;
  margin: 10px auto;
  text-decoration: none;
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .membership-offer__button {
      border: 1px solid #000;
      margin: 0 5px;
      max-width: 270px;
      padding: 0.8125rem 0.625rem;
      width: 30%; } }
  @media print, screen and (min-width: 64em) {
    .membership-offer__button {
      font-size: 1rem;
      margin: 0 10px; } }
  .membership-offer__button:hover {
    background: #fff;
    border-color: #fff;
    color: #000; }

.membership-offer__text p {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  margin: 20px auto; }
  .membership-offer__text p a {
    color: inherit; }

.membership-offer__text a {
  color: inherit; }

.reciteme {
  -webkit-transition: all .4s;
  background-color: #ff080d;
  border: 1px solid #ff080d;
  bottom: 0;
  color: #fff;
  cursor: pointer;
  font-size: 12px;
  padding: 6px 10px;
  position: fixed;
  right: 0;
  transition: all .4s;
  z-index: 1000; }
  .reciteme:hover {
    background-color: #fff;
    border-color: 1px solid #ff080d;
    color: #ff080d; }

.nav {
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.29);
          box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.29);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  height: 60px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  min-width: 300px;
  -webkit-transition: -webkit-box-shadow .4s;
  transition: -webkit-box-shadow .4s;
  transition: box-shadow .4s;
  transition: box-shadow .4s, -webkit-box-shadow .4s;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .nav {
      height: 72px; } }

.nav__logo {
  background: transparent url("../img/ea-logo-vertical.svg") center center/contain no-repeat;
  height: 100%;
  margin: 0 0 0 20px;
  overflow: hidden;
  padding: 0;
  text-indent: -9999px;
  width: 97px; }
  @media print, screen and (min-width: 40em) {
    .nav__logo {
      -webkit-background-size: 202px 36px;
              background-size: 202px 36px;
      margin: 0 0 0 30px; } }
  @media print, screen and (min-width: 64em) {
    .nav__logo {
      margin: 0 0 0 25px; } }
  @media screen and (min-width: 81.25em) {
    .nav__logo {
      margin: 0 0 0 50px; } }

.nav__menu {
  display: none;
  height: 100%;
  margin: 0;
  padding: 0 6px 0 0;
  text-align: right; }
  @media print, screen and (min-width: 64em) {
    .nav__menu {
      display: block; } }
  .nav__menu li {
    color: #666;
    display: inline-block;
    font-size: 0.725rem;
    height: 54px;
    line-height: 3.0625rem;
    list-style: none;
    margin-top: 9px;
    padding: 0 7px;
    text-transform: uppercase; }
    @media screen and (min-width: 81.25em) {
      .nav__menu li {
        font-size: 0.9375rem; } }
    .nav__menu li.highlighted {
      background: #000;
      border: 4px solid #000;
      font-family: 'Circular Std Bold';
      padding: 0;
      text-decoration: none;
      -webkit-transition: all .4s;
      transition: all .4s; }
      .nav__menu li.highlighted:hover {
        background: #ff080d;
        border: 4px solid #ff080d; }
      .nav__menu li.highlighted:after {
        display: none; }
      .nav__menu li.highlighted a {
        border: 0;
        color: #fff;
        display: block;
        padding: 0 11px; }
    .nav__menu li.redlink a {
      color: #ff080d; }
    .nav__menu li.current-menu-item a {
      color: #333; }
      .nav__menu li.current-menu-item a:after {
        width: 100%; }
    .nav__menu li.nav__myprofile {
      color: #ff080d; }
      .nav__menu li.nav__myprofile a:after {
        background: #ff080d;
        margin: 4px 0;
        width: 100%; }
    .nav__menu li a {
      color: #000;
      padding-bottom: 5px;
      position: relative;
      text-decoration: none;
      -webkit-transition: color .4s;
      transition: color .4s; }
    .nav__menu li:not(.highlighted) a:after {
      background: #ff080d;
      bottom: 0;
      content: '';
      height: 2px;
      left: 0;
      position: absolute;
      -webkit-transition: width .4s;
      transition: width .4s;
      width: 0; }
    .nav__menu li:not(.highlighted) a:hover:after {
      width: 100%; }

.nav__mobile {
  background-color: #f1f2f4;
  height: 100%;
  position: fixed;
  right: 0;
  top: 60px;
  -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0);
  -webkit-transition-duration: .5s;
          transition-duration: .5s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  width: 80%;
  z-index: 1000; }
  @media print, screen and (min-width: 40em) {
    .nav__mobile {
      top: 72px;
      -webkit-transform: translate3d(300px, 0, 0);
              transform: translate3d(300px, 0, 0);
      -webkit-transition-duration: .4s;
              transition-duration: .4s;
      width: 300px; } }
  @media print, screen and (min-width: 64em) {
    .nav__mobile {
      display: none; } }

.nav__menu--loggedin li {
  line-height: 3.625rem; }

.nav__mobile--open {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.nav__menu-button {
  background: #f1f2f4;
  cursor: pointer;
  float: right;
  height: 100%;
  padding: 17px 45px 15px 15px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .nav__menu-button {
      padding: 24px 45px 24px 15px; } }
  @media print, screen and (min-width: 64em) {
    .nav__menu-button {
      display: none; } }

.nav__menu-button__text {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #333;
  text-transform: uppercase; }

.nav__mobile-menu {
  margin: 10px 0;
  max-height: 100vh;
  overflow-y: auto;
  padding: 0 15px 30px 20px; }
  .nav__mobile-menu li {
    font-size: 1.375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 3.75rem;
    margin: 0;
    border-bottom: 1px solid #ffffff;
    color: #666;
    list-style: none;
    position: relative; }
    .nav__mobile-menu li:after {
      background: url("/img/profile/arrow-right-blue.svg") no-repeat center center;
      -webkit-background-size: 30px 30px;
              background-size: 30px;
      content: '';
      height: 100%;
      pointer-events: none;
      position: absolute;
      right: 0;
      top: 0;
      width: 20px; }
    .nav__mobile-menu li a {
      color: inherit;
      display: block;
      text-decoration: none; }
      .nav__mobile-menu li a:hover {
        text-decoration: underline; }

.nav__menu-button--close {
  display: inline-block;
  float: none; }
  @media print, screen and (min-width: 40em) {
    .nav__menu-button--close {
      display: none; } }

.nav__menu-dots {
  display: block;
  margin: 18px 0;
  position: absolute;
  right: 20px;
  top: 0;
  width: 18px; }
  @media print, screen and (min-width: 40em) {
    .nav__menu-dots {
      margin: 25px 0; } }
  @media print, screen and (min-width: 64em) {
    .nav__menu-dots {
      display: none; } }
  @media all and (min-width: 1200px) {
    .nav__menu-dots {
      display: block; } }
  .nav__menu-dots span {
    background-color: #ff080d;
    border-radius: 50%;
    display: block;
    height: 5px;
    margin: 0 auto 3px;
    -webkit-transition: width .4s;
    transition: width .4s;
    width: 5px; }

.nav__menu-dots--alt {
  margin: 19px 0;
  right: 12px; }

.nav__menu-dots--open {
  margin: 30px 0; }
  @media print, screen and (min-width: 40em) {
    .nav__menu-dots--open {
      margin: 37px 0; } }
  .nav__menu-dots--open span {
    background-color: #ff080d;
    border-radius: 0;
    display: block;
    height: 2px;
    margin: -2px auto 0;
    -webkit-transition: -webkit-transform .4s;
    transition: -webkit-transform .4s;
    transition: transform .4s;
    transition: transform .4s, -webkit-transform .4s;
    width: 18px; }
    .nav__menu-dots--open span:first-of-type {
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg); }
    .nav__menu-dots--open span:nth-of-type(2) {
      display: none; }
    .nav__menu-dots--open span:last-of-type {
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg); }

@media print, screen and (min-width: 40em) {
  .nav__menu-dots--open-alt {
    margin: 30px 0; } }

.nav__menu-cross {
  position: absolute;
  right: -6px;
  top: 20px; }
  .nav__menu-cross span {
    background-color: #ff080d;
    display: block;
    height: 2px;
    margin-top: -2px;
    width: 18px; }
    .nav__menu-cross span:first-of-type {
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg); }
    .nav__menu-cross span:last-of-type {
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg); }

.nav__profile {
  background: #eaefff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 0;
  margin-top: 0;
  overflow: hidden;
  position: fixed;
  -webkit-transition: all .4s;
  transition: all .4s;
  width: 100%;
  z-index: 999; }
  @media print, screen and (min-width: 40em) {
    .nav__profile {
      -webkit-box-shadow: -6px -5px 6px 6px #939598;
              box-shadow: -6px -5px 6px 6px #939598; } }

.nav__profile--open {
  height: 300px;
  margin-top: 72px; }

.nav__profile__col {
  width: 25%;
  float: left;
  padding-right: 0.25rem;
  padding-left: 0.25rem; }
  @media print, screen and (min-width: 40em) {
    .nav__profile__col {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  .nav__profile__col, .nav__profile__col:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .nav__profile__col:last-child:not(:first-child) {
    float: right; }

.nav__profile__title {
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  margin: 50px 0 22px;
  padding: 0; }

.nav__profile__menu {
  margin: 0;
  padding: 0; }
  .nav__profile__menu li {
    display: block;
    list-style-type: none;
    margin: 0;
    padding: 4px 0; }
    .nav__profile__menu li:first-child {
      padding: 0 0 4px; }
    .nav__profile__menu li a {
      color: #333;
      font-size: 18px;
      text-decoration: none; }
      .nav__profile__menu li a:hover {
        text-decoration: underline; }

.nav__logout {
  border-top: 1px solid #c9cacb;
  margin: 36px 0 0;
  max-width: 200px;
  padding: 36px 0 0; }

.nav__notify-bubble {
  background-color: #ff080d;
  border: 2px solid #fff;
  border-radius: 10px;
  color: #fff;
  display: inline-block;
  font-size: 10px;
  margin: 1px 3px 0;
  padding: 1px 5px;
  position: absolute; }

.nav__notify-bubble--alt {
  border-radius: 100px;
  font-size: 12px;
  height: 22px;
  padding: 0 5px;
  width: 22px; }

.nav__notify-bubble--empty {
  border-radius: 100px;
  font-size: 12px;
  height: 14px;
  padding: 0 5px;
  width: 14px; }

.news-flash {
  background: #ff0001;
  background: -webkit-gradient(linear, left top, right top, color-stop(29%, #d70000), color-stop(68%, #ff2a2f), to(red));
  background: -webkit-linear-gradient(left, #d70000 29%, #ff2a2f 68%, red 100%);
  background: linear-gradient(90deg, #d70000 29%, #ff2a2f 68%, red 100%);
  padding: 15px 20px;
  width: 100%;
  z-index: 1000;
  position: absolute;
  top: 60px; }
  @media print, screen and (min-width: 40em) {
    .news-flash {
      position: absolute;
      top: 72px; } }
  .news-flash .hidden {
    display: none; }

.news-flash__inner {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #ffffff;
  margin: auto;
  max-width: 1200px;
  text-align: center;
  width: 100%; }
  .news-flash__inner a {
    color: inherit; }

.news-flash__posts {
  display: none; }
  .news-flash__posts .news-flash__block {
    margin: 10px 0; }

.news-flash__block {
  display: none; }
  .news-flash__block.visible {
    display: block; }

.news-flash__link {
  color: inherit;
  display: inline-block;
  position: relative; }
  .news-flash__link:after {
    background: url("../img/expand-white.svg") no-repeat center center;
    -webkit-background-size: 25px 25px;
            background-size: 25px;
    content: '';
    height: 20px;
    position: absolute;
    right: -20px;
    top: 0;
    width: 20px; }
  .news-flash__link:active {
    color: inherit; }
  .news-flash__link.news-flash__link--less:after, .news-flash__link.news-flash__link--hide:after {
    -webkit-transform: scaleY(-1);
        -ms-transform: scaleY(-1);
            transform: scaleY(-1); }

.homepage-news-flash .news-flash {
  position: relative;
  top: 0; }
  @media print, screen and (min-width: 40em) {
    .homepage-news-flash .news-flash {
      position: relative;
      top: 0; } }

.page-intro {
  clear: both;
  padding: 55px 20px 25px;
  position: relative;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .page-intro {
      padding: 100px 20px 35px; } }
  @media print, screen and (min-width: 64em) {
    .page-intro {
      padding-top: 140px; } }
  .page-intro:before {
    background: #c9cacb;
    content: '';
    height: 40px;
    left: 50%;
    position: absolute;
    top: 0;
    width: 1px; }
    @media print, screen and (min-width: 64em) {
      .page-intro:before {
        height: 100px;
        top: 20px; } }
  .page-intro h1 {
    margin-left: auto;
    margin-right: auto;
    max-width: 750px; }
  .page-intro p {
    font-size: 1.125rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5rem;
    margin: 0;
    color: #666;
    display: none;
    line-height: 1.5rem;
    margin: 20px auto 0;
    max-width: 750px; }
    @media print, screen and (min-width: 40em) {
      .page-intro p {
        display: block;
        font-size: 1.375rem;
        line-height: 1.875rem; } }
    .page-intro p a {
      color: #3d96ca;
      text-decoration: none; }
      .page-intro p a:hover {
        text-decoration: underline; }

.page-intro--bare:before {
  display: none; }

.page-intro--alt {
  padding-bottom: 0; }
  .page-intro--alt p {
    display: block; }
  .page-intro--alt .button {
    display: inline-block;
    font-size: 1rem; }
    .page-intro--alt .button:hover {
      background-color: #fff;
      color: #ff080d; }

.page-intro__button {
  margin: 10px 0 30px; }

.post-list {
  border-bottom: 3px solid #fff;
  margin: 0 0 20px;
  padding: 10px 0 30px; }
  .post-list::before, .post-list::after {
    display: table;
    content: ' '; }
  .post-list::after {
    clear: both; }
  .post-list span {
    clear: both;
    display: block; }

.post-list__article {
  float: left;
  margin: 10px 0 20px;
  width: 50%; }
  .post-list__article:nth-of-type(odd) {
    clear: left;
    padding-right: 8px; }
  .post-list__article:nth-of-type(even) {
    padding-left: 8px; }
  @media print, screen and (min-width: 40em) {
    .post-list__article {
      margin: 20px 0; } }

.post-list__article-image {
  float: left;
  height: 0;
  padding-bottom: 56.5%;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .post-list__article-image {
      padding-bottom: 20%;
      width: 35%; } }

.post-list__article-label {
  font-size: 0.75rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  background: #c9cacb;
  bottom: 0;
  color: #333;
  display: inline-block;
  position: absolute;
  right: 0;
  text-align: center;
  text-transform: uppercase;
  vertical-align: top;
  width: 45px; }
  @media print, screen and (min-width: 40em) {
    .post-list__article-label {
      font-size: 0.875rem;
      width: 66px; } }
  .post-list__article-label.post-list__article-label--News {
    background: #666;
    color: #ffffff; }
  .post-list__article-label.post-list__article-label--Event {
    background: #d4983e;
    color: #ffffff; }

.post-list__article-meta {
  float: left;
  padding: 20px 0 0;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .post-list__article-meta {
      padding: 0 20px;
      width: 65%; } }

.post-list__article-category {
  color: #777;
  font-family: "Circular Std Medium", sans-serif;
  font-size: 0.9375rem; }
  .post-list__article-category a {
    color: inherit;
    text-decoration: none; }
    .post-list__article-category a:hover {
      text-decoration: underline; }

.post-list__article-title {
  font-size: 1.0625rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  width: 90%; }
  @media print, screen and (min-width: 40em) {
    .post-list__article-title {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  @media print, screen and (min-width: 64em) {
    .post-list__article-title {
      width: 100%; } }
  .post-list__article-title a {
    font-family: "Circular Std Bold", sans-serif;
    color: inherit;
    text-decoration: none; }
    .post-list__article-title a:hover {
      text-decoration: underline; }

.post-list__article-link {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #3d96ca;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .post-list__article-link {
      font-size: 1.125rem;
      line-height: 1.75rem; } }
  .post-list__article-link:hover {
    text-decoration: underline; }

.post-list__button-container {
  margin: 0 auto 20px;
  max-width: 220px;
  padding: 0 20px;
  width: 100%; }

.post-list__article-count {
  text-align: center;
  font-family: "Circular Std Bold", sans-serif;
  padding-top: 20px; }

.reciteme-button {
  -webkit-transition: all 0.4s;
  background-color: #ff080d;
  border: 1px solid #ff080d;
  bottom: 0;
  color: #fff;
  cursor: pointer;
  font-size: 12px;
  padding: 6px 10px;
  position: fixed;
  right: 0;
  transition: all 0.4s;
  z-index: 9000; }
  .reciteme-button:hover {
    background-color: #fff;
    border-color: 1px solid #ff080d;
    color: #ff080d; }

.no-touchevents .footer {
  display: block; }

.no-touchevents .scrollbox__wrapper {
  background: -webkit-linear-gradient(315deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%);
  background: linear-gradient(135deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%);
  background-attachment: fixed;
  min-height: 97vh; }
  .no-touchevents .scrollbox__wrapper::before, .no-touchevents .scrollbox__wrapper::after {
    display: table;
    content: ' '; }
  .no-touchevents .scrollbox__wrapper::after {
    clear: both; }

.no-touchevents .scrollbox {
  opacity: 1;
  -webkit-transition: border .4s;
  transition: border .4s; }
  @media screen and (min-width: 48em) {
    .no-touchevents .scrollbox.scrollbox--1 {
      min-height: 74vh;
      padding-top: 15vh; }
      .no-touchevents .scrollbox.scrollbox--1 .scrollbox__media img {
        max-width: 500px; } }
  @media print, screen and (min-width: 64em) {
    .no-touchevents .scrollbox.scrollbox--1 {
      padding-top: 12vh; } }
  @media screen and (min-width: 1920px) {
    .no-touchevents .scrollbox.scrollbox--1 {
      padding-top: 15vh; } }

@media screen and (min-width: 48em) {
  .no-touchevents .scrollbox__header {
    height: 6vh; } }

@media screen and (min-width: 81.25em) {
  .no-touchevents .scrollbox__header {
    height: 8vh; } }

@media screen and (min-width: 48em) {
  .no-touchevents .scrollbox__media {
    opacity: 0;
    -webkit-transition: none;
    transition: none; } }

.no-touchevents .scrollbox--active {
  background: -webkit-linear-gradient(315deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%);
  background: linear-gradient(135deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%); }
  @media screen and (min-width: 48em) {
    .no-touchevents .scrollbox--active {
      background: transparent;
      border-top: 1px solid transparent;
      min-height: 74vh;
      padding-bottom: 15vh; } }
  .no-touchevents .scrollbox--active.faqs {
    background: #1b2326;
    min-height: auto;
    padding-bottom: 0; }
  .no-touchevents .scrollbox--active .scrollbox__content {
    display: block; }
  .no-touchevents .scrollbox--active .scrollbox__media {
    opacity: 1;
    -webkit-transition: opacity .6s;
    transition: opacity .6s; }
    .no-touchevents .scrollbox--active .scrollbox__media.hidden {
      opacity: 0; }
  .no-touchevents .scrollbox--active .scrollbox__link {
    display: none; }

@media screen and (min-width: 48em) {
  .no-touchevents .scrollbox--collapsed {
    position: fixed; }
    .no-touchevents .scrollbox--collapsed.scrollbox--2 {
      top: 78vh; }
    .no-touchevents .scrollbox--collapsed.scrollbox--3 {
      top: 84vh; }
    .no-touchevents .scrollbox--collapsed.scrollbox--4 {
      top: 90vh; }
    .no-touchevents .scrollbox--collapsed.faqs {
      position: fixed;
      top: 96vh;
      z-index: 25; }
    .no-touchevents .scrollbox--collapsed .scrollbox__content {
      display: none; } }

@media screen and (min-width: 81.25em) {
  .no-touchevents .scrollbox--collapsed.scrollbox--2 {
    top: 72vh; }
  .no-touchevents .scrollbox--collapsed.scrollbox--3 {
    top: 80vh; }
  .no-touchevents .scrollbox--collapsed.scrollbox--4 {
    top: 88vh; } }

@media screen and (min-width: 48em) {
  .no-touchevents .faqs .scrollbox__header {
    height: 4vh; } }

@media screen and (min-width: 81.25em) {
  .no-touchevents .faqs .scrollbox__header {
    height: 3vh; } }

.touchevents .footer {
  display: block; }
  @media screen and (min-width: 48em) {
    .touchevents .footer.fixed {
      top: 0; } }

.touchevents .scrollbox {
  opacity: 1;
  position: relative; }
  @media screen and (min-width: 48em) {
    .touchevents .scrollbox {
      background: -webkit-linear-gradient(315deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%);
      background: linear-gradient(135deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%);
      height: 60vh;
      min-height: 600px; } }
  @media print, screen and (min-width: 64em) {
    .touchevents .scrollbox {
      height: 85vh; } }

.touchevents .scrollbox--1 .scrollbox__media {
  padding-bottom: 0;
  padding-top: 0; }

.touchevents .scrollbox__media {
  background: -webkit-linear-gradient(315deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%);
  background: linear-gradient(135deg, #ffffff 0%, #ffffff 29%, #fefefe 31%, #e4e4e5 100%);
  padding-bottom: 20px;
  padding-top: 20px; }
  @media screen and (min-width: 48em) {
    .touchevents .scrollbox__media {
      background: none;
      left: 55%;
      position: absolute;
      width: 45%; }
      .touchevents .scrollbox__media img {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); } }
  @media screen and (min-width: 48em) {
    .touchevents .scrollbox__media {
      left: 53%;
      width: 47%; } }

.touchevents .scrollbox__media--2 {
  height: 100%; }
  .touchevents .scrollbox__media--2 .scrollbox__media-container {
    display: none; }
  @media screen and (min-width: 48em) {
    .touchevents .scrollbox__media--2 .mobile {
      display: block; } }
  @media screen and (min-width: 48em) {
    .touchevents .scrollbox__media--2 img {
      left: 0;
      max-width: 600px;
      width: 100%; } }

.touchevents .scrollbox__media--3 {
  display: block; }
  @media screen and (min-width: 48em) {
    .touchevents .scrollbox__media--3 {
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .touchevents .scrollbox__media--3 {
      height: 85vh; } }
  .touchevents .scrollbox__media--3 img {
    max-width: initial;
    top: 50%; }

@media screen and (min-width: 48em) {
  .touchevents .scrollbox__media--4 img {
    height: 60%;
    left: 15%; }
    .touchevents .scrollbox__media--4 img:nth-of-type(2) {
      left: 30%;
      margin-top: 70px;
      top: 42%; } }

@media print, screen and (min-width: 64em) {
  .touchevents .scrollbox__media--4 img {
    height: 40%; } }

@media screen and (min-width: 48em) {
  .touchevents .scrollbox__content-wrapper {
    height: auto;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); } }

@media print, screen and (min-width: 64em) {
  .touchevents .scrollbox__content-wrapper {
    padding: 0; } }

.touchevents .scrollbox__header .scrollbox__link {
  display: none; }

.touchevents .scrollbox__content:after {
  display: none; }

@media screen and (min-width: 48em) {
  .touchevents .scrollbox__content {
    width: 53%; } }

@media print, screen and (min-width: 64em) {
  .touchevents .scrollbox__content {
    width: 50%; } }

@media screen and (min-width: 48em) {
  .touchevents .faqs .scrollbox__header {
    height: 3vh; } }

@media print, screen and (min-width: 64em) {
  .touchevents .faqs .scrollbox__header {
    display: block; } }

.scrollbox {
  background: #ffffff;
  clear: both;
  opacity: 0;
  padding: 20px 0 0;
  width: 100%;
  z-index: 25; }
  .scrollbox::before, .scrollbox::after {
    display: table;
    content: ' '; }
  .scrollbox::after {
    clear: both; }
  @media screen and (min-width: 48em) {
    .scrollbox {
      padding: 0; } }
  .scrollbox.scrollbox--1 {
    padding: 0; }
    .scrollbox.scrollbox--1 .scrollbox__media {
      background: none; }
      .scrollbox.scrollbox--1 .scrollbox__media::before {
        background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.88)), to(rgba(255, 255, 255, 0)));
        background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.88) 0%, rgba(255, 255, 255, 0) 100%);
        background: linear-gradient(to right, rgba(0, 0, 0, 0.88) 0%, rgba(255, 255, 255, 0) 100%);
        bottom: 0;
        content: '';
        display: block;
        left: 0;
        opacity: .8;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 10; }
    @media screen and (min-width: 48em) {
      .scrollbox.scrollbox--1 .scrollbox__media--video ~ .container .scrollbox__content,
      .scrollbox.scrollbox--1 .scrollbox__media--video ~ .container .scrollbox__description {
        color: #fff; } }
    @media screen and (min-width: 48em) {
      .scrollbox.scrollbox--1 .scrollbox__content {
        background: none;
        max-width: 600px; } }
    .scrollbox.scrollbox--1 .scrollbox__content h1 {
      font-family: 'Barlow Semi Condensed', sans-serif;
      font-size: 2.5rem;
      font-weight: bold;
      text-transform: uppercase; }
      @media print, screen and (min-width: 40em) {
        .scrollbox.scrollbox--1 .scrollbox__content h1 {
          font-size: 3.75rem;
          line-height: 1; } }
      @media screen and (min-width: 1920px) {
        .scrollbox.scrollbox--1 .scrollbox__content h1 {
          font-size: 5rem; } }
    .scrollbox.scrollbox--1 .scrollbox__content .scrollbox__content-button {
      background-color: #ff080d;
      border: 2px solid #ff080d;
      color: #fff; }
      .scrollbox.scrollbox--1 .scrollbox__content .scrollbox__content-button:hover {
        background-color: #000;
        border-color: #000; }
    .scrollbox.scrollbox--1 .scrollbox__description {
      font-size: 1.125rem; }
      @media screen and (min-width: 48em) {
        .scrollbox.scrollbox--1 .scrollbox__description {
          font-size: 1.375rem;
          line-height: 1.36;
          margin: 20px 0 40px;
          max-width: 500px; } }
  .scrollbox.scrollbox--2.scrollbox--space {
    padding-top: 10vh; }
  .scrollbox.scrollbox--2.scrollbox--active {
    -webkit-transition: padding .3s linear;
    transition: padding .3s linear; }
  .scrollbox .container {
    height: 100%;
    position: relative;
    z-index: 20; }

@media screen and (min-width: 48em) {
  .scrollbox--container {
    border-top: 1px solid #c9cacb; } }

.scrollbox__media {
  position: relative; }
  .scrollbox__media img {
    display: block;
    margin: auto; }
  @media screen and (min-width: 48em) {
    .scrollbox__media {
      float: right;
      height: 100%;
      pointer-events: none;
      width: 40%; }
      .scrollbox__media img {
        height: auto;
        left: 0;
        position: absolute; } }
  @media print, screen and (min-width: 64em) {
    .scrollbox__media {
      width: 43%; } }

.scrollbox__media--video {
  display: none;
  overflow: hidden; }
  @media screen and (min-width: 48em) {
    .scrollbox__media--video {
      display: block;
      height: 74vh;
      margin-top: -15vh;
      position: absolute;
      width: 100%; }
      .scrollbox__media--video .full-bg {
        bottom: 0;
        left: 0;
        overflow: hidden;
        position: absolute;
        right: 0;
        top: 0; }
        .scrollbox__media--video .full-bg .video-js {
          height: 100%;
          left: 0;
          min-height: 56vw;
          pointer-events: none;
          position: absolute;
          top: 50%;
          -webkit-transform: translateY(-50%);
              -ms-transform: translateY(-50%);
                  transform: translateY(-50%);
          width: 100%; }
          .scrollbox__media--video .full-bg .video-js .vjs-control-bar {
            display: none; }
        .scrollbox__media--video .full-bg .vjs-tech {
          object-fit: cover; } }
  @media print, screen and (min-width: 64em) {
    .scrollbox__media--video {
      margin-top: -12vh; } }
  @media screen and (min-width: 81.25em) {
    .scrollbox__media--video {
      margin-top: -15vh; } }

.scrollbox__media--fallback {
  display: block; }
  @media screen and (min-width: 48em) {
    .scrollbox__media--fallback {
      display: none; }
      .scrollbox__media--fallback img {
        width: 95%; } }

@media screen and (min-width: 48em) {
  .scrollbox__media--2 {
    height: auto;
    left: 60%;
    position: absolute; } }

@media print, screen and (min-width: 64em) {
  .scrollbox__media--2 {
    left: 56%; } }

.scrollbox__media--2 .scrollbox__media-container {
  display: none; }
  @media screen and (min-width: 48em) {
    .scrollbox__media--2 .scrollbox__media-container {
      display: block;
      left: 0;
      max-width: 700px;
      padding-bottom: 70%;
      position: relative;
      top: 0;
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .scrollbox__media--2 .scrollbox__media-container {
      padding-bottom: 65%; } }
  @media screen and (min-width: 81.25em) {
    .scrollbox__media--2 .scrollbox__media-container {
      padding-bottom: 380px; } }
  .scrollbox__media--2 .scrollbox__media-container img {
    -webkit-box-shadow: 1px 3px 20px 0 #666;
            box-shadow: 1px 3px 20px 0 #666;
    height: auto;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-75%, -25%);
        -ms-transform: translate(-75%, -25%);
            transform: translate(-75%, -25%);
    -webkit-transition: all .5s;
    transition: all .5s;
    -webkit-transition-delay: 0;
            transition-delay: 0;
    z-index: 0; }
    @media screen and (min-width: 48em) {
      .scrollbox__media--2 .scrollbox__media-container img {
        margin: initial; } }
    .scrollbox__media--2 .scrollbox__media-container img:nth-of-type(1), .scrollbox__media--2 .scrollbox__media-container img:nth-of-type(2), .scrollbox__media--2 .scrollbox__media-container img:nth-of-type(5), .scrollbox__media--2 .scrollbox__media-container img:nth-of-type(3) {
      width: 15%; }
    .scrollbox__media--2 .scrollbox__media-container img:nth-of-type(4), .scrollbox__media--2 .scrollbox__media-container img:nth-of-type(6) {
      width: 30%; }
    .scrollbox__media--2 .scrollbox__media-container img:nth-of-type(7) {
      left: 16%;
      top: 35%;
      -webkit-transform: translate(0);
          -ms-transform: translate(0);
              transform: translate(0);
      width: 50%;
      z-index: 1; }
    .scrollbox__media--2 .scrollbox__media-container img.active {
      -webkit-transform: translate(0);
          -ms-transform: translate(0);
              transform: translate(0);
      -webkit-transition-delay: .6s;
              transition-delay: .6s; }
      .scrollbox__media--2 .scrollbox__media-container img.active:nth-of-type(1) {
        left: 0;
        top: 2%; }
      .scrollbox__media--2 .scrollbox__media-container img.active:nth-of-type(2) {
        left: 16%;
        top: 14%; }
      .scrollbox__media--2 .scrollbox__media-container img.active:nth-of-type(3) {
        left: 48%;
        top: 0; }
      .scrollbox__media--2 .scrollbox__media-container img.active:nth-of-type(4) {
        left: 63%;
        top: 20%; }
      .scrollbox__media--2 .scrollbox__media-container img.active:nth-of-type(5) {
        left: 74%;
        top: 82%; }
      .scrollbox__media--2 .scrollbox__media-container img.active:nth-of-type(6) {
        left: 2%;
        top: 85%; }

@media screen and (min-width: 48em) {
  .scrollbox__media--2 .mobile {
    display: none;
    max-width: 600px;
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .scrollbox__media--2 .mobile {
    -webkit-transform: translateY(-10%);
        -ms-transform: translateY(-10%);
            transform: translateY(-10%); } }

.scrollbox__media--3 img {
  width: 100%; }

@media screen and (min-width: 48em) {
  .scrollbox__media--3 {
    float: none;
    height: auto;
    position: absolute;
    right: 0; }
    .scrollbox__media--3 img {
      float: right;
      max-width: 100%;
      padding-right: 0; } }

@media print, screen and (min-width: 64em) {
  .scrollbox__media--3 img {
    -webkit-transform: translateY(-20%);
        -ms-transform: translateY(-20%);
            transform: translateY(-20%); } }

.scrollbox__media--4 img {
  -webkit-box-shadow: 0 0 25px 0 #c9cacb;
          box-shadow: 0 0 25px 0 #c9cacb; }
  .scrollbox__media--4 img:nth-of-type(2) {
    display: none;
    top: 0; }
  @media print, screen and (min-width: 64em) {
    .scrollbox__media--4 img {
      left: 200px;
      -webkit-transform: translateY(-10%);
          -ms-transform: translateY(-10%);
              transform: translateY(-10%);
      -webkit-transition: all .5s;
      transition: all .5s; }
      .scrollbox__media--4 img.active {
        left: 0; }
        .scrollbox__media--4 img.active:nth-of-type(2) {
          left: 80px;
          top: 70px; }
      .scrollbox__media--4 img:nth-of-type(2) {
        display: block; } }
  @media screen and (min-width: 81.25em) {
    .scrollbox__media--4 img {
      left: 300px; } }

.scrollbox__inner {
  width: 100%; }
  @media screen and (min-width: 48em) {
    .scrollbox__inner {
      padding: 0 20px; } }

.scrollbox__content-wrapper {
  height: calc(100% - 8vh); }
  @media print, screen and (min-width: 64em) {
    .scrollbox__content-wrapper {
      padding: 0 12px; } }
  @media screen and (min-width: 81.25em) {
    .scrollbox__content-wrapper {
      padding: 0; } }

.scrollbox__header {
  padding: 40px 20px 0; }
  @media screen and (min-width: 48em) {
    .scrollbox__header {
      display: block;
      padding: 1vh 0; } }
  @media print, screen and (min-width: 64em) {
    .scrollbox__header {
      padding: 1.25vh 0 2vh; } }
  @media screen and (min-width: 81.25em) {
    .scrollbox__header {
      padding: 2vh 0; } }
  .scrollbox__header .scrollbox__title {
    display: inline-block;
    vertical-align: middle; }
    @media screen and (min-width: 48em) {
      .scrollbox__header .scrollbox__title {
        width: 67%; } }
    .scrollbox__header .scrollbox__title h2,
    .scrollbox__header .scrollbox__title h3 {
      cursor: pointer;
      font-size: 2.5rem;
      letter-spacing: 0; }
      @media print, screen and (min-width: 64em) {
        .scrollbox__header .scrollbox__title h2,
        .scrollbox__header .scrollbox__title h3 {
          font-size: 1.25rem;
          line-height: 27px; } }
      @media screen and (min-width: 1920px) {
        .scrollbox__header .scrollbox__title h2,
        .scrollbox__header .scrollbox__title h3 {
          font-size: 2.5rem;
          line-height: 43px; } }
  .scrollbox__header .scrollbox__link {
    font-size: 0.9375rem;
    font-family: "Circular Std Book", sans-serif;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.75rem;
    margin: 0;
    color: #3d96ca;
    display: inline-block;
    padding-right: 25px;
    position: relative;
    text-align: right;
    vertical-align: middle;
    width: 32%; }
    @media print, screen and (min-width: 64em) {
      .scrollbox__header .scrollbox__link {
        font-size: 1.125rem;
        font-family: "Circular Std Book", sans-serif;
        font-weight: 400;
        letter-spacing: -0.01em;
        line-height: 1.75rem;
        margin: 0; } }
    .scrollbox__header .scrollbox__link:after {
      background: url("../img/chevron-right-blue.svg") no-repeat center center;
      -webkit-background-size: 25px 25px;
              background-size: 25px;
      content: '';
      cursor: pointer;
      height: 28px;
      position: absolute;
      right: 0;
      top: 0;
      width: 25px; }
    .scrollbox__header .scrollbox__link a {
      color: inherit;
      text-decoration: none; }
      .scrollbox__header .scrollbox__link a:hover {
        text-decoration: underline; }

.scrollbox--1 .scrollbox__content {
  padding: 0 20px 60px; }

.scrollbox__content {
  padding: 0 20px 60px;
  position: relative;
  z-index: 1; }
  @media screen and (min-width: 48em) {
    .scrollbox__content {
      padding: 0;
      width: 56%; } }
  @media print, screen and (min-width: 64em) {
    .scrollbox__content {
      width: 55%; } }
  @media print, screen and (min-width: 40em) {
    .scrollbox__content h3 {
      font-size: 1.375rem;
      line-height: 2.125rem; } }
  @media print, screen and (min-width: 64em) {
    .scrollbox__content h3 {
      font-size: 1.5rem;
      line-height: 2.25rem; } }
  .scrollbox__content .scrollbox__title {
    display: block; }
    @media screen and (min-width: 48em) {
      .scrollbox__content .scrollbox__title {
        display: none; } }

.scrollbox__description {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.625rem;
  margin: 0;
  color: #333;
  margin: 10px 0 15px; }
  @media screen and (min-width: 48em) {
    .scrollbox__description {
      padding-right: 30px; } }
  @media print, screen and (min-width: 64em) {
    .scrollbox__description {
      font-size: 1.0625rem;
      line-height: 1.75rem;
      margin: 0 auto 30px; } }
  @media screen and (min-width: 81.25em) {
    .scrollbox__description {
      font-size: 1.5rem;
      line-height: 2.125rem; } }

.scrollbox__secondary-text {
  color: #333;
  line-height: 1.5em; }
  .scrollbox__secondary-text a {
    color: #3d96ca;
    text-decoration: none; }
    .scrollbox__secondary-text a:hover {
      text-decoration: underline; }

.scrollbox__logos {
  height: 120px;
  overflow: hidden; }
  .scrollbox__logos::before, .scrollbox__logos::after {
    display: table;
    content: ' '; }
  .scrollbox__logos::after {
    clear: both; }
  @media only screen and (min-width: 500px) {
    .scrollbox__logos {
      height: 150px; } }

.scrollbox__logos-row {
  height: 130px; }
  @media only screen and (min-width: 500px) {
    .scrollbox__logos-row {
      height: 150px; } }
  .scrollbox__logos-row.slick-slide {
    height: 130px; }
    @media only screen and (min-width: 500px) {
      .scrollbox__logos-row.slick-slide {
        height: 150px; } }

.scrollbox__logo {
  display: inline-block;
  height: 100%;
  padding: 5px;
  position: relative;
  vertical-align: middle;
  width: 80%; }
  @media only screen and (min-width: 500px) {
    .scrollbox__logo {
      width: 70%; } }
  @media only screen and (min-width: 700px) {
    .scrollbox__logo {
      width: 75%; } }
  @media only screen and (min-width: 900px) {
    .scrollbox__logo {
      width: 60%; } }
  .scrollbox__logo img {
    display: inline-block;
    left: 0;
    padding: 5px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

.scrollbox__content-button {
  background-color: #fff;
  border: 2px solid #ff080d;
  border-radius: 0;
  color: #ff080d;
  display: inline-block;
  font-size: 1rem;
  padding: 0.5625rem 1.125rem;
  text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .scrollbox__content-button {
      font-size: 1rem;
      padding: 0.75rem 1.5rem; } }
  .scrollbox__content-button:hover {
    background-color: #000;
    border-color: #000;
    color: #fff; }

.scrollbox__content-link {
  font-size: 16px;
  margin: 30px 0 0; }
  .scrollbox__content-link a {
    color: #3d96ca;
    font-size: 16px;
    text-decoration: none; }

.search-results {
  padding-top: 85px; }
  .search-results::before, .search-results::after {
    display: table;
    content: ' '; }
  .search-results::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .search-results {
      padding-top: 95px; } }
  @media print, screen and (min-width: 64em) {
    .search-results {
      padding-top: 115px; } }

.search-results__inner {
  padding: 0 12px;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .search-results__inner {
      width: 83.33333%;
      float: left;
      padding-right: 0.25rem;
      padding-left: 0.25rem;
      margin-left: 8.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .search-results__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
      .search-results__inner, .search-results__inner:last-child:not(:first-child) {
        float: left;
        clear: none; }
      .search-results__inner:last-child:not(:first-child) {
        float: right; } }
  .search-results__inner .post-list {
    border-bottom: 2px solid #c9cacb; }

.search-results__info > span {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666; }

.search-results__title {
  border-bottom: 1px solid #c9cacb;
  color: #333;
  font-size: 1.625rem;
  line-height: 1.875rem;
  margin: 10px 0 20px;
  padding-bottom: 20px; }
  @media print, screen and (min-width: 40em) {
    .search-results__title {
      font-size: 2.25rem;
      line-height: 2.75rem;
      margin-bottom: 30px;
      padding-bottom: 25px; } }
  @media print, screen and (min-width: 64em) {
    .search-results__title {
      font-size: 2.875rem;
      line-height: 3.25rem;
      margin-bottom: 40px;
      padding-bottom: 35px; } }

.search-results__options {
  margin-bottom: 5px; }
  .search-results__options::before, .search-results__options::after {
    display: table;
    content: ' '; }
  .search-results__options::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .search-results__options {
      margin-bottom: 5px; } }

.search-results__count {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #333;
  margin-bottom: 10px; }
  @media print, screen and (min-width: 40em) {
    .search-results__count {
      float: left;
      font-size: 1.125rem;
      line-height: 1.75rem;
      margin-bottom: 0;
      width: calc(100% - 320px); } }
  .search-results__count span {
    font-weight: bold; }

.search-results__repeat {
  font-size: 0.9375rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.25rem;
  margin: 0;
  color: #ff080d;
  cursor: pointer;
  margin-top: 10px;
  margin-top: -5px;
  min-height: 40px;
  min-width: 300px;
  position: relative; }
  .search-results__repeat::before, .search-results__repeat::after {
    display: table;
    content: ' '; }
  .search-results__repeat::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .search-results__repeat {
      float: right;
      font-size: 1.125rem;
      line-height: 1.75rem;
      margin-top: 0;
      text-align: right; } }
  .search-results__repeat a {
    color: inherit;
    text-decoration: none; }
    .search-results__repeat a:hover {
      text-decoration: underline; }
  .search-results__repeat form {
    display: none;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .search-results__repeat form {
        max-width: 300px; } }
    @media print, screen and (min-width: 40em) {
      .search-results__repeat form {
        right: 0; } }
    .search-results__repeat form input[type='text'] {
      border-radius: 35px;
      font-size: 1rem;
      padding: 0.625rem 7.1875rem 0.625rem 0.9375rem; }

.search-results__form {
  margin-bottom: 20px; }
  .search-results__form input[type='text'] {
    border-radius: 35px;
    font-size: 1rem;
    max-width: 600px; }

.toggle__buttons {
  background-color: #7d7d7d;
  border: 3px solid #666;
  border-radius: 50px;
  height: 40px;
  margin: auto;
  padding: 0;
  position: relative;
  width: 80px; }

.toggle__buttons--disabled {
  pointer-events: none;
  z-index: 100; }

.toggle__slider {
  background: #ff080d;
  border: 3px solid rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  height: 34px;
  position: absolute;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
  width: 34px;
  z-index: 1; }
  .toggle__slider::after {
    content: '';
    height: 16px;
    left: 50%;
    margin-left: -8px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px; }

.toggle__slider--disabled {
  display: none; }

.toggle__slider--one {
  left: 0; }
  .toggle__slider--one::after {
    background: transparent url("../img/toggle-left.svg") no-repeat center center;
    -webkit-background-size: 13px 13px;
            background-size: 13px; }

.toggle__slider--two {
  left: 40px; }
  .toggle__slider--two::after {
    background: transparent url("../img/toggle-right.svg") no-repeat center center;
    -webkit-background-size: 13px 13px;
            background-size: 13px; }

.toggle__label {
  color: rgba(255, 255, 255, 0.9);
  cursor: pointer;
  display: block;
  height: 34px;
  position: absolute;
  text-align: center;
  width: 100%;
  z-index: 10; }

.toggle__option {
  color: #333;
  cursor: pointer;
  display: inline-block;
  font-family: "Circular Std Medium", sans-serif;
  font-size: 1rem;
  margin-top: 10px;
  position: absolute;
  text-transform: uppercase; }
  .toggle__option.toggle__option--one {
    left: -50px; }
  .toggle__option.toggle__option--two {
    right: -50px; }
  .toggle__option.toggle__option--active {
    color: #939598; }

.plans-teaser {
  background: #e4e4e5;
  padding: 60px 0 40px;
  text-align: center; }

.plans-teaser__inner {
  width: 100%;
  float: left;
  padding-right: 0.25rem;
  padding-left: 0.25rem; }
  @media print, screen and (min-width: 40em) {
    .plans-teaser__inner {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  .plans-teaser__inner, .plans-teaser__inner:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .plans-teaser__inner:last-child:not(:first-child) {
    float: right; }

.plans-teaser__title {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: -.02em;
  line-height: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .plans-teaser__title {
      font-size: 2.25rem;
      font-weight: 700;
      line-height: 2.625rem;
      max-width: 100%; } }

.plans-teaser__text {
  font-size: 1.125rem;
  font-family: "Circular Std Book", sans-serif;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.5rem;
  margin: 0;
  color: #666;
  line-height: 1.5rem;
  margin: 20px auto 0;
  max-width: 840px; }
  @media print, screen and (min-width: 40em) {
    .plans-teaser__text {
      font-size: 1.375rem;
      line-height: 1.875rem; } }
  .plans-teaser__text a {
    color: #3d96ca;
    text-decoration: none; }
    .plans-teaser__text a:hover {
      text-decoration: underline; }

.plans-teaser__plans {
  margin: 0;
  padding: 48px 0 0; }

.plan-card {
  background: #fff;
  border: 2px solid #fff;
  border-radius: 5px;
  -webkit-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.1);
  display: inline-block;
  list-style-type: none;
  margin: 0 12px 24px;
  max-width: 278px;
  overflow: hidden;
  padding: 0;
  text-align: left; }

.plan-card__content {
  padding: 20px; }

.plan-card__title {
  font-size: 20px;
  padding-bottom: 12px; }

.plan-card__desc {
  border-bottom: 1px solid #e4e4e5;
  border-top: 1px solid #e4e4e5;
  font-size: 14px;
  height: 140px;
  line-height: 1.4;
  overflow: hidden;
  padding: 12px 0 16px; }

.plan-card__level {
  color: #c9cacb;
  font-size: 14px;
  padding: 12px 0 0; }
  .plan-card__level span {
    color: #333;
    font-weight: bold; }
  .plan-card__level a {
    color: #3d96ca;
    float: right;
    text-decoration: none; }
    .plan-card__level a:hover {
      text-decoration: underline; }

.plan-card__img {
  max-height: 155px;
  max-width: 280px;
  overflow: hidden; }

.kiosk-template .nav__mobile {
  display: none !important; }

.kiosk-template .wrapper {
  background-color: #000; }

.kiosk-template .iframe-parent {
  bottom: 0;
  left: 0;
  margin-top: 70px;
  position: absolute;
  right: 0;
  top: 0; }

.kiosk-template iframe {
  border: 0;
  height: 100%;
  position: absolute;
  width: 100%; }

.kiosk-menu {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: bold;
  padding: 40px 0 10px; }

.kiosk-template-single-kiosk-iframe {
  overflow: hidden;
  width: 100%; }
  .kiosk-template-single-kiosk-iframe .kiosk-menu {
    padding-top: 0; }
  .kiosk-template-single-kiosk-iframe iframe {
    height: 100%; }

.kiosk-menu__intro {
  -moz-box-shadow: 0 1px 5px 0 #cccccc;
  -webkit-box-shadow: 0 1px 5px 0 #cccccc;
  background-color: #ffffff;
  box-shadow: 0 1px 5px 0 #cccccc;
  display: block;
  padding: 15px;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 10; }
  .kiosk-menu__intro .kiosk_top__logo {
    background: #ffffff url("../img/ea-logo-landscape.svg") no-repeat center;
    display: block;
    height: 40px;
    margin: 0 auto;
    overflow: hidden;
    padding: 0;
    text-indent: -9999px;
    width: 280px; }
    .kiosk-menu__intro .kiosk_top__logo a {
      display: block;
      height: 100%;
      width: 100%; }
  .kiosk-menu__intro a {
    color: #ff080d;
    font-weight: 700;
    text-decoration: none; }
  .kiosk-menu__intro .kiosk_top__home,
  .kiosk-menu__intro .kiosk_top__logout {
    position: absolute;
    top: calc(50% - 15px); }
  .kiosk-menu__intro .kiosk_top__home {
    left: 20px; }
  .kiosk-menu__intro .kiosk_top__logout {
    right: 20px; }

.kiosk__list {
  margin: 0;
  padding: 0 10px;
  text-align: center; }
  .kiosk__list::before, .kiosk__list::after {
    display: table;
    content: ' '; }
  .kiosk__list::after {
    clear: both; }

.kiosk-menu__tile_primary {
  background: transparent;
  display: block;
  list-style-type: none;
  margin: 15px auto 45px;
  overflow: hidden;
  padding: 0;
  text-transform: uppercase;
  width: 90%; }
  .kiosk-menu__tile_primary a {
    text-decoration: none; }
  @media print, screen and (min-width: 64em) {
    .kiosk-menu__tile_primary {
      display: inline-block;
      margin: 15px 12px 45px;
      width: 35%; } }

.kiosk-menu__tile_image {
  background: transparent;
  display: inline-block;
  list-style-type: none;
  margin: 0 12px 24px;
  overflow: hidden;
  padding: 0;
  width: 90%; }
  .kiosk-menu__tile_image a {
    text-decoration: none; }
  @media print, screen and (min-width: 40em) {
    .kiosk-menu__tile_image {
      margin: 8px 5px;
      width: 47%; } }
  @media print, screen and (min-width: 64em) {
    .kiosk-menu__tile_image {
      margin: 8px 5px;
      width: 30%; } }
  @media screen and (min-width: 81.25em) {
    .kiosk-menu__tile_image {
      margin: 8px 5px;
      width: 24%; } }

.primary_tile {
  background-color: #ff080d;
  border: 2px solid #ff080d;
  border-radius: 50px;
  -webkit-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.1);
  margin: 0 12px 24px;
  padding: 5px;
  text-align: center; }
  .primary_tile .title {
    color: #ffffff;
    font-size: 2.5rem;
    font-weight: bold;
    text-align: center;
    width: auto; }

.image_tile {
  border-radius: 20px;
  margin: 0 5px; }
  .image_tile .title_box {
    background-color: #ffffff;
    border-radius: 0 0 15px 15px;
    height: 90px;
    position: relative; }
  .image_tile .title {
    color: #000;
    font-size: 2rem;
    font-weight: bold;
    line-height: 90px;
    margin: 0;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: -2px;
    width: 100%; }
  .image_tile img {
    border-radius: 15px 15px 0 0;
    height: 250px;
    object-fit: cover;
    width: 100%; }

.noshowtile {
  display: none; }

.kiosk_iframe {
  overflow: hidden; }
  .kiosk_iframe body {
    height: 100vh;
    overflow: hidden;
    width: 100vh; }

.kiosk-banner {
  -ms-flex-line-pack: center;
      align-content: center;
  background-color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px; }

.kiosk-bannerad {
  margin-bottom: 90px;
  width: auto; }

.list_image_tile {
  clear: both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center; }
  .list_image_tile::before, .list_image_tile::after {
    display: table;
    content: ' '; }
  .list_image_tile::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .list_image_tile {
      -ms-flex-line-pack: justify;
          align-content: space-between;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  @media screen and (min-width: 81.25em) {
    .list_image_tile {
      -ms-flex-line-pack: justify;
          align-content: space-between;
      max-height: 900px; } }

@media screen and (min-width: 81.25em) {
  .large_tiles {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 789px;
            flex: 0 0 789px; } }

.cookie-banner {
  background: #000;
  border-top: 4px solid #000;
  color: #fff;
  position: fixed;
  left: 0;
  bottom: 0;
  padding: 24px 32px 36px;
  -webkit-transition: bottom 1s;
  transition: bottom 1s;
  width: 100%;
  z-index: 8999; }
  .cookie-banner.hidden {
    bottom: -100vh; }
  .cookie-banner h4 {
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 8px; }
  .cookie-banner a {
    color: #fff; }

@media print, screen and (min-width: 64em) {
  .cookie-banner__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.cookie-banner__button {
  background-color: #eaefff !important;
  border-color: #eaefff !important;
  color: #000 !important; }
  .cookie-banner__button:hover {
    background-color: #ff080d !important;
    border-color: #ff080d !important;
    color: #fff !important; }

.cookie-banner__col_1 {
  padding: 0 24px 0 0;
  margin-bottom: 24px; }
  @media print, screen and (min-width: 64em) {
    .cookie-banner__col_1 {
      margin-bottom: 0; } }

.cookie-banner__col_2 {
  margin-left: auto; }

.smart__section {
  margin-top: 37.5px;
  margin-bottom: 62.5px; }
  @media print, screen and (min-width: 40em) {
    .smart__section:nth-child(odd) .smart__wrap {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; } }

@media print, screen and (min-width: 40em) {
  .smart__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.smart__cover {
  padding-bottom: 66%;
  min-height: 200px;
  position: relative;
  overflow: hidden; }
  @media print, screen and (min-width: 40em) {
    .smart__cover {
      width: 50%;
      padding-bottom: 29%; } }

.smart__image {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 100%;
  width: auto;
  max-width: initial;
  margin: auto; }

.smart__content {
  padding: 25px;
  background-color: #1b2326;
  margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .smart__content {
      width: 50%; } }
  .smart__content p {
    color: #ffffff; }

@media print, screen and (min-width: 40em) {
  .smart__logos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; } }

.smart__logo-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center; }
  @media print, screen and (min-width: 40em) {
    .smart__logo-wrap {
      max-width: 50%;
      padding-right: 25px; } }

.smart__paragraph {
  margin-top: 25px;
  margin-bottom: 25px; }

.smart__link {
  margin-top: 25px;
  margin-bottom: 25px; }

.smart__button {
  width: 100%;
  margin-top: 5px; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3ZlbmRvci9ub3JtYWxpemUuc2NzcyIsInN0eWxlLmNzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19zaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Zsb2F0LnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJfY29sb3Vycy5zY3NzIiwiX3R5cG9ncmFwaHkuc2NzcyIsIl91dGlsaXRpZXMuc2NzcyIsIm1vZHVsZXMvX2FjdGl2aXRpZXMtZmlsdGVyLnNjc3MiLCJtb2R1bGVzL19iZW5lZml0cy5zY3NzIiwibW9kdWxlcy9fYXJ0aWNsZS5zY3NzIiwibW9kdWxlcy9fYXV0b2NvbXBsZXRlLnNjc3MiLCJtb2R1bGVzL19ib3R0b20tbmF2LnNjc3MiLCJtb2R1bGVzL19icmVhZGNydW1iLnNjc3MiLCJtb2R1bGVzL19idXR0b24uc2NzcyIsIm1vZHVsZXMvX2NlbnRyZS1hYm91dC5zY3NzIiwibW9kdWxlcy9fY2VudHJlLWFjdGl2aXRpZXMuc2NzcyIsIm1vZHVsZXMvX2NlbnRyZS1maW5kZXIuc2NzcyIsIm1vZHVsZXMvX2NlbnRyZS1pbmZvLnNjc3MiLCJtb2R1bGVzL19jZW50cmUtbWVudS5zY3NzIiwibW9kdWxlcy9fY2VudHJlLW5ld3Muc2NzcyIsIm1vZHVsZXMvX2NlbnRyZS10aW1ldGFibGVzLnNjc3MiLCJtb2R1bGVzL19jb250YWN0LW1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbnRhY3Qtc2lkZWJhci5zY3NzIiwibW9kdWxlcy9fY29udGFjdC1mZWVkYmFjay5zY3NzIiwibW9kdWxlcy9fY29udGFjdC1lbnF1aXJpZXMuc2NzcyIsIm1vZHVsZXMvX2NvbnRlbnRodWItYXV0aG9ycy5zY3NzIiwibW9kdWxlcy9fY29udGVudGh1Yi1jYXRlZ29yaWVzLnNjc3MiLCJtb2R1bGVzL19jb250ZW50aHViLWZlYXR1cmVkLnNjc3MiLCJtb2R1bGVzL19jb250ZW50aHViLWxhdGVzdC5zY3NzIiwibW9kdWxlcy9fY29udGVudGh1Yi1tZW51LnNjc3MiLCJtb2R1bGVzL19kaXZpZGVyLnNjc3MiLCJtb2R1bGVzL19mYXFzLnNjc3MiLCJtb2R1bGVzL19mYXFzLXN1Z2dlc3Quc2NzcyIsIm1vZHVsZXMvX2ZhcXMtYW5jaG9yLWxpbmtzLnNjc3MiLCJtb2R1bGVzL19mZWF0dXJlZC1mYWNpbGl0aWVzLnNjc3MiLCJtb2R1bGVzL19mZWVsaW5nLWluc3BpcmVkLnNjc3MiLCJtb2R1bGVzL19mb290ZXIuc2NzcyIsIm1vZHVsZXMvX2Zvcm0uc2NzcyIsIm1vZHVsZXMvX2ZyZWVzd2ltLnNjc3MiLCJtb2R1bGVzL19nZW5lcmljLnNjc3MiLCJtb2R1bGVzL19nZW5lcmljLW1haW4uc2NzcyIsIm1vZHVsZXMvX2dlbmVyaWMtbW9iaWxlLW1lbnUuc2NzcyIsIm1vZHVsZXMvX2dlbmVyaWMtc2lkZWJhci5zY3NzIiwibW9kdWxlcy9fZ29vZ2xlLWFkdmVydHMuc2NzcyIsIm1vZHVsZXMvX2dyaWQtaGVscGVyLnNjc3MiLCJtb2R1bGVzL19oZWFkZXIuc2NzcyIsIm1vZHVsZXMvX2hlcm8uc2NzcyIsIm1vZHVsZXMvX2hvbWUtY2Fyb3VzZWwuc2NzcyIsIm1vZHVsZXMvX2hvbWUtdjItY2FsbG91dC5zY3NzIiwibW9kdWxlcy9faG9tZS12Mi1jb250ZW50LWJsb2NrLnNjc3MiLCJtb2R1bGVzL19ob21lLXYyLWxhdGVzdC5zY3NzIiwibW9kdWxlcy9fbGVzc29uLWxldmVscy5zY3NzIiwibW9kdWxlcy9fbGluay5zY3NzIiwibW9kdWxlcy9fbG9hZGVyLnNjc3MiLCJtb2R1bGVzL19sb2NhdGlvbi1maW5kZXIuc2NzcyIsIm1vZHVsZXMvX21hcC10b2dnbGUuc2NzcyIsIm1vZHVsZXMvX21vZGFsLnNjc3MiLCJtb2R1bGVzL19tZW1iZXJzaGlwLWJlbmVmaXRzLnNjc3MiLCJtb2R1bGVzL19tZW1iZXJzaGlwLWJ1bmRsZXMuc2NzcyIsIm1vZHVsZXMvX21lbWJlcnNoaXAtb2ZmZXIuc2NzcyIsIm1vZHVsZXMvX25hdi5zY3NzIiwibW9kdWxlcy9fbmV3cy1mbGFzaC5zY3NzIiwibW9kdWxlcy9fcGFnZS1pbnRyby5zY3NzIiwibW9kdWxlcy9fcG9zdC1saXN0LnNjc3MiLCJtb2R1bGVzL19yZWNpdGVtZS5zY3NzIiwibW9kdWxlcy9fc2Nyb2xsYm94LnNjc3MiLCJtb2R1bGVzL19zZWFyY2gtcmVzdWx0cy5zY3NzIiwibW9kdWxlcy9fdG9nZ2xlLnNjc3MiLCJtb2R1bGVzL19wbGFucy10ZWFzZXIuc2NzcyIsIm1vZHVsZXMvX3BsYW4tY2FyZC5zY3NzIiwibW9kdWxlcy9fa2lvc2stbWVudS5zY3NzIiwibW9kdWxlcy9fY29va2llLWJhbm5lci5zY3NzIiwibW9kdWxlcy9fc21hcnQtZXF1aXBtZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUNMSDs7R0FFRztBQ3NFSDs7OztHQUlHO0FDM0VELDRFQUE0RTtBQVE1RTtFQUNFLGtCQUFpQjtFQUNqQiwrQkFBOEIsRUFDL0I7O0FBT0Q7RUFDRSxVQUFTLEVBQ1Y7O0FBS0Q7RUFDRSxlQUFjO0VBQ2QsaUJBQWdCLEVBQ2pCOztBQVFEO0VBQ0UsZ0NBQXVCO1VBQXZCLHdCQUF1QjtFQUN2QixVQUFTO0VBQ1Qsa0JBQWlCLEVBQ2xCOztBQUtEO0VBQ0Usa0NBQWlDO0VBQ2pDLGVBQWMsRUFDZjs7QUFPRDtFQUNFLDhCQUE2QixFQUM5Qjs7QUFLRDtFQUNFLG9CQUFtQjtFQUNuQiwyQkFBMEI7RUFDMUIsa0NBQWlDLEVBQ2xDOztBQUlEOztFQUVFLG9CQUFtQixFQUNwQjs7QUFLRDs7O0VBR0Usa0NBQWlDO0VBQ2pDLGVBQWMsRUFDZjs7QUFJRDtFQUNFLGVBQWMsRUFDZjs7QUFLRDs7RUFFRSxlQUFjO0VBQ2QsZUFBYztFQUNkLG1CQUFrQjtFQUNsQix5QkFBd0IsRUFDekI7O0FBRUQ7RUFDRSxnQkFBZSxFQUNoQjs7QUFFRDtFQUNFLFlBQVcsRUFDWjs7QUFPRDtFQUNFLG1CQUFrQixFQUNuQjs7QUFRRDs7Ozs7RUFLRSxxQkFBb0I7RUFDcEIsZ0JBQWU7RUFDZixrQkFBaUI7RUFDakIsVUFBUyxFQUNWOztBQUtEOztFQUVFLGtCQUFpQixFQUNsQjs7QUFLRDs7RUFFRSxxQkFBb0IsRUFDckI7O0FBSUQ7Ozs7RUFJRSwyQkFBMEIsRUFDM0I7O0FBSUQ7Ozs7RUFJRSxtQkFBa0I7RUFDbEIsV0FBVSxFQUNYOztBQUlEOzs7O0VBSUUsK0JBQThCLEVBQy9COztBQUlEO0VBQ0UsK0JBQThCLEVBQy9COztBQU9EO0VBQ0UsK0JBQXNCO1VBQXRCLHVCQUFzQjtFQUN0QixlQUFjO0VBQ2QsZUFBYztFQUNkLGdCQUFlO0VBQ2YsV0FBVTtFQUNWLG9CQUFtQixFQUNwQjs7QUFJRDtFQUNFLHlCQUF3QixFQUN6Qjs7QUFJRDtFQUNFLGVBQWMsRUFDZjs7QUNyRkg7O0VENEZJLCtCQUFzQjtVQUF0Qix1QkFBc0I7RUFDdEIsV0FBVSxFQUNYOztBQ3pGSDs7RUQrRkksYUFBWSxFQUNiOztBQzVGSDtFRGtHSSw4QkFBNkI7RUFDN0IscUJBQW9CLEVBQ3JCOztBQ2hHSDtFRHFHSSx5QkFBd0IsRUFDekI7O0FBS0Q7RUFDRSwyQkFBMEI7RUFDMUIsY0FBYSxFQUNkOztBQU9EO0VBQ0UsZUFBYyxFQUNmOztBQUlEO0VBQ0UsbUJBQWtCLEVBQ25COztBQU9EO0VBQ0UsY0FBYSxFQUNkOztBQ3RISDtFRDJISSxjQUFhLEVBQ2Q7O0FFNUlEO0VBQ0Usd0dBQWdELEVBQ2pEOztBRnBJRDtFRXVJRSwrQkFBc0I7VUFBdEIsdUJBQXNCO0VBQ3RCLGdCSjNGbUIsRUk0RnBCOztBQUdEOzs7RUFHRSw0QkFBbUI7VUFBbkIsb0JBQW1CLEVBQ3BCOztBRnRJRDtFRTBJRSxVQUFTO0VBQ1QsV0FBVTtFQUVWLG9CSjVGVztFSThGWCxvRUozRnFFO0VJNEZyRSxvQkp4RnlCO0VJeUZ6QixpQko1R21CO0VJNkduQixlSmxHVztFSXFHVCxvQ0FBbUM7RUFDbkMsbUNBQWtDLEVBRXJDOztBRnZERDtFRTJERSxzQkFBcUI7RUFDckIsdUJBQXNCO0VBR3RCLGdCQUFlO0VBQ2YsYUFBWTtFQUNaLGdDQUErQixFQUNoQzs7QUYyQkQ7RUV2QkUsYUFBWTtFQUNaLGlCQUFnQjtFQUNoQixpQkovR2EsRUlnSGQ7O0FBR0Q7RUFDRSwrQkFBc0I7VUFBdEIsdUJBQXNCO0VBQ3RCLFlBQVc7RUFDWCxpQkp0SGEsRUl1SGQ7O0FBSUQ7Ozs7OztFQUtJLDJCQUEwQixFQUMzQjs7QUFJSDtFQUVFLFdBQVU7RUFDVix5QkFBZ0I7VUFBaEIsaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxpQkoxSWE7RUkySWIsd0JBQXVCO0VBQ3ZCLGVBQWM7RUFDZCxhQXZHdUIsRUF3R3hCO0VETEQ7SUVaRSxXQUFVLEVBQ1g7O0FIN0pEO0VFaUxFLGVBQWMsRUFDZjs7QUZsR0Q7Ozs7O0VFMEdFLHFCQUFvQixFQUNyQjs7QUFHRDtFQUNFLDBCQUF5QixFQUMxQjs7QUFFRDtFQUNFLHlCQUF3QixFQUN6Qjs7QUV2TkQ7RUNzRUEsaUJDVHVEO0VEMUJyRCxtQkFBa0I7RUFDbEIsa0JBQWlCLEVEU2xCO0VEaUdEO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VDM0pEO0lHTEUsaUJEdUVTO0lDdEVULGdCRHNFUyxFRjNETjtFQVBMO0lDeURFLHVCQUYrRDtJQUcvRCxzQkFIK0QsRURyQzlEO0lJbUlHO01KckpOO1FDeURFLHdCQUYrRDtRQUcvRCx1QkFIK0QsRURyQzlELEVBQUE7SUltSUc7TUpySk47UUN5REUsd0JBRitEO1FBRy9ELHVCQUgrRCxFRHJDOUQsRUFBQTtJQWxCSDtNQWVNLGdCQUFlO01BQ2YsZUFBYyxFQUNmO0VBakJMO0lDc0VBLGdCQUhhLEVEdkNWO0lBNUJIO01BeUJNLG1CQUFrQjtNQUNsQixrQkFBaUIsRUFDbEI7RUEzQkw7SUNzRUEsZ0JBSGEsRURuQ1Y7RUFoQ0g7SUdMRSx1QkFGcUM7SUFHckMsc0JBSHFDLEVIZ0Q5QjtFQXpDVDtJR0xFLHdCQUZxQztJQUdyQyx1QkFIcUMsRUhnRDlCOztBQU9UO0VLN0RBLFlDbUkyRDtFQ25IM0QsWVQ0RnlEO0VLcEd2RCx1QkFGcUM7RUFHckMsc0JBSHFDLEVIK0R0QztFSTZGSztJSnJHTjtNR3JERSx3QkFGcUM7TUFHckMsdUJBSHFDLEVIK0R0QyxFQUFBO0VRaEVDO0lBQ0UsWVZzR3FEO0lVckdyRCxZQUFXLEVBQ1o7RUFJQztJQUNFLGFWZ0dvRCxFVS9GckQ7RUE0Q0w7SUFDRSxZVmlEdUQsRVVoRHhEOztBUmFEO0VBQ0UsWUFBVyxFQUNaOztBQUdEO0VBQ0UsZ0JBQWU7RUFDZixlQUFjO0VBQ2QsaUJBQWdCO0VBQ2hCLGdCQUFlLEVBQ2hCOztBQUtHO0VLeEZKLGdCQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixlQUhtRCxFUjZFNUM7O0FBSUQ7RVEvRU4sbUJBQWtCO0VBQ2xCLGdCQUhtRCxFUm1GNUM7O0FBUUg7RVEzRE4sZ0JGK0UyRCxFTmxCcEQ7O0FBekJIO0VLeEZKLGlCQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixnQkFIbUQsRVI2RTVDOztBQUlEO0VRL0VOLG1CQUFrQjtFQUNsQixpQkFIbUQsRVJtRjVDOztBQVFIO0VRM0ROLHNCRitFMkQsRU5sQnBEOztBQXpCSDtFS3hGSixXQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixVQUhtRCxFUjZFNUM7O0FBSUQ7RVEvRU4sbUJBQWtCO0VBQ2xCLFdBSG1ELEVSbUY1Qzs7QUFRSDtFUTNETix1QkYrRTJELEVObEJwRDs7QUF6Qkg7RUt4RkosaUJDbUkyRCxFTnpDdEQ7O0FBS0c7RVF6RU4sbUJBQWtCO0VBQ2xCLGdCQUhtRCxFUjZFNUM7O0FBSUQ7RVEvRU4sbUJBQWtCO0VBQ2xCLGlCQUhtRCxFUm1GNUM7O0FBUUg7RVEzRE4saUJGK0UyRCxFTmxCcEQ7O0FBekJIO0VLeEZKLGlCQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixnQkFIbUQsRVI2RTVDOztBQUlEO0VRL0VOLG1CQUFrQjtFQUNsQixpQkFIbUQsRVJtRjVDOztBQVFIO0VRM0ROLHVCRitFMkQsRU5sQnBEOztBQXpCSDtFS3hGSixXQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixVQUhtRCxFUjZFNUM7O0FBSUQ7RVEvRU4sbUJBQWtCO0VBQ2xCLFdBSG1ELEVSbUY1Qzs7QUFRSDtFUTNETix1QkYrRTJELEVObEJwRDs7QUF6Qkg7RUt4RkosaUJDbUkyRCxFTnpDdEQ7O0FBS0c7RVF6RU4sbUJBQWtCO0VBQ2xCLGdCQUhtRCxFUjZFNUM7O0FBSUQ7RVEvRU4sbUJBQWtCO0VBQ2xCLGlCQUhtRCxFUm1GNUM7O0FBUUg7RVEzRE4saUJGK0UyRCxFTmxCcEQ7O0FBekJIO0VLeEZKLGlCQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixnQkFIbUQsRVI2RTVDOztBQUlEO0VRL0VOLG1CQUFrQjtFQUNsQixpQkFIbUQsRVJtRjVDOztBQVFIO0VRM0ROLHVCRitFMkQsRU5sQnBEOztBQXpCSDtFS3hGSixXQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixVQUhtRCxFUjZFNUM7O0FBSUQ7RVEvRU4sbUJBQWtCO0VBQ2xCLFdBSG1ELEVSbUY1Qzs7QUFRSDtFUTNETix1QkYrRTJELEVObEJwRDs7QUF6Qkg7RUt4RkosaUJDbUkyRCxFTnpDdEQ7O0FBS0c7RVF6RU4sbUJBQWtCO0VBQ2xCLGdCQUhtRCxFUjZFNUM7O0FBSUQ7RVEvRU4sbUJBQWtCO0VBQ2xCLGlCQUhtRCxFUm1GNUM7O0FBUUg7RVEzRE4saUJGK0UyRCxFTmxCcEQ7O0FBekJIO0VLeEZKLGlCQ21JMkQsRU56Q3REOztBQUtHO0VRekVOLG1CQUFrQjtFQUNsQixnQkFIbUQsRVI2RTVDOztBQUlEO0VRL0VOLG1CQUFrQjtFQUNsQixpQkFIbUQsRVJtRjVDOztBQVFIO0VRM0ROLHVCRitFMkQsRU5sQnBEOztBQXpCSDtFS3hGSixZQ21JMkQsRU56Q3REOztBQXFCQztFUTNETix1QkYrRTJELEVObEJwRDs7QUFNSDtFUy9HRixZWG9HdUQ7RVduR3ZELFlBQXVCLEVBaUN4QjtFVDZFRztJU3ZGQSxZQUFXLEVBQ1o7RVRzRkM7SVNuRkEsWUFBVyxFQUNaO0VUa0ZDO0lTL0VBLFlYb0VxRCxFV25FdEQ7O0FUOEVDO0VTL0dGLFlYb0d1RDtFV25HdkQsV0FBdUIsRUFpQ3hCO0VUNkVHO0lTdkZBLFlBQVcsRUFDWjtFVHNGQztJU25GQSxZQUFXLEVBQ1o7RVRrRkM7SVMvRUEsWVhvRXFELEVXbkV0RDs7QVQ4RUM7RVMvR0YsWVhvR3VEO0VXbkd2RCxpQkFBdUIsRUFpQ3hCO0VUNkVHO0lTdkZBLFlBQVcsRUFDWjtFVHNGQztJU25GQSxZQUFXLEVBQ1o7RVRrRkM7SVMvRUEsWVhvRXFELEVXbkV0RDs7QVQ4RUM7RVMvR0YsWVhvR3VEO0VXbkd2RCxXQUF1QixFQWlDeEI7RVQ2RUc7SVN2RkEsWUFBVyxFQUNaO0VUc0ZDO0lTbkZBLFlBQVcsRUFDWjtFVGtGQztJUy9FQSxZWG9FcUQsRVduRXREOztBVDhFQztFUy9HRixZWG9HdUQ7RVduR3ZELFdBQXVCLEVBaUN4QjtFVDZFRztJU3ZGQSxZQUFXLEVBQ1o7RVRzRkM7SVNuRkEsWUFBVyxFQUNaO0VUa0ZDO0lTL0VBLFlYb0VxRCxFV25FdEQ7O0FUOEVDO0VTL0dGLFlYb0d1RDtFV25HdkQsaUJBQXVCLEVBaUN4QjtFVDZFRztJU3ZGQSxZQUFXLEVBQ1o7RVRzRkM7SVNuRkEsWUFBVyxFQUNaO0VUa0ZDO0lTL0VBLFlYb0VxRCxFV25FdEQ7O0FUOEVDO0VTL0dGLFlYb0d1RDtFV25HdkQsaUJBQXVCLEVBaUN4QjtFVDZFRztJU3ZGQSxZQUFXLEVBQ1o7RVRzRkM7SVNuRkEsWUFBVyxFQUNaO0VUa0ZDO0lTL0VBLFlYb0VxRCxFV25FdEQ7O0FUOEVDO0VTL0dGLFlYb0d1RDtFV25HdkQsYUFBdUIsRUFpQ3hCO0VUNkVHO0lTdkZBLFlBQVcsRUFDWjtFVHNGQztJU25GQSxZQUFXLEVBQ1o7RVRrRkM7SVMvRUEsWVhvRXFELEVXbkV0RDs7QVRvRkQ7RUdySEEsaUJEdUVTO0VDdEVULGdCRHNFUyxFRitDdUM7O0FBRGhEO0VBSUksZ0JBQWU7RUFDZixlQUFjLEVBQ2Y7O0FBR0g7RUFDRSxnQkFBZTtFQUNmLGVBQWMsRUFDZjs7QUFFRDtFR25JQSx1QkFGcUM7RUFHckMsc0JBSHFDLEVIc0lvQjs7QUFLdkQ7RVFqSEYsbUJBQWtCO0VBQ2xCLGtCQUFpQixFUmtIZDtFUXZISDtJQUNFLFlBQVc7SUFDWCxZQUFXLEVBQ1o7O0FSOEhDO0VRakhKLGlCQUFnQjtFQUNoQixnQkFBZTtFQUNmLGVBQWMsRVJpSFQ7RVExSkg7SUFDRSxZVnNHcUQ7SVVyR3JELFlBQVcsRUFDWjtFQUlDO0lBQ0UsYVZnR29ELEVVL0ZyRDs7QUpvSkM7RUoxRUY7SUt4RkosZ0JDbUkyRCxFTnpDdEQ7RUFLRztJUXpFTixtQkFBa0I7SUFDbEIsZUFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUm1GNUM7RUFRSDtJUTNETixnQkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixpQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixnQkFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUm1GNUM7RUFRSDtJUTNETixzQkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixXQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLFVBSG1ELEVSNkU1QztFQUlEO0lRL0VOLG1CQUFrQjtJQUNsQixXQUhtRCxFUm1GNUM7RUFRSDtJUTNETix1QkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixpQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixnQkFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUm1GNUM7RUFRSDtJUTNETixpQkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixpQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixnQkFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUm1GNUM7RUFRSDtJUTNETix1QkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixXQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLFVBSG1ELEVSNkU1QztFQUlEO0lRL0VOLG1CQUFrQjtJQUNsQixXQUhtRCxFUm1GNUM7RUFRSDtJUTNETix1QkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixpQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixnQkFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUm1GNUM7RUFRSDtJUTNETixpQkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixpQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixnQkFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUm1GNUM7RUFRSDtJUTNETix1QkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixXQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLFVBSG1ELEVSNkU1QztFQUlEO0lRL0VOLG1CQUFrQjtJQUNsQixXQUhtRCxFUm1GNUM7RUFRSDtJUTNETix1QkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixpQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixnQkFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUm1GNUM7RUFRSDtJUTNETixpQkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixpQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixnQkFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUm1GNUM7RUFRSDtJUTNETix1QkYrRTJELEVObEJwRDtFQXpCSDtJS3hGSixZQ21JMkQsRU56Q3REO0VBcUJDO0lRM0ROLHVCRitFMkQsRU5sQnBEO0VBTUg7SVMvR0YsWVhvR3VEO0lXbkd2RCxZQUF1QixFQWlDeEI7SVQ2RUc7TVN2RkEsWUFBVyxFQUNaO0lUc0ZDO01TbkZBLFlBQVcsRUFDWjtJVGtGQztNUy9FQSxZWG9FcUQsRVduRXREO0VUOEVDO0lTL0dGLFlYb0d1RDtJV25HdkQsV0FBdUIsRUFpQ3hCO0lUNkVHO01TdkZBLFlBQVcsRUFDWjtJVHNGQztNU25GQSxZQUFXLEVBQ1o7SVRrRkM7TVMvRUEsWVhvRXFELEVXbkV0RDtFVDhFQztJUy9HRixZWG9HdUQ7SVduR3ZELGlCQUF1QixFQWlDeEI7SVQ2RUc7TVN2RkEsWUFBVyxFQUNaO0lUc0ZDO01TbkZBLFlBQVcsRUFDWjtJVGtGQztNUy9FQSxZWG9FcUQsRVduRXREO0VUOEVDO0lTL0dGLFlYb0d1RDtJV25HdkQsV0FBdUIsRUFpQ3hCO0lUNkVHO01TdkZBLFlBQVcsRUFDWjtJVHNGQztNU25GQSxZQUFXLEVBQ1o7SVRrRkM7TVMvRUEsWVhvRXFELEVXbkV0RDtFVDhFQztJUy9HRixZWG9HdUQ7SVduR3ZELFdBQXVCLEVBaUN4QjtJVDZFRztNU3ZGQSxZQUFXLEVBQ1o7SVRzRkM7TVNuRkEsWUFBVyxFQUNaO0lUa0ZDO01TL0VBLFlYb0VxRCxFV25FdEQ7RVQ4RUM7SVMvR0YsWVhvR3VEO0lXbkd2RCxpQkFBdUIsRUFpQ3hCO0lUNkVHO01TdkZBLFlBQVcsRUFDWjtJVHNGQztNU25GQSxZQUFXLEVBQ1o7SVRrRkM7TVMvRUEsWVhvRXFELEVXbkV0RDtFVDhFQztJUy9HRixZWG9HdUQ7SVduR3ZELGlCQUF1QixFQWlDeEI7SVQ2RUc7TVN2RkEsWUFBVyxFQUNaO0lUc0ZDO01TbkZBLFlBQVcsRUFDWjtJVGtGQztNUy9FQSxZWG9FcUQsRVduRXREO0VUOEVDO0lTL0dGLFlYb0d1RDtJV25HdkQsYUFBdUIsRUFpQ3hCO0lUNkVHO01TdkZBLFlBQVcsRUFDWjtJVHNGQztNU25GQSxZQUFXLEVBQ1o7SVRrRkM7TVMvRUEsWVhvRXFELEVXbkV0RDtFVG9GRDtJR3JIQSxpQkR1RVM7SUN0RVQsZ0JEc0VTLEVGK0N1QztFQURoRDtJQUlJLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBR0g7SUFDRSxnQkFBZTtJQUNmLGVBQWMsRUFDZjtFQUVEO0lHbklBLHdCQUZxQztJQUdyQyx1QkFIcUMsRUhzSW9CO0VBS3ZEO0lRakhGLG1CQUFrQjtJQUNsQixrQkFBaUIsRVJrSGQ7SVF2SEg7TUFDRSxZQUFXO01BQ1gsWUFBVyxFQUNaO0VSOEhDO0lRakhKLGlCQUFnQjtJQUNoQixnQkFBZTtJQUNmLGVBQWMsRVJpSFQ7SVExSkg7TUFDRSxZVnNHcUQ7TVVyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVZnR29ELEVVL0ZyRCxFQUFBOztBSm9KQztFSjFFRjtJS3hGSixnQkNtSTJELEVOekN0RDtFQUtHO0lRekVOLG1CQUFrQjtJQUNsQixlQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVSbUY1QztFQVFIO0lRM0ROLGdCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLGlCQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsaUJBSG1ELEVSbUY1QztFQVFIO0lRM0ROLHNCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLFdDbUkyRCxFTnpDdEQ7RUFLRztJUXpFTixtQkFBa0I7SUFDbEIsVUFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLFdBSG1ELEVSbUY1QztFQVFIO0lRM0ROLHVCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLGlCQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsaUJBSG1ELEVSbUY1QztFQVFIO0lRM0ROLGlCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLGlCQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsaUJBSG1ELEVSbUY1QztFQVFIO0lRM0ROLHVCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLFdDbUkyRCxFTnpDdEQ7RUFLRztJUXpFTixtQkFBa0I7SUFDbEIsVUFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLFdBSG1ELEVSbUY1QztFQVFIO0lRM0ROLHVCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLGlCQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsaUJBSG1ELEVSbUY1QztFQVFIO0lRM0ROLGlCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLGlCQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsaUJBSG1ELEVSbUY1QztFQVFIO0lRM0ROLHVCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLFdDbUkyRCxFTnpDdEQ7RUFLRztJUXpFTixtQkFBa0I7SUFDbEIsVUFIbUQsRVI2RTVDO0VBSUQ7SVEvRU4sbUJBQWtCO0lBQ2xCLFdBSG1ELEVSbUY1QztFQVFIO0lRM0ROLHVCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLGlCQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsaUJBSG1ELEVSbUY1QztFQVFIO0lRM0ROLGlCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLGlCQ21JMkQsRU56Q3REO0VBS0c7SVF6RU4sbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUjZFNUM7RUFJRDtJUS9FTixtQkFBa0I7SUFDbEIsaUJBSG1ELEVSbUY1QztFQVFIO0lRM0ROLHVCRitFMkQsRU5sQnBEO0VBekJIO0lLeEZKLFlDbUkyRCxFTnpDdEQ7RUFxQkM7SVEzRE4sdUJGK0UyRCxFTmxCcEQ7RUFNSDtJUy9HRixZWG9HdUQ7SVduR3ZELFlBQXVCLEVBaUN4QjtJVDZFRztNU3ZGQSxZQUFXLEVBQ1o7SVRzRkM7TVNuRkEsWUFBVyxFQUNaO0lUa0ZDO01TL0VBLFlYb0VxRCxFV25FdEQ7RVQ4RUM7SVMvR0YsWVhvR3VEO0lXbkd2RCxXQUF1QixFQWlDeEI7SVQ2RUc7TVN2RkEsWUFBVyxFQUNaO0lUc0ZDO01TbkZBLFlBQVcsRUFDWjtJVGtGQztNUy9FQSxZWG9FcUQsRVduRXREO0VUOEVDO0lTL0dGLFlYb0d1RDtJV25HdkQsaUJBQXVCLEVBaUN4QjtJVDZFRztNU3ZGQSxZQUFXLEVBQ1o7SVRzRkM7TVNuRkEsWUFBVyxFQUNaO0lUa0ZDO01TL0VBLFlYb0VxRCxFV25FdEQ7RVQ4RUM7SVMvR0YsWVhvR3VEO0lXbkd2RCxXQUF1QixFQWlDeEI7SVQ2RUc7TVN2RkEsWUFBVyxFQUNaO0lUc0ZDO01TbkZBLFlBQVcsRUFDWjtJVGtGQztNUy9FQSxZWG9FcUQsRVduRXREO0VUOEVDO0lTL0dGLFlYb0d1RDtJV25HdkQsV0FBdUIsRUFpQ3hCO0lUNkVHO01TdkZBLFlBQVcsRUFDWjtJVHNGQztNU25GQSxZQUFXLEVBQ1o7SVRrRkM7TVMvRUEsWVhvRXFELEVXbkV0RDtFVDhFQztJUy9HRixZWG9HdUQ7SVduR3ZELGlCQUF1QixFQWlDeEI7SVQ2RUc7TVN2RkEsWUFBVyxFQUNaO0lUc0ZDO01TbkZBLFlBQVcsRUFDWjtJVGtGQztNUy9FQSxZWG9FcUQsRVduRXREO0VUOEVDO0lTL0dGLFlYb0d1RDtJV25HdkQsaUJBQXVCLEVBaUN4QjtJVDZFRztNU3ZGQSxZQUFXLEVBQ1o7SVRzRkM7TVNuRkEsWUFBVyxFQUNaO0lUa0ZDO01TL0VBLFlYb0VxRCxFV25FdEQ7RVQ4RUM7SVMvR0YsWVhvR3VEO0lXbkd2RCxhQUF1QixFQWlDeEI7SVQ2RUc7TVN2RkEsWUFBVyxFQUNaO0lUc0ZDO01TbkZBLFlBQVcsRUFDWjtJVGtGQztNUy9FQSxZWG9FcUQsRVduRXREO0VUb0ZEO0lHckhBLGlCRHVFUztJQ3RFVCxnQkRzRVMsRUYrQ3VDO0VBRGhEO0lBSUksZ0JBQWU7SUFDZixlQUFjLEVBQ2Y7RUFHSDtJQUNFLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBRUQ7SUduSUEsd0JBRnFDO0lBR3JDLHVCQUhxQyxFSHNJb0I7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cUM7SUFHckMsc0JBSHFDLEUwQ2lCeEMsRUFBQTtFekMySU87SXlDL0lSO00xQ1hJLHdCQUZxQztNQUdyQyx1QkFIcUMsRTBDaUJ4QyxFQUFBOztBekMySU87SUk3Sko7TUFDRSxZVnNHcUQ7TVVyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVZnR29ELEVVL0ZyRCxFQUFBOztBcUNXUDtFQUNJLGlDbkQ0QlcsRW1EWmQ7RXpDd0hPO0l5Q3pJUjtNeEN6QkUsV0NtSTJEO01DbkgzRCxZVDRGeUQ7TUtwR3ZELHVCQUZxQztNQUdyQyxzQkFIcUM7TUs4Q3ZDLHVCRitFMkQ7TXVDcEdyRCxpQkFBZ0I7TUFDaEIsaUJBQWdCLEVBVXZCLEVBQUE7RXpDd0hPO0l5Q3pJUjtNMUNqQkksd0JBRnFDO01BR3JDLHVCQUhxQyxFMENvQ3hDLEVBQUE7RXpDd0hPO01JN0pKO1FBQ0UsWVZzR3FEO1FVckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGFWZ0dvRCxFVS9GckQsRUFBQTtFSm9KQztJeUN6SVI7TUFhZ0IsV0FBVSxFQUNiLEVBQUE7O0FBS2I7RUFDSSxpQ25EU1csRW1ERmQ7RXpDOEdPO0l5Q3RIUjtNeEM1Q0UsV0NtSTJEO01DbkgzRCxZVDRGeUQ7TUtwR3ZELHVCQUZxQztNQUdyQyxzQkFIcUM7TTBDMkNqQyxpQkFBZ0I7TUFDaEIsaUJBQWdCLEVBRXZCLEVBQUE7RXpDOEdPO0l5Q3RIUjtNMUNwQ0ksd0JBRnFDO01BR3JDLHVCQUhxQyxFMEM4Q3hDLEVBQUE7RXpDOEdPO01JN0pKO1FBQ0UsWVZzR3FEO1FVckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGFWZ0dvRCxFVS9GckQsRUFBQTs7QUpvSkM7RXlDNUdSO0l4Q3RERSxXQ21JMkQ7SUNuSDNELFlUNEZ5RDtJS3BHdkQsdUJBRnFDO0lBR3JDLHNCQUhxQztJMENvRGpDLGlCQUFnQixFQXVCdkIsRUFBQTtFekNpRk87SXlDNUdSO00xQzlDSSx3QkFGcUM7TUFHckMsdUJBSHFDLEUwQzJFeEMsRUFBQTs7QXpDaUZPO0lJN0pKO01BQ0UsWVZzR3FEO01Vckdy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O0U0QzNKUjtJQUVRLHFCQUFhO0lBQWIscUJBQWE7SUFBYixjQUFhO0lBQ2Isb0JBQWM7UUFBZCxtQkFBYztZQUFkLGVBQWMsRUFFckIsRUFBQTs7QUFFRDtFQUNJLG9CdER1Q1csRXNEM0JkO0U1Q3VJTztJNENwSlI7TTNDZEUsaUJDbUkyRDtNQ25IM0QsWVQ0RnlEO01LcEd2RCx1QkFGcUM7TUFHckMsc0JBSHFDO01LOEN2QyxzQkYrRTJEO00wQy9HckQsYUFBWSxFQU9uQixFQUFBO0U1Q3VJTztJNENwSlI7TTdDTkksd0JBRnFDO01BR3JDLHVCQUhxQyxFNkNxQnhDLEVBQUE7RTVDdUlPO01JN0pKO1FBQ0UsWVZzR3FEO1FVckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGFWZ0dvRCxFVS9GckQsRUFBQTtFSnlKQztJNEN6SlI7TTNDZEUsV0NtSTJEO01DbkgzRCxZVDRGeUQ7TUtwR3ZELHVCQUZxQztNQUdyQyxzQkFIcUM7TUs4Q3ZDLGdCRitFMkQsRTBDeEc1RCxFQUFBO0U1Q3VJTztJNENwSlI7TTdDTkksd0JBRnFDO01BR3JDLHVCQUhxQyxFNkNxQnhDLEVBQUE7RTVDNElPO01JbEtKO1FBQ0UsWVZzR3FEO1FVckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGFWZ0dvRCxFVS9GckQsRUFBQTs7QUpvSkM7RTRDcklSO0lBRVEsbUJBQWtCLEVBRXpCLEVBQUE7O0E1Q2lJTztFNEMvSFI7STNDbkNFLFdDbUkyRDtJQ25IM0QsWVQ0RnlEO0lLcEd2RCx1QkFGcUM7SUFHckMsc0JBSHFDO0k2Q2dDakMsb0JuQ3JCdUI7SW1Dc0J2QixhQUFZLEVBRW5CLEVBQUE7RTVDeUhPO0k0Qy9IUjtNN0MzQkksd0JBRnFDO01BR3JDLHVCQUhxQyxFNkNtQ3hDLEVBQUE7O0E1Q3lITztJSTdKSjtNQUNFLFlWc0dxRDtNVXJHckQsWUFBVyxFQUNaO0lBSUM7TUFDRSxhVmdHb0QsRVUvRnJELEVBQUE7O0F5QzVCUDtFQUNJLDBCL0N1RnFELEUrQzlFeEQ7RTdDc0tPO0k2Q2hMUjtNQUlRLDRCL0NvRmlELEUrQzlFeEQs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YTtJQUFiLHFCQUFhO0lBQWIsY0FBYSxFQUVwQixFQUFBOztBQUVEO0VBQ0ksb0JBQW1CO0VBQ25CLGtCQUFpQjtFQUNqQixtQkFBa0I7RUFDbEIsaUJBQWdCLEVBTW5CO0U3RTBJRztJNkVwSko7TUFPUSxXQUFVO01BQ1Ysb0JBQW1CLEVBRTFCLEVBQUE7O0FBRUQ7RUFDSSxtQkFBa0I7RUFDbEIsT0FBTTtFQUNOLFVBQVM7RUFDVCxvQ0FBMkI7TUFBM0IsZ0NBQTJCO1VBQTNCLDRCQUEyQjtFQUMzQixhQUFZO0VBQ1osWUFBVztFQUNYLG1CQUFrQjtFQUNsQixhQUFZLEVBQ2Y7O0FBRUQ7RUFFSSxjQXBEUztFQXFEVCwwQnBFOUN1QjtFb0UrQ3ZCLGlCQUFnQixFQVNuQjtFN0VnSEc7STZFN0hKO01BT1EsV0FBVSxFQU1qQixFQUFBO0VBYkE7SUFXTyxldkZNRyxFdUZMTjs7QTdFaUhEO0U2RTlHSjtJQUlRLHFCQUFhO0lBQWIscUJBQWE7SUFBYixjQUFhO0lBQ2IsK0JBQW1CO0lBQW5CLDhCQUFtQjtRQUFuQix3QkFBbUI7WUFBbkIsb0JBQW1CLEVBRTFCLEVBQUE7O0FBRUQ7RUFDSSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDRCQUFrQjtNQUFsQixtQkFBa0IsRUFNckI7RTdFNkZHO0k2RXJHSjtNQUtRLGVBQWM7TUFDZCxvQkFoRkssRUFrRlosRUFBQTs7QUFNRDtFQUNJLGlCQXpGUztFQTBGVCxvQkExRlMsRUEyRlo7O0FBRUQ7RUFDSSxpQkE5RlM7RUErRlQsb0JBL0ZTLEVBZ0daOztBQUVEO0VBQ0ksWUFBVztFQUNYLGdCQUFlLEVBQ2xCIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXNcbiAqIFZlcnNpb24gNi42LjNcbiAqIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIC0tLSBEZXBlbmRlbmNpZXMgLS0tXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZSxcbiAgJHh5LWdyaWQ6ICR4eS1ncmlkXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpZiAkeHktZ3JpZCB7XG4gICAgJHh5LWdyaWQ6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8vIEdsb2JhbCBzdHlsZXNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbiAgLy8gR3JpZHNcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICAvLyBCYXNpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuICAvLyBDb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICAvLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuXG4gIC8vIExheW91dCBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuXG4gIC8vIEhlbHBlcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuICBAaWYgJGZsZXggeyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlczsgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGlmICRwcm90b3R5cGUgeyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzOyB9XG59XG4iLCIvKipcbiAqIFNwcml0ZSBzZXR0aW5nc1xuICovXG4kaWVTcHJpdGU6ICcubHQtaWU5JyAhZGVmYXVsdDtcbiRzcHJpdGU6IG1hcC1nZXQoJGljb25zLCBzcHJpdGUpICFkZWZhdWx0O1xuXG5cbi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDbG9zZSBCdXR0b25cbi8vICAxNS4gRHJpbGxkb3duXG4vLyAgMTYuIERyb3Bkb3duXG4vLyAgMTcuIERyb3Bkb3duIE1lbnVcbi8vICAxOC4gRmxleCBWaWRlb1xuLy8gIDE5LiBGb3Jtc1xuLy8gIDIwLiBMYWJlbFxuLy8gIDIxLiBNZWRpYSBPYmplY3Rcbi8vICAyMi4gTWVudVxuLy8gIDIzLiBNZXRlclxuLy8gIDI0LiBPZmYtY2FudmFzXG4vLyAgMjUuIE9yYml0XG4vLyAgMjYuIFBhZ2luYXRpb25cbi8vICAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjguIFJldmVhbFxuLy8gIDI5LiBTbGlkZXJcbi8vICAzMC4gU3dpdGNoXG4vLyAgMzEuIFRhYmxlXG4vLyAgMzIuIFRhYnNcbi8vICAzMy4gVGh1bWJuYWlsXG4vLyAgMzQuIFRpdGxlIEJhclxuLy8gIDM1LiBUb29sdGlwXG4vLyAgMzYuIFRvcCBCYXJcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMjE5OWU4LFxuICBzZWNvbmRhcnk6ICM3NzcsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjZWM1ODQwLFxuKTtcbiRsaWdodC1ncmF5OiAjZTZlNmU2O1xuJG1lZGl1bS1ncmF5OiAjY2FjYWNhO1xuJGRhcmstZ3JheTogIzhhOGE4YTtcbiRibGFjazogIzBhMGEwYTtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC1wYWRkaW5nOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLWZsZXhib3g6IGZhbHNlO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbi8vIDIuIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1vYmlsZTogNDUwcHgsXG4gIG1lZGl1bTogNjQwcHgsXG4gIHRhYmxldDogNzY4cHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTMwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pO1xuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogOHB4LFxuICBtZWRpdW06IDEycHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItc2l6ZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAyNCxcbiAgICAnaDInOiAyMCxcbiAgICAnaDMnOiAxOSxcbiAgICAnaDQnOiAxOCxcbiAgICAnaDUnOiAxNyxcbiAgICAnaDYnOiAxNixcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogNDgsXG4gICAgJ2gyJzogNDAsXG4gICAgJ2gzJzogMzEsXG4gICAgJ2g0JzogMjUsXG4gICAgJ2g1JzogMjAsXG4gICAgJ2g2JzogMTYsXG4gICksXG4pO1xuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuJGZvbnQtY2lyY3VsYXItYm9vazogICAgJ0NpcmN1bGFyIFN0ZCBCb29rJywgc2Fucy1zZXJpZjtcbiRmb250LWNpcmN1bGFyLW1lZGl1bTogICdDaXJjdWxhciBTdGQgTWVkaXVtJywgc2Fucy1zZXJpZjtcbiRmb250LWNpcmN1bGFyLWJvbGQ6ICAgICdDaXJjdWxhciBTdGQgQm9sZCcsIHNhbnMtc2VyaWY7XG4kZm9udC1iYXJsb3ctYm9sZDogICAgICAnQmFybG93IFNlbWkgQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6IGZvcmVncm91bmQoJGFjY29yZGlvbi1iYWNrZ3JvdW5kLCAkcHJpbWFyeS1jb2xvcik7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogZm9yZWdyb3VuZCgkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCwgJGJvZHktZm9udC1jb2xvcik7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogZm9yZWdyb3VuZCgkYmFkZ2UtYmFja2dyb3VuZCk7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlO1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAxcmVtO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogMC41cmVtO1xuJGNsb3NlYnV0dG9uLXNpemU6IDJlbTtcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XG5cbi8vIDE1LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuXG4vLyAxNi4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE3LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuXG4vLyAxOC4gRmxleCBWaWRlb1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGZsZXh2aWRlby1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kZmxleHZpZGVvLXJhdGlvOiA0IGJ5IDM7XG4kZmxleHZpZGVvLXJhdGlvLXdpZGVzY3JlZW46IDE2IGJ5IDk7XG5cbi8vIDE5LiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIwLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogZm9yZWdyb3VuZCgkbGFiZWwtYmFja2dyb3VuZCk7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjIuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW1hcmdpbi1uZXN0ZWQ6IDFyZW07XG4kbWVudS1pdGVtLXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSk7XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDIzLiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjQuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy16aW5kZXg6IC0xO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuJG1haW5jb250ZW50LXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNSk7XG5cbi8vIDI1LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjYuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiBmb3JlZ3JvdW5kKCRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50KTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI4LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gMjkuIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDMwLiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gMzEuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG5cbi8vIDMyLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiBmb3JlZ3JvdW5kKCR0YWItYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDMzLiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAzNC4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gMzUuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM2LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAxcmVtO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4iLCIvLy8gQmxvY2sgRWxlbWVudFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRlbGVtZW50IC0gRWxlbWVudCdzIG5hbWVcbkBtaXhpbiBlbGVtZW50KCRlbGVtZW50KSB7XG4gICAgJl9fI3skZWxlbWVudH0ge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbi8vLyBCbG9jayBNb2RpZmllclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtb2RpZmllciAtIE1vZGlmaWVyJ3MgbmFtZVxuQG1peGluIG1vZGlmaWVyKCRtb2RpZmllcikge1xuICAgICYtLSN7JG1vZGlmaWVyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuLy8gIFZlcnRpY2FsbHkgYWxpZ24gaXRlbVxuQG1peGluIHZlcnRpY2FsLWFsaWduKCRwb3NpdGlvbjogcmVsYXRpdmUpIHtcbiAgICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuXG5AbWl4aW4gYm9keS10ZXh0KCRmb250LXNpemU6IDE4LCAkbGluZS1oZWlnaHQ6IDI0KSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygkZm9udC1zaXplKTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItYm9vaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygkbGluZS1oZWlnaHQpO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLy8gTWl4aW5nIHRvIGJlIHJlYWQgYnkgSlMgdG8gZGV0ZWN0IENTUyBicmVha3BvaW50IHRocmVzaG9sZHMgaW4gSlMuXG5AbWl4aW4gZGVmaW5lLWJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICRuYW1lO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8vIFRvIGFwcGx5IGdyYWRpZW50IGJhY2tncm91bmQgaW4gb2xkIEZGXG5AbWl4aW4gZ3JhZGllbnQtdGV4dCgkZ3JhZGllbnQpIHtcbiAgQHN1cHBvcnRzKG1peC1ibGVuZC1tb2RlOiBsaWdodGVuKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1bnF1b3RlKCRncmFkaWVudCk7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLy8vXG4vLy8gQGF1dGhvciBNaWtlIFN0cmVldFxuLy8vIEBncm91cCBTcHJpdGVcbi8vLy9cblxuLyoqXG4gKiBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGFuZCBmdW5jdGlvbiBvcmlnaW5hdGUgZnJvbSB0aGUgc2Fzcy1tcSBsaWJyYXJ5LlxuICogSWYgeW91IGhhdmUgYWxyZWFkeSBpbmNsdWRlZCBpdCwgeW91IGNhbiBlbGltaW5hdGUgdGhlIGJlbG93XG4gKiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL2Jsb2IvbWFzdGVyL19tcS5zY3NzXG4gKi9cblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gdmFsdWUgdG8gY29udmVydFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZS1mb250LXNpemUgKCRtcS1iYXNlLWZvbnQtc2l6ZSkgLSBgPGJvZHk+YCBmb250IHNpemVcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJGZvbnQtc2l6ZS1pbi1lbXM6IG1xLXB4MmVtKDE2cHgpO1xuLy8vICBwIHsgZm9udC1zaXplOiBtcS1weDJlbSgxNnB4KTsgfVxuLy8vXG4vLy8gQHJlcXVpcmVzICRtcS1iYXNlLWZvbnQtc2l6ZVxuLy8vIEByZXR1cm5zIHtOdW1iZXJ9XG5AZnVuY3Rpb24gbXEtcHgyZW0oJHB4LCAkYmFzZS1mb250LXNpemU6ICRtcS1iYXNlLWZvbnQtc2l6ZSkge1xuICAgIEBpZiB1bml0bGVzcygkcHgpIHtcbiAgICAgICAgQHdhcm4gXCJBc3N1bWluZyAjeyRweH0gdG8gYmUgaW4gcGl4ZWxzLCBhdHRlbXB0aW5nIHRvIGNvbnZlcnQgaXQgaW50byBwaXhlbHMuXCI7XG4gICAgICAgIEByZXR1cm4gbXEtcHgyZW0oJHB4ICsgMHB4KTsgLy8gVGhhdCBtYXkgZmFpbC5cbiAgICB9IEBlbHNlIGlmIHVuaXQoJHB4KSA9PSBlbSB7XG4gICAgICAgIEByZXR1cm4gJHB4O1xuICAgIH1cbiAgICBAcmV0dXJuICgkcHggLyAkYmFzZS1mb250LXNpemUpICogMWVtO1xufVxuLy8vIEFkZCBjbGFzcyBmb3IgPElFOSBzcHJpdGUgZmFsbGJhY2tcbi8vLyBAZ3JvdXAgc3ByaXRlXG4vLy8gQHR5cGUgU3RyaW5nXG4kaWVTcHJpdGU6ICcubHQtaWU5JyAhZGVmYXVsdDtcblxuLy8vIFNldCB0aGUgYCRzcHJpdGVgIG1hcFxuLy8vIEBncm91cCBzcHJpdGVcbiRzcHJpdGU6IG1hcC1nZXQoJGljb25zLCBzcHJpdGUpICFkZWZhdWx0O1xuXG4vLy8gUmV0cml2ZSBhbiBhdHRyaWJ1dGVzIHZhbHVlIGZvciBhIHNwZWNpZmljIGljb24gaW4gdGhlIHNwcml0ZSBtYXBcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGljb24gLSBUaGUgbmFtZSBvZiB0aGUgaWNvblxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkYXR0ciAtIFRoZSBhdHRyaWJ1dGUgeW91IHdpc2ggdG8gcmV0cmlldmUgKGUuZy4gd2lkdGgpXG5AZnVuY3Rpb24gc3ByaXRlLWF0dHIoJGljb24sICRhdHRyKSB7XG4gICAgJG5ld0ljb246IG1hcC1nZXQoJGljb25zLCAkaWNvbik7XG4gICAgQGlmICRuZXdJY29uID09IG51bGwge1xuICAgICAgICBAd2FybiBcIkNhbid0IGZpbmQgYW4gaWNvbiB3aXRoIHRoZSBuYW1lICN7JGljb259XCI7XG4gICAgfVxuICAgIEByZXR1cm4gbWFwLWdldCgkbmV3SWNvbiwgJGF0dHIpO1xufVxuXG4vLy8gQ3JlYXRlIGEgbWFwIHdpdGggdGhlIHNwZWNpZmllZCBpY29uIG9mIGF0dHJpYnV0ZXNcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGljb24gLSBUaGUgbmFtZSBvZiB0aGUgaWNvblxuQGZ1bmN0aW9uIGljb24tYXR0cigkaWNvbikge1xuICAgICRhdHRyOiAoXG4gICAgICAgIHdpZHRoOiBzcHJpdGUtYXR0cigkaWNvbiwgd2lkdGgpLFxuICAgICAgICBoZWlnaHQ6IHNwcml0ZS1hdHRyKCRpY29uLCBoZWlnaHQpLFxuICAgICAgICB4OiBzcHJpdGUtYXR0cigkaWNvbiwgYmFja2dyb3VuZFgpLFxuICAgICAgICB5OiBzcHJpdGUtYXR0cigkaWNvbiwgYmFja2dyb3VuZFkpXG4gICAgKTtcblxuICAgIEByZXR1cm4gJGF0dHI7XG59XG5cbi8vLyBHZXQgdGhlIHdpZHRoIG9mIGFuIGljb24gaW4gZW1cbi8vLyBAcGFyYW0ge3N0cmluZ30gJGljb24gLSBUaGUgbmFtZSBvZiB0aGUgaWNvblxuQGZ1bmN0aW9uIGljb25fd2lkdGgoJGljb24pIHtcbiAgICBAcmV0dXJuIG1xLXB4MmVtKHNwcml0ZS1hdHRyKCRpY29uLCB3aWR0aCkpO1xufVxuXG4vLy8gR2V0IHRoZSBoZWlnaHQgb2YgYW4gaWNvbiBpbiBlbVxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkaWNvbiAtIFRoZSBuYW1lIG9mIHRoZSBpY29uXG5AZnVuY3Rpb24gaWNvbl9oZWlnaHQoJGljb24pIHtcbiAgICBAcmV0dXJuIG1xLXB4MmVtKHNwcml0ZS1hdHRyKCRpY29uLCBoZWlnaHQpKTtcbn1cblxuLy8vIEFzc2lnbiB0aGUgY29ycmVjdCBTVkcgYmFja2dyb3VuZCBpbWFnZSBhbmQgZGltZW5zaW9ucyB0byB0aGUgZWxlbWVudFxuJXNwcml0ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChtYXAtZ2V0KCRzcHJpdGUsIHN2Z1BhdGgpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IG1xLXB4MmVtKG1hcC1nZXQoJHNwcml0ZSwgd2lkdGgpKSBtcS1weDJlbShtYXAtZ2V0KCRzcHJpdGUsIGhlaWdodCkpO1xufVxuLy8vIEFzc2lnbiB0aGUgY29ycmVjdCBQTkcgYmFja2dyb3VuZCBpbWFnZSBhbmQgZGltZW5zaW9ucyB0byB0aGUgZWxlbWVudFxuJWllLXNwcml0ZSB7XG4gICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChtYXAtZ2V0KCRzcHJpdGUsIHBuZ1BhdGgpKTtcbn1cblxuLy8vIEFkZCBhIHNwcml0ZSBQTkcgaWNvbiBmb3IgYnJvd3NlcnMgd2l0aCB0aGUgYCRpZVNwcml0ZWAgY2xhc3Mgd2l0aCBweCBmb3IgcG9zaXRpb25pbmdcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGljb24gLSBUaGUgbmFtZSBvZiB0aGUgaWNvblxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSBbYWxsXSAtIFRoZSBwcm9wZXJ0aWVzIHdhbnRlZCAoY2FuIGJlIGBhbGxgLCBgc2l6ZWAgb3IgYGJnYCkuXG4vLy8gLSBgYWxsYCBlbnN1cmVzIHRoZSBpY29uIGhhcyB0aGUgYmFja2dyb3VuZCwgcG9zaXRpb24gYW5kIHNpemUuXG4vLy8gLSBgc2l6ZWAgaXMganVzdCBmb3IgZGltZW5zaW9uc1xuLy8vIC0gYGJnYCBqdXN0ICBhcHBsaWVzIHRoZSBiYWNrZ3JvdW5kcyB0byBhbiBlbGVtZW50XG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gLmNsYXNzIHtcbi8vLyAgICAgQGluY2x1ZGUgaWUtc3ByaXRlKGFycm93KTtcbi8vLyAgICAgJjpob3ZlciB7XG4vLy8gICAgICAgICBAaW5jbHVkZSBpZS1zcHJpdGUoYXJyb3dEb3duLCBiZylcbi8vLyAgICAgfVxuLy8vIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIE91dHB1dFxuLy8vIC5sdC1pZTkgLmNsYXNzIHtcbi8vLyAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3Nwcml0ZS5wbmdcIik7XG4vLy8gfVxuLy8vIC5sdC1pZTkgLmNsYXNzIHtcbi8vLyAgICAgd2lkdGg6IDIwcHg7XG4vLy8gICAgIGhlaWdodDogMjBweDtcbi8vLyAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTVweCAtNXB4O1xuLy8vIH1cbi8vLyAubHQtaWU5IC5jbGFzczpob3ZlciB7XG4vLy8gICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNnB4IC0zNnB4O1xuLy8vIH1cbkBtaXhpbiBpZS1zcHJpdGUoJGljb24sICR0eXBlOiBhbGwpIHtcbiAgICAkaWNvbk1hcDogaWNvbi1hdHRyKCRpY29uKTtcblxuICAgIEBpZiAkaWVTcHJpdGUge1xuICAgICAgICAjeyRpZVNwcml0ZX0gJiB7XG4gICAgICAgICAgICBAaWYgJHR5cGUgPT0gYWxsIHtcbiAgICAgICAgICAgICAgICAvLyBTaGFyZXMgdGhlIFBORyBiYWNrZ3JvdW5kXG4gICAgICAgICAgICAgICAgQGV4dGVuZCAlaWUtc3ByaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gT3V0cHV0cyBkaW1lbnNpb25zIG9mIGljb25cbiAgICAgICAgICAgIEBpZiAkdHlwZSA9PSBhbGwgb3IgJHR5cGUgPT0gc2l6ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IG1hcC1nZXQoJGljb25NYXAsIHdpZHRoKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IG1hcC1nZXQoJGljb25NYXAsIGhlaWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBPdXRwdXRzIGJhY2tncm91bmQgcG9zaXRpb25cbiAgICAgICAgICAgIEBpZiAkdHlwZSA9PSBhbGwgb3IgJHR5cGUgPT0gYmcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IChtYXAtZ2V0KCRpY29uTWFwLCB4KSAtIDUpIChtYXAtZ2V0KCRpY29uTWFwLCB5KSAtIDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8gQWRkIGFuIFNWRyBzcHJpdGUgaWNvbiB1c2luZyBlbSBwb3NpdGlvbmluZywgd2l0aCBhIFBORyBpY29uIGZvciBicm93c2VycyB3aXRoIHRoZSBgJGllU3ByaXRlYCBjbGFzcyB1c2luZyBweCBwb3NpdGlvbmluZ1xuLy8vIEBwYXJhbSB7c3RyaW5nfSAkaWNvbiAtIFRoZSBuYW1lIG9mIHRoZSBpY29uXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICR0eXBlIFthbGxdIC0gVGhlIHByb3BlcnRpZXMgd2FudGVkIChjYW4gYmUgYGFsbGAsIGBzaXplYCBvciBgYmdgKS5cbi8vLyAtIGBhbGxgIGVuc3VyZXMgdGhlIGljb24gaGFzIHRoZSBiYWNrZ3JvdW5kLCBwb3NpdGlvbiBhbmQgc2l6ZS5cbi8vLyAtIGBzaXplYCBpcyBqdXN0IGZvciBkaW1lbnNpb25zXG4vLy8gLSBgYmdgIGp1c3QgIGFwcGxpZXMgdGhlIGJhY2tncm91bmRzIHRvIGFuIGVsZW1lbnRcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAuY2xhc3Mge1xuLy8vICAgICBAaW5jbHVkZSBzcHJpdGUoYXJyb3cpO1xuLy8vICAgICAmOmhvdmVyIHtcbi8vLyAgICAgICAgIEBpbmNsdWRlIHNwcml0ZShhcnJvd0Rvd24sIGJnKVxuLy8vICAgICB9XG4vLy8gfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gT3V0cHV0XG4vLy8gLmNsYXNzIHtcbi8vLyAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuLy8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvc3ByaXRlLnN2Z1wiKTtcbi8vLyAgICAgYmFja2dyb3VuZC1zaXplOiAzNC4yNWVtIDMyLjE4NzVlbTtcbi8vLyB9XG4vLy9cbi8vLyAubHQtaWU5IC5jbGFzcyB7XG4vLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9zcHJpdGUucG5nXCIpO1xuLy8vIH1cbi8vL1xuLy8vIC5jbGFzcyB7XG4vLy8gICAgIHdpZHRoOiAxLjMxMjVlbTtcbi8vLyAgICAgaGVpZ2h0OiAxLjMxMjVlbTtcbi8vLyAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTAuMzEyNWVtIC0wLjMxMjVlbTtcbi8vLyB9XG4vLy8gLmx0LWllOSAuY2xhc3Mge1xuLy8vICAgICB3aWR0aDogMjBweDtcbi8vLyAgICAgaGVpZ2h0OiAyMHB4O1xuLy8vICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNXB4IC01cHg7XG4vLy8gfVxuLy8vIC5jbGFzczpob3ZlciB7XG4vLy8gICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yLjI1ZW0gLTIuMjVlbTtcbi8vLyB9XG4vLy8gLmx0LWllOSAuY2xhc3M6aG92ZXIge1xuLy8vICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzZweCAtMzZweDtcbi8vLyB9XG5AbWl4aW4gc3ByaXRlKCRpY29uLCAkdHlwZTogYWxsKSB7XG4gICAgQGlmICR0eXBlID09IGFsbCB7XG4gICAgICAgIC8vIFNoYXJlcyB0aGUgYmFja2dyb3VuZHNcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlO1xuICAgIH1cblxuICAgICRpY29uTWFwOiBpY29uLWF0dHIoJGljb24pO1xuXG4gICAgLy8gT3V0cHV0cyBkaW1lbnNpb25zIGluIGVtXG4gICAgQGlmICR0eXBlID09IGFsbCBvciAkdHlwZSA9PSBzaXplIHtcbiAgICAgICAgd2lkdGg6IG1xLXB4MmVtKG1hcC1nZXQoJGljb25NYXAsIHdpZHRoKSArIDEpO1xuICAgICAgICBoZWlnaHQ6IG1xLXB4MmVtKG1hcC1nZXQoJGljb25NYXAsIGhlaWdodCkgKyAxKTtcbiAgICB9XG5cbiAgICAvLyBPdXRwdXRzIGJhY2tncm91bmQgcG9zaXRpb24gaW4gZW1cbiAgICBAaWYgJHR5cGUgPT0gYWxsIG9yICR0eXBlID09IGJnIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbXEtcHgyZW0obWFwLWdldCgkaWNvbk1hcCwgeCkgLSA1KSBtcS1weDJlbShtYXAtZ2V0KCRpY29uTWFwLCB5KSAtIDUpO1xuICAgIH1cblxuICAgIC8vIEFkZCBpZSBmYWxsYmFja1xuICAgIEBpbmNsdWRlIGllLXNwcml0ZSgkaWNvbiwgJHR5cGUpO1xuXG59XG5cbkBtaXhpbiBib3gtc2hhZG93KCR0b3AsICRsZWZ0LCAkYmx1ciwgJGNvbG9yLCAkaW5zZXQ6IGZhbHNlKSB7XG4gICAgQGlmICRpbnNldCB7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzppbnNldCAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93Omluc2V0ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93Omluc2V0ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgICAgICAtbW96LWJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjYuM1xuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbi8qKlxuICogU3ByaXRlIHNldHRpbmdzXG4gKi9cbi8qKlxuICogVGhlIGZvbGxvd2luZyB2YXJpYWJsZSBhbmQgZnVuY3Rpb24gb3JpZ2luYXRlIGZyb20gdGhlIHNhc3MtbXEgbGlicmFyeS5cbiAqIElmIHlvdSBoYXZlIGFscmVhZHkgaW5jbHVkZWQgaXQsIHlvdSBjYW4gZWxpbWluYXRlIHRoZSBiZWxvd1xuICogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcS9ibG9iL21hc3Rlci9fbXEuc2Nzc1xuICovXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IH1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7IH1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtOyB9XG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwOyB9XG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IH1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBmb250OiBpbmhlcml0OyB9XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbW9iaWxlPTI4LjEyNWVtJm1lZGl1bT00MGVtJnRhYmxldD00OGVtJmxhcmdlPTY0ZW0meGxhcmdlPTgxLjI1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucm93IHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnJvdzo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdyAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC4zNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjM3NXJlbTsgfSB9XG4gICAgLnJvdyAucm93LmNvbGxhcHNlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5yb3cuZXhwYW5kZWQge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgIC5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtOyB9XG4gIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICAuY29sdW1uLCAuY29sdW1ucywgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY29sdW1uLmVuZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5lbmQuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lOyB9XG5cbi5yb3cgLmNvbHVtbi5yb3cucm93LCAucm93IC5yb3cucm93LmNvbHVtbnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xNi42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7IH1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7IH1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTUwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uc21hbGwtcHVzaC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7IH1cblxuLnNtYWxsLXB1bGwtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTc1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTgzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyMCU7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMi41JTsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmV4cGFuZGVkLnJvdyAuc21hbGwtY29sbGFwc2Uucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCwgLnNtYWxsLXB1c2gtMCwgLnNtYWxsLXB1bGwtMCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLXVuY2VudGVyZWQsIC5zbWFsbC11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdXNoLTAsIC5zbWFsbC1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1bGwtMCwgLnNtYWxsLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuc21hbGwtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTsgfVxuICAubWVkaXVtLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uLCAubWVkaXVtLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbiwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubWVkaXVtLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZXhwYW5kZWQucm93IC5tZWRpdW0tY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLm1lZGl1bS1jZW50ZXJlZCwgLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLCAubWVkaXVtLXB1c2gtMCwgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS11bmNlbnRlcmVkLCAubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdXNoLTAsIC5tZWRpdW0tcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVsbC0wLCAubWVkaXVtLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTsgfVxuICAubGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC5sYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbiwgLmxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLmxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfVxuICAubGFyZ2UtY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5sYXJnZS1jZW50ZXJlZCwgLmxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXB1c2gtMCwgLmxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1c2gtMCwgLmxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGFyZ2UtcHVsbC0wLCAubGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG4gICAgICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjguMTIzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyOC4xMjVlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA4MS4yNDg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJzsgfVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuaHRtbCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLXdpZHRoOiAzMDBweDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7IH1cbiAgaHRtbC5hcHAtdmlldyAuaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGh0bWwuYXBwLXZpZXcgLndyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIGh0bWwuYXBwLXZpZXcgLmNlbnRyZS1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY2VudHJlLW1lbnVfX3dyYXBwZXIge1xuICAgIHRvcDogMDsgfVxuICBodG1sLmFwcC12aWV3IC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX3dyYXBwZXIge1xuICAgIHRvcDogMDsgfVxuICBodG1sLmFwcC12aWV3IC5uZXdzLWZsYXNoIHtcbiAgICB0b3A6IDA7IH1cbiAgaHRtbC5hcHAtdmlldyAuZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbmJvZHkge1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1pbi13aWR0aDogMzAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBib2R5OmFmdGVyIHtcbiAgICBjb250ZW50OiBcImJwLXNcIjtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keTphZnRlciB7XG4gICAgICBjb250ZW50OiBcImJwLW1cIjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHk6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJicC1sXCI7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgIGJvZHk6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJicC14bFwiO1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5ub3Njcm9sbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNnM7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA5OTk7IH1cbiAgLm92ZXJsYXkub3ZlcmxheS0tb3BlbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5vdmVybGF5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ud3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nLXRvcDogNjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDsgfVxuICAud3JhcHBlcjo6YmVmb3JlLCAud3JhcHBlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAud3JhcHBlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDcycHg7IH0gfVxuXG4uY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbnRhaW5lcjo6YmVmb3JlLCAuY29udGFpbmVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jb250YWluZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uYnJlYWRjcnVtYnMge1xuICBoZWlnaHQ6IDA7IH1cblxuLypcbiAqIExlZ2FsIERpc2NsYWltZXJcbiAqXG4gKiBUaGVzZSBGb250cyBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIG9uIHRoZXNlIGRvbWFpbnMgYW5kIHRoZWlyIHN1YmRvbWFpbnM6XG4gKiBFdmVyeW9uZWFjdGl2ZS5jb21cbiAqXG4gKiBJdCBpcyBpbGxlZ2FsIHRvIGRvd25sb2FkIG9yIHVzZSB0aGVtIG9uIG90aGVyIHdlYnNpdGVzLlxuICpcbiAqIFdoaWxlIHRoZSBAZm9udC1mYWNlIHN0YXRlbWVudHMgYmVsb3cgbWF5IGJlIG1vZGlmaWVkIGJ5IHRoZSBjbGllbnQsIHRoaXNcbiAqIGRpc2NsYWltZXIgbWF5IG5vdCBiZSByZW1vdmVkLlxuICpcbiAqIExpbmV0by5jb20sIDIwMTdcbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ2lyY3VsYXIgU3RkIEJvb2snO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2NpcmN1bGFyLXdlYi9jaXJjdWxhci1ib29rLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItYm9vay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItYm9vay53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLWJvb2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ2lyY3VsYXIgU3RkIE1lZGl1bSc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLW1lZGl1bS5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLW1lZGl1bS5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItbWVkaXVtLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItbWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NpcmN1bGFyIFN0ZCBCb2xkJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItYm9sZC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLWJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLWJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2NpcmN1bGFyLXdlYi9jaXJjdWxhci1ib2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cblxuaDEge1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBcbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDIuMjVyZW07IH0gfVxuXG5cbmgyIHtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDNlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cblxuXG5oMyB7XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBNZWRpdW1cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cblxuaDQge1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogLS4wMmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBcbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cblxuXG5oNSB7XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBNZWRpdW1cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDsgfVxuXG4ubXQtMjUge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtOyB9XG5cbi5tci0yNSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuXG4ubWItMjUge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyB9XG5cbi5tbC0yNSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtOyB9XG5cbi5teC0yNSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cblxuLm15LTI1IHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgfVxuXG4ubXQtNTAge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cblxuLm1yLTUwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuLm1iLTUwIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi5tbC01MCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cblxuLm14LTUwIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuLm15LTUwIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLm10LTc1IHtcbiAgbWFyZ2luLXRvcDogMC43NXJlbTsgfVxuXG4ubXItNzUge1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH1cblxuLm1iLTc1IHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuXG4ubWwtNzUge1xuICBtYXJnaW4tbGVmdDogMC43NXJlbTsgfVxuXG4ubXgtNzUge1xuICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtOyB9XG5cbi5teS03NSB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cblxuLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41OyB9XG5cbi5kaXNhYmxlZCAqIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnRleHQtbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uYWN0aXZpdGllcy1maWx0ZXIge1xuICBtYXJnaW46IDIwcHggMCAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5hY3Rpdml0aWVzLWZpbHRlci5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX193cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX3dyYXBwZXI6OmJlZm9yZSwgLmFjdGl2aXRpZXMtZmlsdGVyX193cmFwcGVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5hY3Rpdml0aWVzLWZpbHRlcl9fd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFjdGl2aXRpZXMtZmlsdGVyX193cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX193cmFwcGVyLnRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAuNHM7IH1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19vcHRpb25zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFjdGl2aXRpZXMtZmlsdGVyX19vcHRpb25zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7IH0gfVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX29wdGlvbiB7XG4gIGJhY2tncm91bmQ6ICMxYjIzMjY7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fb3B0aW9uIHtcbiAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmZmZmY7XG4gICAgICB3aWR0aDogMjUlOyB9IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19vcHRpb24uZXhwYW5kZWQge1xuICAgIGJhY2tncm91bmQ6ICNlNGU0ZTU7IH1cbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX29wdGlvbi5leHBhbmRlZCAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAjMWIyMzI2OyB9XG4gICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX29wdGlvbi5leHBhbmRlZCAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V4cGFuZC5zdmdcIikgY2VudGVyIGNlbnRlci9jb250YWluIG5vLXJlcGVhdDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpOyB9XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDEwcHggMjVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9leHBhbmQtd2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyNXB4O1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMjBweDsgfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlLmZpbHRlcmVkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDU1cHg7IH1cbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlLmZpbHRlcmVkOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hlY2suc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAyNXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDIwcHg7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX190aXRsZS5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGUtLW1vYmlsZSB7XG4gICAgYmFja2dyb3VuZDogIzFiMjMyNjtcbiAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFjdGl2aXRpZXMtZmlsdGVyX190aXRsZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4OyB9XG4gICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGUuZmlsdGVyZWQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbiAgICAgICAgLmFjdGl2aXRpZXMtZmlsdGVyX190aXRsZS5maWx0ZXJlZDpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGUge1xuICAgICAgcGFkZGluZzogMTBweCAyNXB4OyB9XG4gICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDI1cHg7IH1cbiAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGUuZmlsdGVyZWQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDU1cHg7IH1cbiAgICAgICAgLmFjdGl2aXRpZXMtZmlsdGVyX190aXRsZS5maWx0ZXJlZDpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IDI1cHg7IH0gfVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX2Ryb3Bkb3duIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fZHJvcGRvd24ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTFweDsgfSB9XG4gIC5hY3Rpdml0aWVzLWZpbHRlcl9fZHJvcGRvd24udHJhbnNpdGlvbiB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IC40czsgfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2Ryb3Bkb3duIC5pbm5lciB7XG4gICAgYmFja2dyb3VuZDogI2U0ZTRlNTtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFjdGl2aXRpZXMtZmlsdGVyX19kcm9wZG93biAuaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19kcm9wZG93biBzZWxlY3Qge1xuICAgIG1hcmdpbjogMTVweCAwIDEwcHg7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19kcm9wZG93biBoNSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX2Ryb3Bkb3duIGg1IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX2xpc3Qtd3JhcHBlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzljYWNiO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3Qtd3JhcHBlci5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0LXdyYXBwZXIgaDUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMTFweCAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAyMyU7IH0gfVxuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBsaSBwcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBsaSBwcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsLCAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J3JhZGlvJ10gKyBsYWJlbCwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH0gfVxuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBpbnB1dFt0eXBlPSdyYWRpbyddICsgbGFiZWwgc3BhbiwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCBzcGFuIHtcbiAgICAgIHdpZHRoOiAzNXB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHNwYW4sIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBpbnB1dFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwgc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IDI0cHg7IH0gfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLXJhZGlvICsgbGFiZWwsIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBpbnB1dFt0eXBlPSdjaGVja2JveCddLmZvcm1zX19pbnB1dC0tcmFkaW8gKyBsYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBpbnB1dFt0eXBlPSdyYWRpbyddLmZvcm1zX19pbnB1dC0tcmFkaW8gKyBsYWJlbCwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10uZm9ybXNfX2lucHV0LS1yYWRpbyArIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMXB4OyB9IH1cbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLXJhZGlvICsgbGFiZWwgc3BhbiwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10uZm9ybXNfX2lucHV0LS1yYWRpbyArIGxhYmVsIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzNXB4O1xuICAgICAgaGVpZ2h0OiAzNXB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLXJhZGlvICsgbGFiZWwgc3BhbiwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10uZm9ybXNfX2lucHV0LS1yYWRpbyArIGxhYmVsIHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICBoZWlnaHQ6IDI0cHg7IH0gfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLWNoZWNrYm94ICsgbGFiZWwsIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBpbnB1dFt0eXBlPSdjaGVja2JveCddLmZvcm1zX19pbnB1dC0tY2hlY2tib3ggKyBsYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiA0NXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCBpbnB1dFt0eXBlPSdyYWRpbyddLmZvcm1zX19pbnB1dC0tY2hlY2tib3ggKyBsYWJlbCwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10uZm9ybXNfX2lucHV0LS1jaGVja2JveCArIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMXB4OyB9IH1cbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLWNoZWNrYm94ICsgbGFiZWwgc3BhbiwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10uZm9ybXNfX2lucHV0LS1jaGVja2JveCArIGxhYmVsIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzNXB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QgaW5wdXRbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLWNoZWNrYm94ICsgbGFiZWwgc3BhbiwgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0IGlucHV0W3R5cGU9J2NoZWNrYm94J10uZm9ybXNfX2lucHV0LS1jaGVja2JveCArIGxhYmVsIHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweDtcbiAgICAgICAgICBoZWlnaHQ6IDI0cHg7IH0gfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2xpc3QuY2hlY2tib3gtbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdC5jaGVja2JveC1saXN0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0LmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX21vcmUtaW5mbyBhIHtcbiAgY29sb3I6ICMzZDk2Y2E7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDE1cHggMCA1cHg7IH1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19idXR0b24ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogI2M5Y2FjYjtcbiAgYm9yZGVyOiAycHggc29saWQgI2M5Y2FjYjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtZmFtaWx5OiAnQ2lyY3VsYXIgU3RkIEJvbGQnLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nOiA4cHggMjBweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX2J1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwcHg7IH0gfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX2J1dHRvbi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICNmZjA4MGQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmMDgwZDtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fYnV0dG9uLmFjdGl2ZTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICNmZjA4MGQ7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19idXR0b24gc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fYnV0dG9uIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19zZWFyY2gge1xuICBiYWNrZ3JvdW5kOiAjZjdmOWZhO1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMXB4O1xuICBwYWRkaW5nOiAyNXB4IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHM7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX3NlYXJjaCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5hY3Rpdml0aWVzLWZpbHRlcl9fc2VhcmNoLmV4cGFuZGVkIC5hY3Rpdml0aWVzLWZpbHRlcl9fc2VhcmNoLXRpdGxlOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7IH1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19zZWFyY2gtdGl0bGUge1xuICBjb2xvcjogIzAwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fc2VhcmNoLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX3NlYXJjaC10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19zZWFyY2gtdGl0bGU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9leHBhbmQuc3ZnXCIpIGNlbnRlciBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDIwcHg7IH1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19zZWFyY2gtYmFyIHtcbiAgcGFkZGluZzogMjBweCAwIDEwcHg7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19zZWFyY2gtYmFyIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcGFkZGluZzogMC44MTI1cmVtIDMuMTI1cmVtIDAuODEyNXJlbSAxLjI1cmVtOyB9XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fc2VhcmNoLWljb24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmIHVybChcIi4uL2ltZy9zZWFyY2guc3ZnXCIpIG5vLXJlcGVhdCA5NiUgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IDYwcHg7XG4gIHRvcDogMTRweDtcbiAgd2lkdGg6IDQwcHg7IH1cblxuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19zZWFyY2gtaWNvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0b3A6IC05cHg7IH0gfVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZS5leHBhbmRlZCB7XG4gICAgYmFja2dyb3VuZDogI2U0ZTRlNTsgfVxuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbW9iaWxlLmV4cGFuZGVkIC5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGUge1xuICAgICAgYmFja2dyb3VuZDogI2U0ZTRlNTtcbiAgICAgIGNvbG9yOiAjMWIyMzI2O1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4OyB9XG4gICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZS5leHBhbmRlZCAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Nsb3NlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7IH1cbiAgICAuYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZS5leHBhbmRlZCAuYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZS1zZWFyY2gge1xuICAgICAgd2lkdGg6IDA7IH1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19tb2JpbGUtc2VhcmNoIHtcbiAgYmFja2dyb3VuZDogI2U0ZTRlNTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA1cHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB3aWR0aDogNzBweDtcbiAgei1pbmRleDogMTA7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19tb2JpbGUtc2VhcmNoIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoXCIuLi9pbWcvc2VhcmNoLnN2Z1wiKSBuby1yZXBlYXQgOTYlIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAwIDAgMCA3MHB4O1xuICAgIG1heC13aWR0aDogNTcwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAzLjc1cmVtIDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gOTBweCk7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19tb2JpbGUtc2VhcmNoLmFjdGl2ZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbW9iaWxlLXNlYXJjaC5hY3RpdmUgLmFjdGl2aXRpZXMtZmlsdGVyX19tb2JpbGUtc2VhcmNoLWljb246YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcnJvdy1sZWZ0LWJsdWUuc3ZnXCIpIG5vLXJlcGVhdCAxNHB4IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMzVweDsgfVxuICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fbW9iaWxlLXNlYXJjaC5hY3RpdmUgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC40czsgfVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZS1zZWFyY2gtaWNvbiB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U0ZTRlNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC40cztcbiAgd2lkdGg6IDcwcHg7IH1cbiAgLmFjdGl2aXRpZXMtZmlsdGVyX19tb2JpbGUtc2VhcmNoLWljb246YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc2VhcmNoLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNHM7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmJlbmVmaXRzIHtcbiAgYmFja2dyb3VuZDogI2ZmMDgwZDsgfVxuXG4uYmVuZWZpdHNfX3RpdGxlIHtcbiAgcGFkZGluZy1ib3R0b206IDE4cHggIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5iZW5lZml0c19fbGlzdCB7XG4gIG1hcmdpbjogMzZweDtcbiAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5iZW5lZml0c19fbGlzdCB7XG4gICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICBjb2x1bW4tZ2FwOiAyLjVlbTsgfSB9XG4gIC5iZW5lZml0c19fbGlzdCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuYmVuZWZpdHNfX2xpc3QgbGkge1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMzJweDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJlbmVmaXRzX19saXN0IGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4OyB9IH1cbiAgICAuYmVuZWZpdHNfX2xpc3QgbGk6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaGVjay5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI3cHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTVweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJlbmVmaXRzX19saXN0IGxpOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9IH1cblxuLmFydGljbGVfX2hlYWRlciB7XG4gIHBhZGRpbmc6IDI1cHggMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlX19oZWFkZXIge1xuICAgICAgcGFkZGluZzogNTBweCAyMHB4IDQwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hcnRpY2xlX19oZWFkZXIge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbiAgICAgIHBhZGRpbmc6IDcwcHggMjBweCA1MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVfX2hlYWRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFydGljbGVfX2hlYWRlciwgLmFydGljbGVfX2hlYWRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuYXJ0aWNsZV9faGVhZGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uYXJ0aWNsZV9fdGl0bGUge1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICBtYXJnaW46IDEwcHggMCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYXJ0aWNsZV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjI1cmVtO1xuICAgICAgbWF4LXdpZHRoOiA4MDBweDsgfSB9XG5cbi5hcnRpY2xlX19pbmZvIHtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZV9faW5mbyB7XG4gICAgICBtYXJnaW46IDIwcHggMCAzNXB4OyB9IH1cblxuLmFydGljbGVfX2F1dGhvcixcbi5hcnRpY2xlX19kYXRlIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZV9fYXV0aG9yLFxuICAgIC5hcnRpY2xlX19kYXRlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTsgfSB9XG4gIC5hcnRpY2xlX19hdXRob3IgYSxcbiAgLmFydGljbGVfX2F1dGhvciBzcGFuLFxuICAuYXJ0aWNsZV9fZGF0ZSBhLFxuICAuYXJ0aWNsZV9fZGF0ZSBzcGFuIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gIC5hcnRpY2xlX19hdXRob3IgYSxcbiAgLmFydGljbGVfX2RhdGUgYSB7XG4gICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmFydGljbGVfX2F1dGhvciBhOmhvdmVyLFxuICAgIC5hcnRpY2xlX19kYXRlIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmFydGljbGVfX21ldGEge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGNvbG9yOiAjNjY2O1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVfX21ldGEge1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVfX21ldGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5hcnRpY2xlX19tZXRhIGEge1xuICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5hcnRpY2xlX19tZXRhIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmFydGljbGVfX21ldGEtaW5uZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxMHB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZV9fbWV0YS1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uYXJ0aWNsZV9fbWV0YS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzZDk2Y2E7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYXJ0aWNsZV9fbWV0YS10aXRsZTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V4cGFuZC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAzNXB4OyB9XG4gIC5hcnRpY2xlX19tZXRhLXRpdGxlLmV4cGFuZGVkOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaGlkZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVfX21ldGEtdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5hcnRpY2xlX19jYXRlZ29yaWVzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMTBweCAyMHB4IDEwcHggMDsgfVxuICAuYXJ0aWNsZV9fY2F0ZWdvcmllczpsYXN0LW9mLXR5cGUgc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYXJ0aWNsZV9fY2F0ZWdvcmllcyAucG9zdC1jYXRlZ29yaWVzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDVweDsgfVxuICAgIC5hcnRpY2xlX19jYXRlZ29yaWVzIC5wb3N0LWNhdGVnb3JpZXMgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAuYXJ0aWNsZV9fY2F0ZWdvcmllcyAucG9zdC1jYXRlZ29yaWVzIGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTZweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hcnRpY2xlX19jYXRlZ29yaWVzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDsgfSB9XG5cbi5hcnRpY2xlX19zaGFyZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYXJ0aWNsZV9fc2hhcmUge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5hcnRpY2xlX19zaGFyZS1pdGVtIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMjJweDtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gIHRleHQtaW5kZW50OiAtMTAwMDBweDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IDIycHg7IH1cbiAgLmFydGljbGVfX3NoYXJlLWl0ZW06Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAuYXJ0aWNsZV9fc2hhcmUtaXRlbS5mYi1zaGFyZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZhY2Vib29rLWJsdWUuc3ZnXCIpIGNlbnRlciBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7IH1cbiAgLmFydGljbGVfX3NoYXJlLWl0ZW0udHctc2hhcmUge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy94LWJsdWUuc3ZnXCIpIGNlbnRlciBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7IH1cbiAgLmFydGljbGVfX3NoYXJlLWl0ZW0uZW1haWwtc2hhcmUge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9lbWFpbC1ibHVlLnN2Z1wiKSBjZW50ZXIgY2VudGVyLzgwJSBhdXRvIG5vLXJlcGVhdDsgfVxuXG4uYXJ0aWNsZV9fY29udGVudCB7XG4gIGNvbG9yOiAjMzMzO1xuICBwYWRkaW5nOiAyNXB4IDIwcHggNDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYXJ0aWNsZV9fY29udGVudCwgLmFydGljbGVfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmFydGljbGVfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVfX2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFydGljbGVfX2NvbnRlbnQsIC5hcnRpY2xlX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5hcnRpY2xlX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuYXJ0aWNsZV9fY29udGVudCBwIHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hcnRpY2xlX19jb250ZW50IHAge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gICAgLmFydGljbGVfX2NvbnRlbnQgcCBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAuYXJ0aWNsZV9fY29udGVudCBwIGVtIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAuYXJ0aWNsZV9fY29udGVudCA+IHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hcnRpY2xlX19jb250ZW50ID4gcDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgaDEsXG4gIC5hcnRpY2xlX19jb250ZW50IGgyLFxuICAuYXJ0aWNsZV9fY29udGVudCBoMyxcbiAgLmFydGljbGVfX2NvbnRlbnQgaDQsXG4gIC5hcnRpY2xlX19jb250ZW50IGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5hcnRpY2xlX19jb250ZW50IGgzLFxuICAuYXJ0aWNsZV9fY29udGVudCBoNCxcbiAgLmFydGljbGVfX2NvbnRlbnQgaDUge1xuICAgIGNvbG9yOiAjMzMzOyB9XG4gIC5hcnRpY2xlX19jb250ZW50IGEge1xuICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5hcnRpY2xlX19jb250ZW50IGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgPiB1bCxcbiAgLmFydGljbGVfX2NvbnRlbnQgPiBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7IH1cbiAgICAuYXJ0aWNsZV9fY29udGVudCA+IHVsIGxpLFxuICAgIC5hcnRpY2xlX19jb250ZW50ID4gb2wgbGkge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgPiB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5hcnRpY2xlX19jb250ZW50ID4gdWwgbGk6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZjA4MGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICBsZWZ0OiAtMjBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIHdpZHRoOiA2cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hcnRpY2xlX19jb250ZW50ID4gdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAtMjVweDsgfSB9XG4gIC5hcnRpY2xlX19jb250ZW50ID4gb2wge1xuICAgIGNvdW50ZXItcmVzZXQ6IGl0ZW07IH1cbiAgICAuYXJ0aWNsZV9fY29udGVudCA+IG9sIGxpIHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDsgfVxuICAgICAgLmFydGljbGVfX2NvbnRlbnQgPiBvbCBsaTpiZWZvcmUge1xuICAgICAgICBjb2xvcjogI2ZmMDgwZDtcbiAgICAgICAgY29udGVudDogY291bnRlcihpdGVtKSBcIi5cIjtcbiAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGl0ZW07XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5hcnRpY2xlX19jb250ZW50ID4gb2wgbGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IC0yN3B4OyB9IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgPiBibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQ6ICNlYWVmZmY7XG4gICAgbGVmdDogLTIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTsgfVxuICAgIC5hcnRpY2xlX19jb250ZW50ID4gYmxvY2txdW90ZSBwIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYXJ0aWNsZV9fY29udGVudCA+IGJsb2NrcXVvdGUge1xuICAgICAgICBsZWZ0OiAtNDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgODBweCk7IH1cbiAgICAgICAgLmFydGljbGVfX2NvbnRlbnQgPiBibG9ja3F1b3RlIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFydGljbGVfX2NvbnRlbnQgPiBibG9ja3F1b3RlIHtcbiAgICAgICAgbGVmdDogLTYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggNjBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEyMHB4KTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWdubGVmdC53cC1jYXB0aW9uLCAuYXJ0aWNsZV9fY29udGVudCBmaWd1cmUuYWxpZ25yaWdodC53cC1jYXB0aW9uLFxuICAgIC5hcnRpY2xlX19jb250ZW50IGltZy5hbGlnbmxlZnQud3AtY2FwdGlvbixcbiAgICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25yaWdodC53cC1jYXB0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWdubGVmdC53cC1jYXB0aW9uIGltZywgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWducmlnaHQud3AtY2FwdGlvbiBpbWcsXG4gIC5hcnRpY2xlX19jb250ZW50IGltZy5hbGlnbmxlZnQud3AtY2FwdGlvbiBpbWcsXG4gIC5hcnRpY2xlX19jb250ZW50IGltZy5hbGlnbnJpZ2h0LndwLWNhcHRpb24gaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuYXJ0aWNsZV9fY29udGVudCBmaWd1cmUuYWxpZ25sZWZ0LFxuICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hcnRpY2xlX19jb250ZW50IGZpZ3VyZS5hbGlnbmxlZnQsXG4gICAgICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25sZWZ0IHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDI1cHggMjBweCAwO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYXJ0aWNsZV9fY29udGVudCBmaWd1cmUuYWxpZ25sZWZ0LFxuICAgICAgLmFydGljbGVfX2NvbnRlbnQgaW1nLmFsaWdubGVmdCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAtMjVweCAyMHB4IDA7XG4gICAgICAgIHJpZ2h0OiA2MHB4O1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIC5hcnRpY2xlX19jb250ZW50IGZpZ3VyZS5hbGlnbnJpZ2h0LFxuICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDMwcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWducmlnaHQsXG4gICAgICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25yaWdodCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDIwcHggMjVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWducmlnaHQsXG4gICAgICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25yaWdodCB7XG4gICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDIwcHggLTI1cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWduY2VudGVyLCAuYXJ0aWNsZV9fY29udGVudCBmaWd1cmUuYWxpZ25ub25lLFxuICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25jZW50ZXIsXG4gIC5hcnRpY2xlX19jb250ZW50IGltZy5hbGlnbm5vbmUge1xuICAgIGRpc3BsYXk6IHRhYmtlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWduY2VudGVyLCAuYXJ0aWNsZV9fY29udGVudCBmaWd1cmUuYWxpZ25ub25lLFxuICAgICAgLmFydGljbGVfX2NvbnRlbnQgaW1nLmFsaWduY2VudGVyLFxuICAgICAgLmFydGljbGVfX2NvbnRlbnQgaW1nLmFsaWdubm9uZSB7XG4gICAgICAgIG1hcmdpbjogNTBweCBhdXRvOyB9XG4gICAgICAgIC5hcnRpY2xlX19jb250ZW50IGZpZ3VyZS5hbGlnbmNlbnRlci53cC1jYXB0aW9uLCAuYXJ0aWNsZV9fY29udGVudCBmaWd1cmUuYWxpZ25ub25lLndwLWNhcHRpb24sXG4gICAgICAgIC5hcnRpY2xlX19jb250ZW50IGltZy5hbGlnbmNlbnRlci53cC1jYXB0aW9uLFxuICAgICAgICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25ub25lLndwLWNhcHRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAgICAgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWduY2VudGVyLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCwgLmFydGljbGVfX2NvbnRlbnQgZmlndXJlLmFsaWdubm9uZS53cC1jYXB0aW9uIC53cC1jYXB0aW9uLXRleHQsXG4gICAgICAgICAgLmFydGljbGVfX2NvbnRlbnQgaW1nLmFsaWduY2VudGVyLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCxcbiAgICAgICAgICAuYXJ0aWNsZV9fY29udGVudCBpbWcuYWxpZ25ub25lLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCB7XG4gICAgICAgICAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNhcHRpb247IH0gfVxuICAgIC5hcnRpY2xlX19jb250ZW50IGZpZ3VyZS5hbGlnbmNlbnRlciBpbWcsIC5hcnRpY2xlX19jb250ZW50IGZpZ3VyZS5hbGlnbm5vbmUgaW1nLFxuICAgIC5hcnRpY2xlX19jb250ZW50IGltZy5hbGlnbmNlbnRlciBpbWcsXG4gICAgLmFydGljbGVfX2NvbnRlbnQgaW1nLmFsaWdubm9uZSBpbWcge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5hcnRpY2xlX19jb250ZW50IGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuYXJ0aWNsZV9fY29udGVudCAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgbWFyZ2luLXRvcDogNnB4OyB9XG4gIC5hcnRpY2xlX19jb250ZW50IC5pZnJhbWUtdmlkZW8ge1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogMzBweCAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA1NS4yNSU7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmFydGljbGVfX2NvbnRlbnQgLmlmcmFtZS12aWRlbyBpZnJhbWUge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5hcnRpY2xlX19jb250ZW50IC50YWJsZS1jb250YWluZXIge1xuICAgIG1hcmdpbjogNDBweCAwO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFydGljbGVfX2NvbnRlbnQgLnRhYmxlLWNvbnRhaW5lciB7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfSB9XG4gICAgLmFydGljbGVfX2NvbnRlbnQgLnRhYmxlLWNvbnRhaW5lciB0YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgbWluLXdpZHRoOiA2MDBweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmFydGljbGVfX2NvbnRlbnQgLnRhYmxlLWNvbnRhaW5lciB0YWJsZSB7XG4gICAgICAgICAgbWluLXdpZHRoOiAwOyB9IH1cbiAgICAgIC5hcnRpY2xlX19jb250ZW50IC50YWJsZS1jb250YWluZXIgdGFibGUgdGgge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2U0ZTRlNTtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNlNGU0ZTU7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgICAuYXJ0aWNsZV9fY29udGVudCAudGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRyOm50aC1vZi10eXBlKDJuICsgMSkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0OyB9XG4gICAgICAuYXJ0aWNsZV9fY29udGVudCAudGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgcGFkZGluZzogMjVweCAyMHB4OyB9XG4gICAgICAgIC5hcnRpY2xlX19jb250ZW50IC50YWJsZS1jb250YWluZXIgdGFibGUgdGJvZHkgdHIgdGQgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZjA4MGQ7IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgLmlucHV0X193cmFwcGVyLFxuICAuYXJ0aWNsZV9fY29udGVudCAuc2VsZWN0X193cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgLmNvbnRhY3QtbWFpbl9fbW9kdWxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cbiAgLmFydGljbGVfX2NvbnRlbnQgLmNvbnRhY3QtbWFpbl9fZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuICAgIG1hcmdpbjogMDsgfVxuXG4uYXJ0aWNsZV9fcXVvdGUge1xuICBiYWNrZ3JvdW5kOiAjZjFmMmY0O1xuICBsZWZ0OiAtMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogMzBweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlX19xdW90ZSB7XG4gICAgICBsZWZ0OiAtNDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgODBweCk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hcnRpY2xlX19xdW90ZSB7XG4gICAgICBsZWZ0OiAtNjBweDtcbiAgICAgIHBhZGRpbmc6IDMwcHggNjBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxMjBweCk7IH0gfVxuICAuYXJ0aWNsZV9fcXVvdGUgYmxvY2txdW90ZSB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hcnRpY2xlX19xdW90ZSBibG9ja3F1b3RlIHAge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAuYXJ0aWNsZV9fcXVvdGUgcCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5hcnRpY2xlX19xdW90ZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNXJlbTsgfVxuXG4uY3RhLW1vZHVsZSB7XG4gIG1hcmdpbjogNDBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmN0YS1tb2R1bGUgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmN0YS1tb2R1bGUgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiA1cHggMTBweDsgfSB9XG4gICAgLmN0YS1tb2R1bGUgYS5jdGEtbW9kdWxlX19wcmltYXJ5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmN0YS1tb2R1bGUgYS5jdGEtbW9kdWxlX19wcmltYXJ5OmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY3RhLW1vZHVsZSBhLmN0YS1tb2R1bGVfX3ByaW1hcnkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG5cbi5jaGVja2xpc3Qge1xuICBtYXJnaW46IDM1cHggMDtcbiAgcGFkZGluZzogMjBweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNoZWNrbGlzdDphZnRlciwgLmNoZWNrbGlzdDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICNlNGU0ZTU7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jaGVja2xpc3Q6YWZ0ZXIsIC5jaGVja2xpc3Q6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IC0xNSU7XG4gICAgICAgIHdpZHRoOiAxMTUlOyB9IH1cbiAgLmNoZWNrbGlzdDphZnRlciB7XG4gICAgYm90dG9tOiAwOyB9XG4gIC5jaGVja2xpc3Q6YmVmb3JlIHtcbiAgICB0b3A6IDA7IH1cbiAgLmNoZWNrbGlzdCB1bCB7XG4gICAgbWFyZ2luOiAyNXB4IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5jaGVja2xpc3QgdWwgbGkge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6ICM2NjY7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5jaGVja2xpc3QgdWwgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY2hlY2tsaXN0IHVsIGxpIHtcbiAgICAgICAgICB3aWR0aDogOTAlOyB9IH1cbiAgICAgIC5jaGVja2xpc3QgdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2NoZWNrLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDMwcHg7IH1cblxuLmFydGljbGVfX3RhZ3Mge1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogMCAyMHB4OyB9XG4gIC5hcnRpY2xlX190YWdzOjpiZWZvcmUsIC5hcnRpY2xlX190YWdzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5hcnRpY2xlX190YWdzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmFydGljbGVfX3RhZ3MtaW5uZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2M5Y2FjYjtcbiAgcGFkZGluZzogMTVweCAwIDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZV9fdGFncy1pbm5lciB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDAgMzBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVfX3RhZ3MtaW5uZXIge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlX190YWdzLWlubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYXJ0aWNsZV9fdGFncy1pbm5lciwgLmFydGljbGVfX3RhZ3MtaW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmFydGljbGVfX3RhZ3MtaW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5hcnRpY2xlX190YWdzLXRhZyB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzNkOTZjYTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDEwcHggMTBweCAwIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZV9fdGFncy10YWcge1xuICAgICAgbWFyZ2luOiAxNXB4IDEwcHggMCAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZV9fdGFncy10YWcge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtOyB9IH1cbiAgLmFydGljbGVfX3RhZ3MtdGFnOmxhc3Qtb2YtdHlwZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5hcnRpY2xlX190YWdzLXRhZyBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuYXJ0aWNsZV9fdGFncy10YWcgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uYXJ0aWNsZS1yZWxhdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjlmYTtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgcGFkZGluZzogNTBweCAyMHB4IDA7IH1cbiAgLmFydGljbGUtcmVsYXRlZCBoMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcnRpY2xlLXJlbGF0ZWRfX2lubmVyIHtcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlLXJlbGF0ZWRfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGUtcmVsYXRlZF9faW5uZXIsIC5hcnRpY2xlLXJlbGF0ZWRfX2lubmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5hcnRpY2xlLXJlbGF0ZWRfX2lubmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmFydGljbGUtcmVsYXRlZF9faW5uZXIgaDIgYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnVpLWF1dG9jb21wbGV0ZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmZmZmY7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDAgMCAwIDEuMjVyZW07XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBtaW4td2lkdGg6IDgwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnVpLWF1dG9jb21wbGV0ZSB7XG4gICAgICBtaW4td2lkdGg6IDQwMHB4OyB9IH1cbiAgLnVpLWF1dG9jb21wbGV0ZTpiZWZvcmUge1xuICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjZjRmNGY0O1xuICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC04cHg7XG4gICAgd2lkdGg6IDA7IH1cbiAgLnVpLWF1dG9jb21wbGV0ZSBsaSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAudWktYXV0b2NvbXBsZXRlIGxpOmhvdmVyLCAudWktYXV0b2NvbXBsZXRlIGxpLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWU3ZmY7IH1cbiAgICAudWktYXV0b2NvbXBsZXRlIGxpIGEsXG4gICAgLnVpLWF1dG9jb21wbGV0ZSBsaSBkaXYge1xuICAgICAgcGFkZGluZzogNXB4IDEwcHg7IH1cblxuLnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogLTk5OWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xOyB9XG5cbi51aS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFlN2ZmOyB9XG5cbi5ib3R0b20tbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgYm90dG9tOiAwO1xuICBib3gtc2hhZG93OiA5cHggNnB4IDZweCA2cHggIzkzOTU5ODtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGVmdDogMDtcbiAgbWluLXdpZHRoOiAzMDBweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAuNHM7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5ib3R0b20tbmF2X19pbm5lciB7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5ib3R0b20tbmF2X19saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDNweCAwOyB9XG5cbi5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsZWZ0OiAxMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA1cHg7XG4gIHRvcDogMnB4O1xuICB6LWluZGV4OiAxOyB9XG4gIC5icmVhZGNydW1iIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6ICMzZDk2Y2E7IH1cblxuLmF1dGhvciAuYnJlYWRjcnVtYixcbi5jYXRlZ29yeSAuYnJlYWRjcnVtYixcbi5jZW50cmUtZmluZGVyIC5icmVhZGNydW1iLFxuLmNvbnRhY3QgLmJyZWFkY3J1bWIsXG4uZmFxcy1wYWdlIC5icmVhZGNydW1iLFxuLmdlbmVyaWMgLmJyZWFkY3J1bWIge1xuICB0b3A6IDgycHg7IH1cblxuLmhlcm9fX2NvbnRlbnQtLWF1dGhvciAuaGVyb19fY29udGVudC1pbm5lcixcbi5oZXJvX19jb250ZW50LS1jYXRlZ29yeSAuaGVyb19fY29udGVudC1pbm5lciB7XG4gIG1heC13aWR0aDogNjAwcHg7IH1cblxuLmFydGljbGVfX2ludHJvIC5icmVhZGNydW1iIHtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogMDtcbiAgdG9wOiAwOyB9XG5cbi5oZXJvIC5icmVhZGNydW1iIHtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmhlcm8gLmJyZWFkY3J1bWIgYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuaGVybyAuYnJlYWRjcnVtYiBhOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuLmN0YS1tb2R1bGUgYS5jdGEtbW9kdWxlX19wcmltYXJ5LCAuYm90dG9tLW5hdl9fbGluaywgLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuY29udGVudGh1Yi1tZW51X19zZWFyY2gtYnV0dG9uLCAuZmVhdHVyZWQtZmFjaWxpdGllc19fdmlydHVhbC1idXR0b24sIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY3RhLCAuZmVlbGluZy1pbnNwaXJlZF9fYnV0dG9uLCAuZ2VuZXJpYy1tYWluX19idXR0b24sIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtbWV0YSAuaGlnaGxpZ2h0LWN0YSwgLmhvbWUtdjItY29udGVudC1ibG9jayAuaGlnaGxpZ2h0LWN0YSwgLm1vZGFsX19saW5rLS1idXR0b24sIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19idXR0b24sIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtbGluaywgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1idW5kbGUtbGluaywgLm1lbWJlcnNoaXAtb2ZmZXJfX2J1dHRvbiwgLnNjcm9sbGJveF9fY29udGVudC1idXR0b24sIC5jb29raWUtYmFubmVyX19idXR0b24sXG4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDgwZDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wOGVtO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAwLjY4NzVyZW0gMS4xMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmN0YS1tb2R1bGUgYS5jdGEtbW9kdWxlX19wcmltYXJ5LCAuYm90dG9tLW5hdl9fbGluaywgLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuY29udGVudGh1Yi1tZW51X19zZWFyY2gtYnV0dG9uLCAuZmVhdHVyZWQtZmFjaWxpdGllc19fdmlydHVhbC1idXR0b24sIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY3RhLCAuZmVlbGluZy1pbnNwaXJlZF9fYnV0dG9uLCAuZ2VuZXJpYy1tYWluX19idXR0b24sIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtbWV0YSAuaGlnaGxpZ2h0LWN0YSwgLmhvbWUtdjItY29udGVudC1ibG9jayAuaGlnaGxpZ2h0LWN0YSwgLm1vZGFsX19saW5rLS1idXR0b24sIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19idXR0b24sIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtbGluaywgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1idW5kbGUtbGluaywgLm1lbWJlcnNoaXAtb2ZmZXJfX2J1dHRvbiwgLnNjcm9sbGJveF9fY29udGVudC1idXR0b24sIC5jb29raWUtYmFubmVyX19idXR0b24sXG4gICAgLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBwYWRkaW5nOiAwLjY4NzVyZW0gMS41cmVtOyB9IH1cblxuLmJ1dHRvbi0tc3VidGxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjOWNhY2I7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6ICMxYjIzMjY7XG4gIHBhZGRpbmc6IDAuMzQzNzVyZW0gMC43NDI1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMnJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIC4zczsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5idXR0b24tLXN1YnRsZSB7XG4gICAgICBwYWRkaW5nOiAwLjM0Mzc1cmVtIDAuOTlyZW07IH0gfVxuICAuYnV0dG9uLS1zdWJ0bGU6aG92ZXIsIC5idXR0b24tLXN1YnRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkzOTU5ODsgfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fdmlydHVhbC1idXR0b24sIC5mZWVsaW5nLWluc3BpcmVkX19idXR0b24sIC5tZW1iZXJzaGlwLW9mZmVyX19idXR0b24sXG4uYnV0dG9uLS1sYXJnZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZjA4MGQ7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgcGFkZGluZzogMC43NXJlbSAyLjE4NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fdmlydHVhbC1idXR0b24sIC5mZWVsaW5nLWluc3BpcmVkX19idXR0b24sIC5tZW1iZXJzaGlwLW9mZmVyX19idXR0b24sXG4gICAgLmJ1dHRvbi0tbGFyZ2Uge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmMDgwZDtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZzogMC44MTI1cmVtIDEuNTYyNXJlbTsgfSB9XG5cbi5jdGEtbW9kdWxlIGEuY3RhLW1vZHVsZV9fcHJpbWFyeTpob3ZlciwgLmJvdHRvbS1uYXZfX2xpbms6aG92ZXIsIC5jb250YWN0LW1haW5fX2J1dHRvbjpob3ZlciwgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoLWJ1dHRvbjpob3ZlciwgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX3ZpcnR1YWwtYnV0dG9uOmhvdmVyLCAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWN0YTpob3ZlciwgLmZlZWxpbmctaW5zcGlyZWRfX2J1dHRvbjpob3ZlciwgLmdlbmVyaWMtbWFpbl9fYnV0dG9uOmhvdmVyLCAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlLW1ldGEgLmhpZ2hsaWdodC1jdGE6aG92ZXIsIC5ob21lLXYyLWNvbnRlbnQtYmxvY2sgLmhpZ2hsaWdodC1jdGE6aG92ZXIsIC5tb2RhbF9fbGluay0tYnV0dG9uOmhvdmVyLCAubWVtYmVyc2hpcC1iZW5lZml0c19fYnV0dG9uOmhvdmVyLCAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLWxpbms6aG92ZXIsIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtYnVuZGxlLWxpbms6aG92ZXIsIC5tZW1iZXJzaGlwLW9mZmVyX19idXR0b246aG92ZXIsIC5zY3JvbGxib3hfX2NvbnRlbnQtYnV0dG9uOmhvdmVyLCAuY29va2llLWJhbm5lcl9fYnV0dG9uOmhvdmVyLCAuY3RhLW1vZHVsZSBhLmN0YS1tb2R1bGVfX3ByaW1hcnk6Zm9jdXMsIC5ib3R0b20tbmF2X19saW5rOmZvY3VzLCAuY29udGFjdC1tYWluX19idXR0b246Zm9jdXMsIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1idXR0b246Zm9jdXMsIC5mZWF0dXJlZC1mYWNpbGl0aWVzX192aXJ0dWFsLWJ1dHRvbjpmb2N1cywgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1jdGE6Zm9jdXMsIC5mZWVsaW5nLWluc3BpcmVkX19idXR0b246Zm9jdXMsIC5nZW5lcmljLW1haW5fX2J1dHRvbjpmb2N1cywgLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS1tZXRhIC5oaWdobGlnaHQtY3RhOmZvY3VzLCAuaG9tZS12Mi1jb250ZW50LWJsb2NrIC5oaWdobGlnaHQtY3RhOmZvY3VzLCAubW9kYWxfX2xpbmstLWJ1dHRvbjpmb2N1cywgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2J1dHRvbjpmb2N1cywgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1saW5rOmZvY3VzLCAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLWJ1bmRsZS1saW5rOmZvY3VzLCAubWVtYmVyc2hpcC1vZmZlcl9fYnV0dG9uOmZvY3VzLCAuc2Nyb2xsYm94X19jb250ZW50LWJ1dHRvbjpmb2N1cywgLmNvb2tpZS1iYW5uZXJfX2J1dHRvbjpmb2N1cyxcbi5idXR0b246aG92ZXIsXG4uYnV0dG9uOmZvY3VzLCAuYnV0dG9uLS1zcXVhcmUsIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1idXR0b24sXG4uYnV0dG9uLS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwODBkO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG5cbi5idXR0b24tLWRpc2FibGVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2M5Y2FjYjtcbiAgY29sb3I6ICNjOWNhY2I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cblxuLmJ1dHRvbi0tcHJpbWVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG5cbi5idXR0b24tLWdyZXllZC1vdXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTM5NTk4O1xuICBjb2xvcjogIzkzOTU5ODsgfVxuICBcbiAgLmJ1dHRvbi0tZ3JleWVkLW91dDpob3ZlcixcbiAgLmJ1dHRvbi0tZ3JleWVkLW91dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG5cbi5idXR0b24tLWNoYW5nZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG4gIGNvbG9yOiAjMzMzOyB9XG4gIFxuICAuYnV0dG9uLS1jaGFuZ2U6aG92ZXIsXG4gIC5idXR0b24tLWNoYW5nZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLW1vcmUsXG4uYnV0dG9uX19tb3JlLWluZm8ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzNkOTZjYTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1tb3JlOmFmdGVyLFxuICAuYnV0dG9uX19tb3JlLWluZm86YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9leHBhbmQuc3ZnXCIpIGNlbnRlciBjZW50ZXIvMTVweCBhdXRvIG5vLXJlcGVhdDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMjBweDsgfVxuICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLW1vcmU6aG92ZXIsIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtbW9yZTpmb2N1cyxcbiAgLmJ1dHRvbl9fbW9yZS1pbmZvOmhvdmVyLFxuICAuYnV0dG9uX19tb3JlLWluZm86Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5idXR0b25fX21vcmUtaW5mby0tZXhwYW5kZWQuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLW1vcmU6YWZ0ZXIsXG4gIC5idXR0b25fX21vcmUtaW5mby5idXR0b25fX21vcmUtaW5mby0tZXhwYW5kZWQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9oaWRlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI4cHg7IH1cblxuLmJ1dHRvbl9fc2F2ZS1zZWxlY3Rpb24ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzNkOTZjYTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmJ1dHRvbl9fc2F2ZS1zZWxlY3Rpb246YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9kb3dubG9hZC1ibHVlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI4cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IC0xcHg7XG4gICAgd2lkdGg6IDI1cHg7IH1cbiAgLmJ1dHRvbl9fc2F2ZS1zZWxlY3Rpb246aG92ZXIsIC5idXR0b25fX3NhdmUtc2VsZWN0aW9uOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubG9jYXRpb24tZmluZGVyX19idXR0b24tbG9jYXRpb24sXG4uYnV0dG9uX19sb2NhdGlvbiB7XG4gIGNvbG9yOiAjZmYwODBkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5sb2NhdGlvbi1maW5kZXJfX2J1dHRvbi1sb2NhdGlvbjpiZWZvcmUsXG4gIC5idXR0b25fX2xvY2F0aW9uOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2dlb2xvY2F0aW9uLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMycHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTZweDtcbiAgICB3aWR0aDogMzJweDsgfVxuXG4uYnV0dG9uX19sb2FkLW1vcmUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICBjb2xvcjogIzAwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjtcbiAgb3V0bGluZTogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB3aWR0aDogMTAwJTsgfVxuICAuYnV0dG9uX19sb2FkLW1vcmU6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7IH1cbiAgICAuYnV0dG9uX19sb2FkLW1vcmU6aG92ZXIgc3BhbjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZG93bmxvYWQtd2hpdGUuc3ZnXCIpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC40czsgfVxuICAuYnV0dG9uX19sb2FkLW1vcmUgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5idXR0b25fX2xvYWQtbW9yZSBzcGFuIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5idXR0b25fX2xvYWQtbW9yZSBzcGFuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9kb3dubG9hZC1ibGFjay5zdmdcIikgY2VudGVyIGNlbnRlci9jb250YWluIG5vLXJlcGVhdDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDJweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICB3aWR0aDogMThweDsgfVxuICAuYnV0dG9uX19sb2FkLW1vcmUubG9hZGluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBjb2xvcjogIzMzMzsgfVxuICAgIC5idXR0b25fX2xvYWQtbW9yZS5sb2FkaW5nIHNwYW46YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3JvbGxpbmcuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNnB4OyB9XG5cbi5idXR0b24tLXNxdWFyZSB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIHBhZGRpbmc6IDIwcHggMjRweDsgfVxuXG4uY2VudHJlLWFib3V0IHtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDQ1cHggMjBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNlbnRyZS1hYm91dDo6YmVmb3JlLCAuY2VudHJlLWFib3V0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jZW50cmUtYWJvdXQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtYWJvdXQge1xuICAgICAgcGFkZGluZy10b3A6IDYwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgLmNlbnRyZS1hYm91dCB7XG4gICAgICBwYWRkaW5nLXRvcDogODBweDsgfSB9XG4gIC5jZW50cmUtYWJvdXQgcDpub3QoLnRhZ2xpbmUpIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDMwcHg7XG4gICAgbWF4LXdpZHRoOiA3NTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2VudHJlLWFib3V0IHA6bm90KC50YWdsaW5lKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIC5jZW50cmUtYWJvdXQgcC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luOiA1cmVtIDAgMS4yNXJlbTsgfVxuICAuY2VudHJlLWFib3V0IGltZyB7XG4gICAgbWF4LWhlaWdodDogMTQwcHg7XG4gICAgbWF4LXdpZHRoOiAxODBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuY2VudHJlLWFib3V0IGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07IH1cbiAgLmNlbnRyZS1hYm91dCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtLjAzZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuMjVyZW07IH1cblxuLmNlbnRyZS1hY3Rpdml0aWVzIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuY2VudHJlLWFjdGl2aXRpZXM6OmJlZm9yZSwgLmNlbnRyZS1hY3Rpdml0aWVzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jZW50cmUtYWN0aXZpdGllczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDsgfSB9XG4gIC5jZW50cmUtYWN0aXZpdGllcyBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAgMjBweDsgfVxuICAuY2VudHJlLWFjdGl2aXRpZXMgaDMge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLS4wM2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjI1cmVtOyB9XG5cbi5jZW50cmUtYWN0aXZpdGllc19faW50cm8ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDIwcHggYXV0byAzMHB4O1xuICBtYXgtd2lkdGg6IDc1MHB4O1xuICBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWFjdGl2aXRpZXNfX2ludHJvIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2VudHJlLWFjdGl2aXRpZXNfX3dyYXBwZXIge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX193cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX193cmFwcGVyLCAuY2VudHJlLWFjdGl2aXRpZXNfX3dyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX193cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0cyB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0cyB7XG4gICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgd2lkdGg6IDg1JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0cyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdHMgaDMge1xuICAgIG1hcmdpbjogNTBweCAwIDE1cHg7IH1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19maWx0ZXIge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDIwcHggMjBweCAyNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fZmlsdGVyOjpiZWZvcmUsIC5jZW50cmUtYWN0aXZpdGllc19fZmlsdGVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fZmlsdGVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWFjdGl2aXRpZXNfX2ZpbHRlciB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCA0MHB4OyB9IH1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19maWx0ZXItb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19maWx0ZXItb3B0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1heC13aWR0aDogODAlOyB9IH1cbiAgLmNlbnRyZS1hY3Rpdml0aWVzX19maWx0ZXItb3B0aW9ucyAuZmlsdGVyLW9wdGlvbnMge1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb2xkXCIsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19maWx0ZXItY2xlYXIge1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6ICNmZjA4MGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLXRvcDogNXB4OyB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fZmlsdGVyLWNsZWFyOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtYWN0aXZpdGllc19fZmlsdGVyLWNsZWFyIHtcbiAgICAgIGNsZWFyOiBpbml0aWFsO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5jZW50cmUtYWN0aXZpdGllc19fbGlzdCB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0OjpiZWZvcmUsIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX25vLXJlc3VsdCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWFjdGl2aXRpZXNfX25vLXJlc3VsdCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07IH0gfVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbSB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAyNXB4IDQ1cHggMjVweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWl0ZW0ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgICAgcGFkZGluZzogMjVweCAwIDEwcHggMjBweDtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC1pdGVtIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDE5MHB4O1xuICAgICAgd2lkdGg6IDI1JTsgfSB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZTRlNGU1OyB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC1pdGVtIGg1IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzkzOTU5ODtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWl0ZW0gaDUge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgfSB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC1pdGVtIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzY2NjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbSBwIHtcbiAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH0gfVxuICAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWl0ZW0gdWwge1xuICAgICAgICBtYXJnaW46IDAgMCAyNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9IH1cbiAgICAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbSB1bCBsaSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6ICM2NjY7XG4gICAgICBtYXJnaW46IDVweCAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbSB1bCBsaTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmYwODBkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgd2lkdGg6IDRweDsgfVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtLXBvcHVsYXIge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC0tcG9wdWxhciAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LS1wb3B1bGFyIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC0tcG9wdWxhciAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbSB7XG4gICAgICAgIHdpZHRoOiAyNSU7IH0gfVxuICAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtLXBvcHVsYXIgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWl0ZW0tY29udGVudCB7XG4gICAgbWluLWhlaWdodDogMTUwcHg7XG4gICAgcGFkZGluZzogMjVweCAyMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtYWN0aXZpdGllc19fbGlzdC0tcG9wdWxhciAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaXRlbS1jb250ZW50IHtcbiAgICAgICAgbWluLWhlaWdodDogMTkwcHg7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMCAxMHB4IDI1cHg7IH0gfVxuICAuY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtLXBvcHVsYXIgLmNlbnRyZS1hY3Rpdml0aWVzX19zaG93LWluZm86YmVmb3JlIHtcbiAgICBib3R0b206IDEwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHRvcDogYXV0bzsgfVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX2xpc3QtaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWltYWdlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2MCU7IH0gfVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX3Nob3ctaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgb3V0bGluZTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwOyB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fc2hvdy1pbmZvOmhvdmVyLCAuY2VudHJlLWFjdGl2aXRpZXNfX3Nob3ctaW5mbzpmb2N1cyB7XG4gICAgY29sb3I6ICMzMzM7IH1cbiAgLmNlbnRyZS1hY3Rpdml0aWVzX19zaG93LWluZm86YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc2hvdy1tb3JlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogN3B4O1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMzBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2VudHJlLWFjdGl2aXRpZXNfX3Nob3ctaW5mbzpiZWZvcmUge1xuICAgICAgICBib3R0b206IDdweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB0b3A6IGF1dG87IH0gfVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX2xvYWQtbW9yZSB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19sb2FkLW1vcmUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjsgfSB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fbG9hZC1tb3JlLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jZW50cmUtYWN0aXZpdGllc19fbG9hZC1tb3JlIGJ1dHRvbiB7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2M5Y2FjYjtcbiAgICB3aWR0aDogMTc1cHg7IH1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19pbmZvIHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLWNlbnRyZS1maW5kZXIgLndyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZW50cmUtZmluZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5jZW50cmUtZmluZGVyIC5jb250YWluZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jZW50cmUtZmluZGVyX19iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nLXRvcDogNzJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX2JhY2tncm91bmQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY2VudHJlLWZpbmRlcl9fY29sdW1uIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDYwJTsgfVxuICAuY2VudHJlLWZpbmRlcl9fY29sdW1uLmNlbnRyZS1maW5kZXJfX2NvbHVtbi0taW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9iZy9jZW50cmUtZmluZGVyLmpwZ1wiKSBuby1yZXBlYXQgY2VudGVyIHRvcDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNDAlOyB9XG5cbi5jZW50cmUtZmluZGVyX19tYXAge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2VudHJlLWZpbmRlcl9fbWFwLWlubmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2VudHJlLWZpbmRlcl9fY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIG1pbi1oZWlnaHQ6IDgwdmg7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fY29udGVudCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jZW50cmUtZmluZGVyX19jb250ZW50LCAuY2VudHJlLWZpbmRlcl9fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuY2VudHJlLWZpbmRlcl9fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgICAgIC5jZW50cmUtZmluZGVyX19jb250ZW50LCAuY2VudHJlLWZpbmRlcl9fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuY2VudHJlLWZpbmRlcl9fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtc2Nyb2xsLW1vcmUge1xuICBoZWlnaHQ6IDM1cHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtc2Nyb2xsLW1vcmUgcCB7XG4gICAgY29sb3I6ICM5Mzk1OTg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2VudHJlLWZpbmRlcl9fc2lkZWJhciB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmNlbnRyZS1maW5kZXItY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAyLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlci1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXItY29udGVudCB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlci1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctdG9wOiA1cmVtOyB9IH1cblxuLmNlbnRyZS1maW5kZXItY29udGVudF9faGVhZGVyIHtcbiAgcGFkZGluZzogMTVweCAyMHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtZmluZGVyLWNvbnRlbnRfX2hlYWRlciB7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMCAwOyB9IH1cbiAgLmNlbnRyZS1maW5kZXItY29udGVudF9faGVhZGVyIGgxLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2VudHJlLWZpbmRlci1jb250ZW50X19oZWFkZXIgaDEuaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtZmluZGVyLWNvbnRlbnRfX2hlYWRlciBoMSB7XG4gICAgICBmb250LXNpemU6IDIuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDMuODc1cmVtOyB9IH1cbiAgLmNlbnRyZS1maW5kZXItY29udGVudF9faGVhZGVyIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1heC13aWR0aDogNjgwcHg7IH1cblxuLmNlbnRyZS1maW5kZXItY29udGVudF9faGVhZGVyLS1zZWNvbmRhcnkge1xuICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07XG4gIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXItY29udGVudF9faGVhZGVyLS1zZWNvbmRhcnkge1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtZmluZGVyLWNvbnRlbnRfX2hlYWRlci0tc2Vjb25kYXJ5IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNSU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtZmluZGVyLWNvbnRlbnRfX2hlYWRlci0tc2Vjb25kYXJ5IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3LjgxMjVyZW07IH0gfVxuXG4uY2VudHJlLWZpbmRlci1jb250ZW50X19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIG1heC13aWR0aDogNjgwcHg7XG4gIHBhZGRpbmc6IDIwcHggMCA2MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXItY29udGVudF9fZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG5cbi5jZW50cmUtZmluZGVyLWNvbnRlbnRfX2xpbmsge1xuICBjb2xvcjogIzNkOTZjYTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmNlbnRyZS1maW5kZXItY29udGVudF9fbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlci1jb250ZW50X19saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1sb2FkZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbWV0YSB7XG4gIHBhZGRpbmc6IDMwcHggMTVweCAyMHB4OyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLW1ldGE6OmJlZm9yZSwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbWV0YTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1tZXRhOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtYW1vdW50IHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtYW1vdW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtYW1vdW50IHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNzVweCk7IH0gfVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1jb250ZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLXNoYWRvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtc2hhZG93LnNoYWRvdy0tdG9wIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM5Mzk1OTggMCwgcmdiYSgwLCAwLCAwLCAwKSAzMHB4LCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgdG9wOiAtMTVweDsgfVxuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLXNoYWRvdy5zaGFkb3ctLWJvdHRvbSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAjOTM5NTk4IDAsIHJnYmEoMCwgMCwgMCwgMCkgMzBweCwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAxNXB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtc2Nyb2xsIHtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLXNjcm9sbCB7XG4gICAgcGFkZGluZzogMCAxNXB4OyB9IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1saXN0LWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgcGFkZGluZzogMS4yNXJlbSAwLjc1cmVtIDFyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWxpc3QtaXRlbTo6YmVmb3JlLCAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1saXN0LWl0ZW06OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbGlzdC1pdGVtOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1saXN0LWl0ZW0ge1xuICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjEyNXJlbTsgfSB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWxpc3QtaXRlbTpob3ZlciwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbGlzdC1pdGVtLmV4cGFuZGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU1OyB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWFjdGlvbnMge1xuICB3aWR0aDogMTAwJTsgfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zOjpiZWZvcmUsIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWFjdGlvbnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtYWN0aW9uczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWFjdGlvbnMuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zLS1tb2Ige1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZzogMC43NXJlbSAwOyB9XG4gICAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtYWN0aW9ucy0tbW9iIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWFjdGlvbnNfX21ldGEge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtYWN0aW9uc19fbWV0YSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zX19tZXRhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zX19tZXRhLCAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zX19tZXRhOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWFjdGlvbnNfX21ldGE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbmFtZSB7XG4gIHdpZHRoOiA4My4zMzMzMyU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNjg3NXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbmFtZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLW5hbWUsIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbmFtZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLW5hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1uYW1lIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLW5hbWUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbmFtZSwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1uYW1lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbmFtZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1uYW1lIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbmFtZSBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tZGlzdGFuY2Uge1xuICB3aWR0aDogMzMuMzMzMzMlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY2NjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tZGlzdGFuY2Uge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1kaXN0YW5jZSwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1kaXN0YW5jZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLWRpc3RhbmNlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLW1vcmUsXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLXNlbGVjdCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLW1vcmUsXG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1zZWxlY3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1tb3JlLCAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLW1vcmU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1zZWxlY3QsXG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tc2VsZWN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbW9yZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLXNlbGVjdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1tb3JlIGEuYnV0dG9uLFxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLXNlbGVjdCBhLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDgwZDtcbiAgICBib3JkZXItY29sb3I6ICNmZjA4MGQ7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbW9yZSBhLmJ1dHRvbjpob3ZlcixcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLXNlbGVjdCBhLmJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1tb3JlIC5idXR0b25fX21vcmUtaW5mbzphZnRlcixcbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1zZWxlY3QgLmJ1dHRvbl9fbW9yZS1pbmZvOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXhwYW5kLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTVweDsgfVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHdoaXRlO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlsczo6YmVmb3JlLCAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgIHRvcDogMThweDsgfSB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbCwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2wtLWZhY2lsaXRpZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2wuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbC0tdGltZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6Zmlyc3Qtb2YtdHlwZSwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6Zmlyc3Qtb2YtdHlwZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpmaXJzdC1vZi10eXBlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpudGgtb2YtdHlwZSgyKSwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bnRoLW9mLXR5cGUoMik6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bnRoLW9mLXR5cGUoMik6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpsYXN0LW9mLXR5cGUge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bGFzdC1vZi10eXBlLCAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpsYXN0LW9mLXR5cGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bGFzdC1vZi10eXBlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2wuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbC0tZmFjaWxpdGllcyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sLS10aW1lcyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpmaXJzdC1vZi10eXBlLCAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpmaXJzdC1vZi10eXBlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sOmZpcnN0LW9mLXR5cGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sOm50aC1vZi10eXBlKDIpIHtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2w6bnRoLW9mLXR5cGUoMiksIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sOm50aC1vZi10eXBlKDIpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sOm50aC1vZi10eXBlKDIpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbCBoNSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtY29sIGg1IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLW1vYmlsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMC42NTYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1tYXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzljYWNiO1xuICBib3JkZXI6IDJweCBzb2xpZCAjNjY2O1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1tYXAge1xuICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1hZGRyZXNzIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNjY2OyB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtbGluayB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi10b3A6IDEycHg7IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1saXN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWxpc3QtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1saXN0IHtcbiAgbWFyZ2luOiAwIDAgMCAzNXB4O1xuICBtYXgtd2lkdGg6IDIzMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtbGlzdCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IGF1dG87IH0gfVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWxpc3QtaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDVweCAwOyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtbGlzdC1pdGVtOmZpcnN0LWxldHRlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWxpc3QtaXRlbSBzcGFuIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy10b2RheSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjMzMzO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtdG9kYXkge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtdG9kYXk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY2xvY2stYmx1ZS5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTNweDtcbiAgICB3aWR0aDogMzBweDsgfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLXRvZGF5IHNwYW4ge1xuICAgIGNvbG9yOiAjNjY2OyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtdG9kYXkgYnV0dG9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy10b2RheSBidXR0b246aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWxvYWQtbW9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbSAxLjI1cmVtIDAuNjI1cmVtO1xuICB3aWR0aDogMTAwJTsgfVxuICAuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1sb2FkLW1vcmU6OmJlZm9yZSwgLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbG9hZC1tb3JlOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jZW50cmUtZmluZGVyX19yZXN1bHRzLWxvYWQtbW9yZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLW1lc3NhZ2Uge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAxMDBweCBhdXRvO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY2VudHJlLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIyMzI2O1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLWluZm8ge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbiAgICAgIG1hcmdpbi10b3A6IC02MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLWluZm8ge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jZW50cmUtaW5mbywgLmNlbnRyZS1pbmZvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5jZW50cmUtaW5mbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmNlbnRyZS1pbmZvIC5icmVhZGNydW1iIHtcbiAgICBwYWRkaW5nOiAwIDFyZW07IH1cbiAgICAuY2VudHJlLWluZm8gLmJyZWFkY3J1bWIgYSB7XG4gICAgICBjb2xvcjogIzNkOTZjYTsgfVxuXG4uY2VudHJlLWluZm9fX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgcGFkZGluZzogNDBweCAyMHB4IDI1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtaW5mb19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjM3NXJlbTtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1pbmZvX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDMuNXJlbTtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZW50cmUtaW5mb19fY29sdW1ucyB7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIHdpZHRoOiA5MCU7IH0gfVxuXG4uY2VudHJlLWluZm9fX2NvbHVtbi13cmFwcGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmZmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLWluZm9fX2NvbHVtbi13cmFwcGVyIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgLmNlbnRyZS1pbmZvX19jb2x1bW4td3JhcHBlci5leHBhbmRlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVmZmY7IH0gfVxuXG4uY2VudHJlLWluZm9fX21vYmlsZS10aXRsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jZW50cmUtaW5mb19fbW9iaWxlLXRpdGxlOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXhwYW5kLWJsdWUuc3ZnXCIpIGNlbnRlciBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjBweDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDE1cHg7IH1cbiAgLmNlbnRyZS1pbmZvX19tb2JpbGUtdGl0bGUuZXhwYW5kZWQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9oaWRlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLWluZm9fX21vYmlsZS10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNlbnRyZS1pbmZvX19zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1pbmZvX19zbGlkZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgLmNlbnRyZS1pbmZvX19zbGlkZSAuY2VudHJlLWluZm9fX2NvbHVtbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2VudHJlLWluZm9fX3NsaWRlIC5jZW50cmUtaW5mb19fY29sdW1uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogNDklOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNlbnRyZS1pbmZvX19zbGlkZSAuY2VudHJlLWluZm9fX2NvbHVtbiB7XG4gICAgICAgIHdpZHRoOiAzMy4zMyU7IH0gfVxuXG4uY2VudHJlLWluZm9fX2NvbHVtbiB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLWluZm9fX2NvbHVtbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAwIDI0cHg7XG4gICAgICB3aWR0aDogMzMuMzMlOyB9IH1cbiAgLmNlbnRyZS1pbmZvX19jb2x1bW4gaDUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNlbnRyZS1pbmZvX19jb2x1bW4gaDUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgLmNlbnRyZS1pbmZvX19jb2x1bW4gcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAuY2VudHJlLWluZm9fX2NvbHVtbiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5jZW50cmUtaW5mb19fY29sdW1uIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jZW50cmUtaW5mb19fbGluayB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbjogMCAxMnB4IDE1cHggMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtaW5mb19fbGluayB7XG4gICAgICBtYXJnaW46IDEwcHggMTJweCAwIDA7IH0gfVxuXG4uY2VudHJlLWluZm9fX2xpbmstY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNlbnRyZS1pbmZvX19saW5rLS1ibG9jayB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1pbmZvX19saW5rLS1ibG9jayB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG5cbi5jZW50cmUtaW5mb19fc29jaWFsIHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtaW5mb19fc29jaWFsIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICAuY2VudHJlLWluZm9fX3NvY2lhbCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNlbnRyZS1pbmZvX19zb2NpYWwtaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IDMwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGNlbnRlciBjZW50ZXIgLyBjb250YWluIG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtaW5mb19fc29jaWFsLWljb24ge1xuICAgICAgaGVpZ2h0OiAyNnB4O1xuICAgICAgd2lkdGg6IDI2cHg7IH0gfVxuICAuY2VudHJlLWluZm9fX3NvY2lhbC1pY29uLmNlbnRyZS1pbmZvX19zb2NpYWwtaWNvbi0tZmIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9mYWNlYm9vay13aGl0ZS5zdmdcIik7IH1cbiAgLmNlbnRyZS1pbmZvX19zb2NpYWwtaWNvbi5jZW50cmUtaW5mb19fc29jaWFsLWljb24tLXR3IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcveC13aGl0ZS5zdmdcIik7IH1cbiAgLmNlbnRyZS1pbmZvX19zb2NpYWwtaWNvbi5jZW50cmUtaW5mb19fc29jaWFsLWljb24tLWlnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaW5zdGFncmFtLXdoaXRlLnN2Z1wiKTsgfVxuICAuY2VudHJlLWluZm9fX3NvY2lhbC1pY29uLmNlbnRyZS1pbmZvX19zb2NpYWwtaWNvbi0tdHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy90aWt0b2std2hpdGUuc3ZnXCIpOyB9XG4gIC5jZW50cmUtaW5mb19fc29jaWFsLWljb24uY2VudHJlLWluZm9fX3NvY2lhbC1pY29uLS15dCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3lvdXR1YmUtd2hpdGUuc3ZnXCIpOyB9XG5cbi5jZW50cmUtaW5mb19fb3BlbmluZy10aW1lcy10b2RheSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb2xkXCIsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1pbmZvX19vcGVuaW5nLXRpbWVzLXRvZGF5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAuY2VudHJlLWluZm9fX29wZW5pbmctdGltZXMtdG9kYXkgc3BhbiB7XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjsgfVxuICAuY2VudHJlLWluZm9fX29wZW5pbmctdGltZXMtdG9kYXkgYnV0dG9uOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNlbnRyZS1pbmZvX19vcGVuaW5nLXRpbWVzLWJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjM2Q5NmNhO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgb3V0bGluZTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1pbmZvX19vcGVuaW5nLXRpbWVzLWJ1dHRvbiB7XG4gICAgICByaWdodDogLTI1cHg7IH0gfVxuICAuY2VudHJlLWluZm9fX29wZW5pbmctdGltZXMtYnV0dG9uOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXhwYW5kLWJsdWUuc3ZnXCIpIGNlbnRlciBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDE1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNlbnRyZS1pbmZvX19vcGVuaW5nLXRpbWVzLWJ1dHRvbjphZnRlciB7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgdG9wOiA0cHg7IH0gfVxuICAuY2VudHJlLWluZm9fX29wZW5pbmctdGltZXMtYnV0dG9uLmV4cGFuZGVkOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaGlkZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9XG5cbi5jZW50cmUtaW5mb19fb3BlbmluZy10aW1lcy1saXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgd2lkdGg6IDkwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jZW50cmUtaW5mb19fb3BlbmluZy10aW1lcy1saXN0IHtcbiAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cblxuLmNlbnRyZS1pbmZvX19vcGVuaW5nLXRpbWVzLWxpc3QtaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDVweCAwO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAuY2VudHJlLWluZm9fX29wZW5pbmctdGltZXMtbGlzdC1pdGVtID4gc3BhbiB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jZW50cmUtbWVudSB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6IDYycHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jZW50cmUtbWVudTo6YmVmb3JlLCAuY2VudHJlLW1lbnU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNlbnRyZS1tZW51OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNlbnRyZS1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY2VudHJlLW1lbnVfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICBib3gtc2hhZG93OiAwIDRweCAycHggLTJweCAjOTM5NTk4O1xuICAgIGxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogNThweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNlbnRyZS1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY2VudHJlLW1lbnVfX3dyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gICAgLmNlbnRyZS1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY2VudHJlLW1lbnVfX3dyYXBwZXIsIC5jZW50cmUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNlbnRyZS1tZW51X193cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5jZW50cmUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNlbnRyZS1tZW51X193cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNlbnRyZS1tZW51X193cmFwcGVyIHtcbiAgICAgICAgdG9wOiA3MHB4OyB9IH1cbiAgICAuY2VudHJlLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jZW50cmUtbWVudV9fd3JhcHBlci5zbGlkZS11cCB7XG4gICAgICB0b3A6IDA7IH1cbiAgLmNlbnRyZS1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY2VudHJlLW1lbnVfX2NvbHVtbnMge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5jZW50cmUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNlbnRyZS1tZW51X19jb2x1bW5zOjpiZWZvcmUsIC5jZW50cmUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNlbnRyZS1tZW51X19jb2x1bW5zOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5jZW50cmUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNlbnRyZS1tZW51X19jb2x1bW5zOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2VudHJlLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jZW50cmUtbWVudV9fY29sdW1ucyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jZW50cmUtbWVudV9fY29sdW1uIHtcbiAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmZmZmY7IH1cbiAgICAgIC5jZW50cmUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNlbnRyZS1tZW51X19jb2x1bW46bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jZW50cmUtbWVudV9fY29sdW1uOmZpcnN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjZmZmZmZmOyB9XG4gICAgLmNlbnRyZS1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY2VudHJlLW1lbnVfX2NvbHVtbjpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI2ZmZmZmZjsgfSB9XG5cbi50b3VjaGV2ZW50cyAuY2VudHJlLW1lbnVfX3dyYXBwZXIge1xuICB0cmFuc2l0aW9uOiB0b3AgLjRzOyB9XG5cbi5jZW50cmUtbWVudV9fd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmZmZmO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDsgfVxuICAuY2VudHJlLW1lbnVfX3dyYXBwZXI6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbGVmdC1mYWRlLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNDBweDtcbiAgICB6LWluZGV4OiAxMDsgfVxuICAuY2VudHJlLW1lbnVfX3dyYXBwZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9yaWdodC1mYWRlLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDQwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLW1lbnVfX3dyYXBwZXI6YmVmb3JlLCAuY2VudHJlLW1lbnVfX3dyYXBwZXI6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1tZW51X193cmFwcGVyIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLW1lbnVfX3dyYXBwZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jZW50cmUtbWVudV9fd3JhcHBlciwgLmNlbnRyZS1tZW51X193cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5jZW50cmUtbWVudV9fd3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmNlbnRyZS1tZW51X19jb2x1bW5zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jZW50cmUtbWVudV9fY29sdW1uczo6YmVmb3JlLCAuY2VudHJlLW1lbnVfX2NvbHVtbnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNlbnRyZS1tZW51X19jb2x1bW5zOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLW1lbnVfX2NvbHVtbnMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHdpZHRoOiA5MCU7IH0gfVxuXG4uY2VudHJlLW1lbnVfX2NvbHVtbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAxOHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMzMuMzMlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1tZW51X19jb2x1bW4ge1xuICAgICAgcGFkZGluZzogMThweDsgfSB9XG5cbi5jZW50cmUtbWVudV9fbGluayB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLW1lbnVfX2xpbmsge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuICAuY2VudHJlLW1lbnVfX2xpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjZmYwODBkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5jZW50cmUtbWVudV9fbGluay0tZXh0ZXJuYWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNmZjA4MGQ7XG4gIGJvdHRvbTogMDtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDZweDtcbiAgbGVmdDogMjAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAyMCU7IH1cblxuLmNlbnRyZS1tZW51X19saW5rLS1hbmNob3Ige1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNlbnRyZS1uZXdzIHtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDI1cHggMjBweCAxNXB4OyB9XG4gIC5jZW50cmUtbmV3czo6YmVmb3JlLCAuY2VudHJlLW5ld3M6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNlbnRyZS1uZXdzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2VudHJlLW5ld3Mge1xuICAgICAgcGFkZGluZzogNDVweCAwIDIwcHg7IH0gfVxuICAuY2VudHJlLW5ld3MgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNlbnRyZS1uZXdzIGg0IHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtbmV3cyBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2VudHJlLW5ld3MgaDQge1xuICAgICAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtbmV3cyBoNCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jZW50cmUtbmV3cyBoNCwgLmNlbnRyZS1uZXdzIGg0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIC5jZW50cmUtbmV3cyBoNDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgLmNlbnRyZS1uZXdzIGg0IHNwYW4ge1xuICAgICAgICAgIG1heC13aWR0aDogODAlOyB9IH1cblxuLmNlbnRyZS1uZXdzX19jb2x1bW4tdGl0bGUge1xuICBjbGVhcjogYm90aDtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLmNlbnRyZS1uZXdzX19jb2x1bW4tbGlzdCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1uZXdzX19jb2x1bW4tbGlzdCB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1uZXdzX19jb2x1bW4tbGlzdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNlbnRyZS1uZXdzX19jb2x1bW4tbGlzdCwgLmNlbnRyZS1uZXdzX19jb2x1bW4tbGlzdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuY2VudHJlLW5ld3NfX2NvbHVtbi1saXN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2VudHJlLW5ld3NfX3Bvc3Qtd3JhcHBlciB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtbmV3c19fcG9zdC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1uZXdzX19wb3N0LXdyYXBwZXIsIC5jZW50cmUtbmV3c19fcG9zdC13cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5jZW50cmUtbmV3c19fcG9zdC13cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmNlbnRyZS1uZXdzX19wb3N0IHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM2NjY7XG4gIHBhZGRpbmc6IDE1cHggMDsgfVxuICAuY2VudHJlLW5ld3NfX3Bvc3Q6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLmNlbnRyZS1uZXdzX19wb3N0IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5jZW50cmUtbmV3c19fcG9zdCBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5jZW50cmUtbmV3c19fcG9zdC10eXBlIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiAjYzljYWNiO1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IFwiQ2lyY3VsYXIgU3RkIE1lZGl1bVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiA0NXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNlbnRyZS1uZXdzX19wb3N0LXR5cGUge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHdpZHRoOiA2NnB4OyB9IH1cbiAgLmNlbnRyZS1uZXdzX19wb3N0LXR5cGUuY2VudHJlLW5ld3NfX3Bvc3QtdHlwZS0tTmV3cyB7XG4gICAgYmFja2dyb3VuZDogI2M5Y2FjYjtcbiAgICBjb2xvcjogIzMzMzsgfVxuICAuY2VudHJlLW5ld3NfX3Bvc3QtdHlwZS5jZW50cmUtbmV3c19fcG9zdC10eXBlLS1FdmVudCB7XG4gICAgYmFja2dyb3VuZDogIzY2NjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uY2VudHJlLW5ld3NfX3Bvc3QtdGl0bGUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAxMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNzVweCk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2VudHJlLW5ld3NfX3Bvc3QtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxODZweCk7IH0gfVxuXG4uY2VudHJlLW5ld3NfX3Bvc3QtbGluayB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDIwcHg7IH1cbiAgLmNlbnRyZS1uZXdzX19wb3N0LWxpbmsgc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY2VudHJlLW5ld3NfX3Bvc3QtbGluazphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2NoZXZyb24tcmlnaHQtd2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtbmV3c19fcG9zdC1saW5rIHtcbiAgICAgIHdpZHRoOiAxMTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNlbnRyZS1uZXdzX19wb3N0LWxpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICAuY2VudHJlLW5ld3NfX3Bvc3QtbGluayBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lOyB9IH1cblxuLmNlbnRyZS1uZXdzX19saW5rIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jZW50cmUtbmV3c19fbGluayB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtOyB9IH1cbiAgLmNlbnRyZS1uZXdzX19saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuY2VudHJlLW5ld3NfX2xpbms6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaGV2cm9uLXJpZ2h0LXdoaXRlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyNXB4OyB9XG5cbi5jZW50cmUtdGltZXRhYmxlcyB7XG4gIHBhZGRpbmc6IDAgMjBweDsgfVxuICAuY2VudHJlLXRpbWV0YWJsZXMgcCB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG8gMzBweDtcbiAgICBtYXgtd2lkdGg6IDgwMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jZW50cmUtdGltZXRhYmxlcyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfSB9XG5cbi5jZW50cmUtdGltZXRhYmxlc19fbGlua3Mge1xuICBtYXJnaW46IGF1dG87XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmNlbnRyZS10aW1ldGFibGVzX19saW5rczo6YmVmb3JlLCAuY2VudHJlLXRpbWV0YWJsZXNfX2xpbmtzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jZW50cmUtdGltZXRhYmxlc19fbGlua3M6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuY2VudHJlLXRpbWV0YWJsZXNfX2xpbmtzIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDVweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2VudHJlLXRpbWV0YWJsZXNfX2xpbmtzIGxpIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgLmNlbnRyZS10aW1ldGFibGVzX19saW5rcyBsaSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAjM2Q5NmNhOyB9XG5cbi5jb250YWN0LW1haW4ge1xuICBwYWRkaW5nOiAzLjc1cmVtIDAgMS4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0LW1haW4ge1xuICAgICAgcGFkZGluZzogNXJlbSAwIDEuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWN0LW1haW4ge1xuICAgICAgcGFkZGluZzogNi4yNXJlbSAwOyB9IH1cblxuLmNvbnRhY3QtbWFpbl9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGFjdC1tYWluX19oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRhY3QtbWFpbl9faGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweCAwIDA7IH0gfVxuICAuY29udGFjdC1tYWluX19oZWFkZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlNGU0ZTU7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbGVmdDogMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250YWN0LW1haW5fX2hlYWRlcjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cHgpOyB9IH1cbiAgLmNvbnRhY3QtbWFpbl9faGVhZGVyLmNvbnRhY3QtbWFpbl9faGVhZGVyLS1zdWJtaXR0ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuY29udGFjdC1tYWluX19oZWFkZXIuY29udGFjdC1tYWluX19oZWFkZXItLXN1Ym1pdHRlZDphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRhY3QtbWFpbl9faGVhZGVyIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMi44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMy44NzVyZW07IH0gfVxuICAuY29udGFjdC1tYWluX19oZWFkZXIgaDIge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWF4LXdpZHRoOiA2ODBweDsgfVxuXG4uY29udGFjdC1tYWluX19oZWFkZXItY29udGVudCB7XG4gIHBhZGRpbmc6IDMwcHggMDsgfVxuXG4uY29udGFjdC1tYWluX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIG1heC13aWR0aDogNjgwcHg7XG4gIHBhZGRpbmc6IDIwcHggMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0LW1haW5fX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgNDBweDsgfSB9XG5cbi5jb250YWN0LW1haW5fX21vZHVsZSB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmZmZmO1xuICBwYWRkaW5nOiAzMHB4IDIwcHggMzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA0MHB4IDIwcHggNDVweDsgfVxuICAuY29udGFjdC1tYWluX19tb2R1bGUuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjFmMmY0OyB9XG4gIC5jb250YWN0LW1haW5fX21vZHVsZS5jb250YWN0LW1haW5fX21vZHVsZS0tZGV0YWlscyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cbiAgLmNvbnRhY3QtbWFpbl9fbW9kdWxlLmNvbnRhY3QtbWFpbl9fbW9kdWxlLS1lbnF1aXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRhY3QtbWFpbl9fbW9kdWxlIHtcbiAgICAgIG1heC13aWR0aDogNzgwcHg7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLmNvbnRhY3QtbWFpbl9fbGFiZWwge1xuICBtYXJnaW46IDMwcHggMCAwOyB9XG5cbi5jb250YWN0LW1haW5fX3N1Yi1sYWJlbCB7XG4gIG1hcmdpbjogMjBweCAwIC0xMHB4OyB9XG4gIC5jb250YWN0LW1haW5fX3N1Yi1sYWJlbCBhIHtcbiAgICBjb2xvcjogIzNkOTZjYTsgfVxuXG4ucGF0Y2gtaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNvbnRhY3QtbWFpbl9fc2VsZWN0cyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlucHV0X193cmFwcGVyLS1jZW50cmUgLmxvYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDU1cHg7XG4gIHRvcDogNHB4O1xuICB3aWR0aDogYXV0bzsgfVxuICAuaW5wdXRfX3dyYXBwZXItLWNlbnRyZSAubG9hZGVyIC5sb2FkZXJfX3NwaW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y5ZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaW5wdXRfX3dyYXBwZXItLWNlbnRyZSAubG9hZGVyIHtcbiAgICAgIGxlZnQ6IDUxMHB4O1xuICAgICAgdG9wOiA4cHg7IH1cbiAgICAgIC5pbnB1dF9fd3JhcHBlci0tY2VudHJlIC5sb2FkZXIgLmxvYWRlcl9fc3Bpbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbnB1dF9fd3JhcHBlci0tY2VudHJlIC5sb2FkZXIge1xuICAgICAgbGVmdDogNDEwcHg7IH0gfVxuXG4uc2VsZWN0X193cmFwcGVyLS1zdWJqZWN0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29udGFjdC1tYWluX19yYXRpbmcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb250YWN0LW1haW5fX3JhdGluZy1ncmFwaGljIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWN0LW1haW5fX3JhdGluZy1ncmFwaGljIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLXNlbGVjdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDIwcHggMCAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsZXgtYmFzaXM6IDMzJTtcbiAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIG9yZGVyOiA5OTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1pbmRlbnQ6IDQ1cHg7IH1cbiAgICAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoMSkge1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoMikge1xuICAgICAgb3JkZXI6IDQ7IH1cbiAgICAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoMykge1xuICAgICAgb3JkZXI6IDc7IH1cbiAgICAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoNCkge1xuICAgICAgZmxleC1ncm93OiAyO1xuICAgICAgb3JkZXI6IDEwOyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDUpIHtcbiAgICAgIG9yZGVyOiAyOyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDYpIHtcbiAgICAgIG9yZGVyOiA1OyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDcpIHtcbiAgICAgIG9yZGVyOiA4OyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDgpIHtcbiAgICAgIG9yZGVyOiAzOyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDkpIHtcbiAgICAgIG9yZGVyOiA2OyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDEwKSB7XG4gICAgICBvcmRlcjogOTsgfVxuICAgIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCgxMSkge1xuICAgICAgb3JkZXI6IDExOyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogN3B4OyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDM2cHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAzOHB4OyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGkuYWN0aXZlOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNnB4OyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGkuY29udGFjdC1tYWluX19yYXRpbmctaXRlbS0tQXdmdWw6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWF3ZnVsLnBuZ1wiKTsgfVxuICAgIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLUJhZDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tYmFkLnBuZ1wiKTsgfVxuICAgIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLU9LOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1vay5wbmdcIik7IH1cbiAgICAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaS5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1Hb29kOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1nb29kLnBuZ1wiKTsgfVxuICAgIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLUFtYXppbmc6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWFtYXppbmcucG5nXCIpOyB9XG5cbi5jb250YWN0LW1haW5fX2J1dHRvbi13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMjVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0LW1haW5fX2J1dHRvbi13cmFwcGVyIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDI0MHB4OyB9IH1cblxuLmNvbnRhY3QtbWFpbl9fYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5jb250YWN0LW1haW5fX2J1dHRvbi5kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZDogI2M5Y2FjYjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzljYWNiO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uYWdhaW4gLmNvbnRhY3QtbWFpbl9fYnV0dG9uIHtcbiAgbWFyZ2luOiA2MHB4IDA7IH1cblxuLmNvbnRhY3QtbWFpbl9fdG9nZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTM4LCAxMzgsIDEzOCwgMC41KTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTM4LCAxMzgsIDEzOCwgMC41KTtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgcGFkZGluZzogMjVweCAwIDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRhY3QtbWFpbl9fdG9nZ2xlIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweCAzNXB4OyB9IH1cbiAgLmNvbnRhY3QtbWFpbl9fdG9nZ2xlOmFmdGVyLCAuY29udGFjdC1tYWluX190b2dnbGU6YmVmb3JlIHtcbiAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvdHRvbTogLTJweDtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDsgfVxuICAuY29udGFjdC1tYWluX190b2dnbGUgaDQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmNvbnRhY3QtbWFpbl9fbG9naW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5jb250YWN0LW1haW5fX2xvZ2luOjpiZWZvcmUsIC5jb250YWN0LW1haW5fX2xvZ2luOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jb250YWN0LW1haW5fX2xvZ2luOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmNvbnRhY3QtbWFpbl9fbWVzc2FnZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hdHRlbnRpb24uc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgY29sb3I6ICNkZjcyMDg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7IH1cblxuLmNvbnRhY3QtbWFpbl9fbWVzc2FnZS0tbG9nZ2VkaW4ge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDAgMCAzMHB4IDMwcHg7XG4gIG1heC13aWR0aDogNzgwcHg7XG4gIHdpZHRoOiA5MCU7IH1cblxuLmNvbnRhY3QtbWFpbl9fbGluayB7XG4gIGNvbG9yOiAjM2Q5NmNhO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0LW1haW5fX2xpbmsge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB3aWR0aDogMjYwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWN0LW1haW5fX2xpbmsge1xuICAgICAgd2lkdGg6IDE2MHB4OyB9IH1cblxuLmNvbnRhY3QtbWFpbl9fbG9nZ2VkaW4ge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDMwcHggMDsgfVxuICAuY29udGFjdC1tYWluX19sb2dnZWRpbiBoNCB7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG5cbi5jb250YWN0LW1haW5fX2xvZ2dlZGluLWxpbmsge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAuY29udGFjdC1tYWluX19sb2dnZWRpbi1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29udGFjdC1tYWluX19mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTRlNGU1O1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2ZmZmZmZjtcbiAgcGFkZGluZzogMjVweCAxNXB4OyB9XG4gIC5jb250YWN0LW1haW5fX2Zvb3Rlcjo6YmVmb3JlLCAuY29udGFjdC1tYWluX19mb290ZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNvbnRhY3QtbWFpbl9fZm9vdGVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGFjdC1tYWluX19mb290ZXIge1xuICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFjdC1tYWluX19mb290ZXIge1xuICAgICAgbWFyZ2luOiAwIDAgMCAzMHB4O1xuICAgICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAuY29udGFjdC1tYWluX19mb290ZXIgLmNvbnRhY3QtbWFpbl9fYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbnRhY3QtbWFpbl9fZm9vdGVyIC5sb2FkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuY29udGFjdC1tYWluX19mb290ZXIubG9hZGluZyAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjOWNhY2I7XG4gICAgY29sb3I6ICNjOWNhY2I7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuY29udGFjdC1tYWluX19mb290ZXIubG9hZGluZyAubG9hZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY29udGFjdC1tYWluX19sb2FkZXIge1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuICAuY29udGFjdC1tYWluX19sb2FkZXIgLmxvYWRlciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAuY29udGFjdC1tYWluX19sb2FkZXIgLmxvYWRlcl9fd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAuY29udGFjdC1tYWluX19sb2FkZXIgLmxvYWRlcl9fc3Bpbm5lciB7XG4gICAgbWFyZ2luOiBhdXRvOyB9XG5cbi5jb250YWN0LW1haW5fX2xpbWl0IHtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGFjdC1tYWluX19saW1pdCB7XG4gICAgICBtYXgtd2lkdGg6IDUwMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFjdC1tYWluX19saW1pdCB7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4OyB9IH1cblxuLmNvbnRhY3QtbWFpbl9fbGltaXQtLXdhcm5pbmcge1xuICBjb2xvcjogI2ViOWUzYTsgfVxuXG4uY29udGFjdC1tYWluX19tb2R1bGUtLWRldGFpbHMgaDIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMzgsIDEzOCwgMTM4LCAwLjUpO1xuICBwYWRkaW5nLXRvcDogMjVweDsgfVxuXG4uY29udGFjdC1zaWRlYmFyIHtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbnRhY3Qtc2lkZWJhcjo6YmVmb3JlLCAuY29udGFjdC1zaWRlYmFyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jb250YWN0LXNpZGViYXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWN0LXNpZGViYXIge1xuICAgICAgcGFkZGluZzogMTByZW0gMCA1LjYyNXJlbSAxLjg3NXJlbTsgfSB9XG4gIC5jb250YWN0LXNpZGViYXIgaDMge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY29udGFjdC1zaWRlYmFyIGgzOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjOWNhY2I7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb250YWN0LXNpZGViYXIgLmNvdW5jaWwtbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogNTBweDsgfVxuXG4uY29udGFjdC1zaWRlYmFyX19saXN0IHtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmNvbnRhY3Qtc2lkZWJhcl9fbGlzdCBsaSB7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDE1cHggMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250YWN0LXNpZGViYXJfX2xpc3QgbGkge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuICAgIC5jb250YWN0LXNpZGViYXJfX2xpc3QgbGk6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaGVjay5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI3cHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTVweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNvbnRhY3Qtc2lkZWJhcl9fbGlzdCBsaTpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfSB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbiB7XG4gIHBhZGRpbmc6IDMuNzVyZW0gMCAxLjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW4sIC5mcmVlc3dpbSAuY29udGFjdC1tYWluIHtcbiAgICAgIHBhZGRpbmc6IDVyZW0gMCAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbiwgLmZyZWVzd2ltIC5jb250YWN0LW1haW4ge1xuICAgICAgcGFkZGluZzogNi4yNXJlbSAwOyB9IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2hlYWRlciwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2hlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2hlYWRlciwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2hlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9faGVhZGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9faGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweCAwIDA7IH0gfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9faGVhZGVyOmFmdGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9faGVhZGVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZTRlNGU1O1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2hlYWRlcjphZnRlciwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2hlYWRlcjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cHgpOyB9IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2hlYWRlci5jb250YWN0LW1haW5fX2hlYWRlci0tc3VibWl0dGVkLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9faGVhZGVyLmNvbnRhY3QtbWFpbl9faGVhZGVyLS1zdWJtaXR0ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9faGVhZGVyLmNvbnRhY3QtbWFpbl9faGVhZGVyLS1zdWJtaXR0ZWQ6YWZ0ZXIsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19oZWFkZXIuY29udGFjdC1tYWluX19oZWFkZXItLXN1Ym1pdHRlZDphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2hlYWRlciBoMSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2hlYWRlciBoMSB7XG4gICAgICBmb250LXNpemU6IDIuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDMuODc1cmVtOyB9IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2hlYWRlciBoMiwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2hlYWRlciBoMiB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXgtd2lkdGg6IDY4MHB4OyB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19oZWFkZXItY29udGVudCwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2hlYWRlci1jb250ZW50IHtcbiAgcGFkZGluZzogMzBweCAwOyB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19kZXNjcmlwdGlvbiwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY2NjtcbiAgbWF4LXdpZHRoOiA2ODBweDtcbiAgcGFkZGluZzogMjBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2Rlc2NyaXB0aW9uLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCA0MHB4OyB9IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX21vZHVsZSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX21vZHVsZSB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmZmZmO1xuICBwYWRkaW5nOiAzMHB4IDE1cHggMzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19tb2R1bGUuYWN0aXZlLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbW9kdWxlLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogI2YxZjJmNDsgfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbW9kdWxlLmNvbnRhY3QtbWFpbl9fbW9kdWxlLS1kZXRhaWxzLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbW9kdWxlLmNvbnRhY3QtbWFpbl9fbW9kdWxlLS1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX21vZHVsZSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX21vZHVsZSB7XG4gICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjVweCA0NXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbW9kdWxlLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbW9kdWxlIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgICAgIG1heC13aWR0aDogNzgwcHg7XG4gICAgICB3aWR0aDogOTAlOyB9IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xhYmVsLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbGFiZWwge1xuICBtYXJnaW46IDMwcHggMCAwOyB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19zdWItbGFiZWwsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19zdWItbGFiZWwge1xuICBtYXJnaW46IDIwcHggMCAtMTBweDsgfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fc3ViLWxhYmVsIGEsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19zdWItbGFiZWwgYSB7XG4gICAgY29sb3I6ICMzZDk2Y2E7IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5wYXRjaC1oaWRlLCAuZnJlZXN3aW0gLnBhdGNoLWhpZGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19zZWxlY3RzLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fc2VsZWN0cyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5pbnB1dF9fd3JhcHBlci0tY2VudHJlIC5sb2FkZXIsIC5mcmVlc3dpbSAuaW5wdXRfX3dyYXBwZXItLWNlbnRyZSAubG9hZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNTVweDtcbiAgdG9wOiA0cHg7XG4gIHdpZHRoOiBhdXRvOyB9XG4gIC5jb250YWN0LS1mZWVkYmFjayAuaW5wdXRfX3dyYXBwZXItLWNlbnRyZSAubG9hZGVyIC5sb2FkZXJfX3NwaW5uZXIsIC5mcmVlc3dpbSAuaW5wdXRfX3dyYXBwZXItLWNlbnRyZSAubG9hZGVyIC5sb2FkZXJfX3NwaW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y5ZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmlucHV0X193cmFwcGVyLS1jZW50cmUgLmxvYWRlciwgLmZyZWVzd2ltIC5pbnB1dF9fd3JhcHBlci0tY2VudHJlIC5sb2FkZXIge1xuICAgICAgbGVmdDogNTEwcHg7XG4gICAgICB0b3A6IDhweDsgfVxuICAgICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5pbnB1dF9fd3JhcHBlci0tY2VudHJlIC5sb2FkZXIgLmxvYWRlcl9fc3Bpbm5lciwgLmZyZWVzd2ltIC5pbnB1dF9fd3JhcHBlci0tY2VudHJlIC5sb2FkZXIgLmxvYWRlcl9fc3Bpbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWN0LS1mZWVkYmFjayAuaW5wdXRfX3dyYXBwZXItLWNlbnRyZSAubG9hZGVyLCAuZnJlZXN3aW0gLmlucHV0X193cmFwcGVyLS1jZW50cmUgLmxvYWRlciB7XG4gICAgICBsZWZ0OiA0MTBweDsgfSB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuc2VsZWN0X193cmFwcGVyLS1zdWJqZWN0LCAuZnJlZXN3aW0gLnNlbGVjdF9fd3JhcHBlci0tc3ViamVjdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZywgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1ncmFwaGljLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWdyYXBoaWMge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1ncmFwaGljLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWdyYXBoaWMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLXNlbGVjdCwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1zZWxlY3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgcGFkZGluZzogMDsgfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGksIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbGV4LWJhc2lzOiAzMyU7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBvcmRlcjogOTk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtaW5kZW50OiA0NXB4OyB9XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCgxKSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCgxKSB7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoMiksIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoMikge1xuICAgICAgb3JkZXI6IDQ7IH1cbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDMpLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgIG9yZGVyOiA3OyB9XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCg0KSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCg0KSB7XG4gICAgICBmbGV4LWdyb3c6IDI7XG4gICAgICBvcmRlcjogMTA7IH1cbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDUpLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDUpIHtcbiAgICAgIG9yZGVyOiAyOyB9XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCg2KSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCg2KSB7XG4gICAgICBvcmRlcjogNTsgfVxuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoNyksIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoNykge1xuICAgICAgb3JkZXI6IDg7IH1cbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDgpLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDgpIHtcbiAgICAgIG9yZGVyOiAzOyB9XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCg5KSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOm50aC1jaGlsZCg5KSB7XG4gICAgICBvcmRlcjogNjsgfVxuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoMTApLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDEwKSB7XG4gICAgICBvcmRlcjogOTsgfVxuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaTpudGgtY2hpbGQoMTEpLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bnRoLWNoaWxkKDExKSB7XG4gICAgICBvcmRlcjogMTE7IH1cbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bGFzdC1vZi10eXBlLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogN3B4OyB9XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOmJlZm9yZSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzNnB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDM4cHg7IH1cbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGkuYWN0aXZlOmJlZm9yZSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpLmFjdGl2ZTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzZweDsgfVxuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaS5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1Bd2Z1bDpiZWZvcmUsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaS5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1Bd2Z1bDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tYXdmdWwucG5nXCIpOyB9XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLUJhZDpiZWZvcmUsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaS5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1CYWQ6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWJhZC5wbmdcIik7IH1cbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGkuY29udGFjdC1tYWluX19yYXRpbmctaXRlbS0tT0s6YmVmb3JlLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGkuY29udGFjdC1tYWluX19yYXRpbmctaXRlbS0tT0s6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLW9rLnBuZ1wiKTsgfVxuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19yYXRpbmctbGlzdCBsaS5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1Hb29kOmJlZm9yZSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLUdvb2Q6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWdvb2QucG5nXCIpOyB9XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3JhdGluZy1saXN0IGxpLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLUFtYXppbmc6YmVmb3JlLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3QgbGkuY29udGFjdC1tYWluX19yYXRpbmctaXRlbS0tQW1hemluZzpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tYW1hemluZy5wbmdcIik7IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2J1dHRvbi13cmFwcGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fYnV0dG9uLXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2J1dHRvbi13cmFwcGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fYnV0dG9uLXdyYXBwZXIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjQwcHg7IH0gfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuYWdhaW4gLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuZnJlZXN3aW0gLmFnYWluIC5jb250YWN0LW1haW5fX2J1dHRvbiB7XG4gIG1hcmdpbjogNjBweCAwOyB9XG5cbi5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX190b2dnbGUsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX190b2dnbGUge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZmZmZjtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmZmZmY7XG4gIG1hcmdpbjogMS41cmVtIDA7XG4gIHBhZGRpbmc6IDI1cHggMCAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX190b2dnbGUsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX190b2dnbGUge1xuICAgICAgcGFkZGluZzogMzBweCAyMHB4IDM1cHg7IH0gfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fdG9nZ2xlOmFmdGVyLCAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fdG9nZ2xlOmJlZm9yZSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3RvZ2dsZTphZnRlciwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3RvZ2dsZTpiZWZvcmUge1xuICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm90dG9tOiAtMnB4O1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDsgfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fdG9nZ2xlOmFmdGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fdG9nZ2xlOmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxMnB4IHNvbGlkICNlYWVmZmY7XG4gICAgYm9yZGVyLWxlZnQ6IDEycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTJweDsgfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fdG9nZ2xlOmJlZm9yZSwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX3RvZ2dsZTpiZWZvcmUge1xuICAgIGJvcmRlci1ib3R0b206IDE1cHggc29saWQgI2ZmZmZmZjtcbiAgICBib3JkZXItbGVmdDogMTVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4OyB9XG4gIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX190b2dnbGUgaDQsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX190b2dnbGUgaDQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX3RvZ2dsZSBidXR0b24sIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX190b2dnbGUgYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWluZGVudDogMDsgfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbG9naW4sIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19sb2dpbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xvZ2luOjpiZWZvcmUsIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19sb2dpbjo6YWZ0ZXIsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19sb2dpbjo6YmVmb3JlLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbG9naW46OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xvZ2luOjphZnRlciwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2xvZ2luOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX21lc3NhZ2UsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19tZXNzYWdlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2F0dGVudGlvbi5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICBjb2xvcjogI2RmNzIwODtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMzVweDsgfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbWVzc2FnZS0tbG9nZ2VkaW4sIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19tZXNzYWdlLS1sb2dnZWRpbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDMwcHggMzBweDtcbiAgbWF4LXdpZHRoOiA3ODBweDtcbiAgd2lkdGg6IDkwJTsgfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbGluaywgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2xpbmsge1xuICBjb2xvcjogIzNkOTZjYTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbGluaywgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2xpbmsge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB3aWR0aDogMjYwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19saW5rLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbGluayB7XG4gICAgICB3aWR0aDogMTYwcHg7IH0gfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbG9nZ2VkaW4sIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19sb2dnZWRpbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogMzBweCAwOyB9XG4gIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19sb2dnZWRpbiBoNCwgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2xvZ2dlZGluIGg0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xvZ2dlZGluLWxpbmssIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19sb2dnZWRpbi1saW5rIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xvZ2dlZGluLWxpbms6aG92ZXIsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19sb2dnZWRpbi1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fZm9vdGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2U0ZTRlNTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmZmZmY7XG4gIHBhZGRpbmc6IDI1cHggMTVweDsgfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fZm9vdGVyOjpiZWZvcmUsIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19mb290ZXI6OmFmdGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fZm9vdGVyOjpiZWZvcmUsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19mb290ZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2Zvb3Rlcjo6YWZ0ZXIsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19mb290ZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0LS1mZWVkYmFjayAuY29udGFjdC1tYWluX19mb290ZXIsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19mb290ZXIge1xuICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fZm9vdGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fZm9vdGVyIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgICAgIG1heC13aWR0aDogNzgwcHg7XG4gICAgICB3aWR0aDogOTAlOyB9IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2Zvb3RlciAuY29udGFjdC1tYWluX19idXR0b24sIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19mb290ZXIgLmNvbnRhY3QtbWFpbl9fYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2Zvb3RlciAubG9hZGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fZm9vdGVyIC5sb2FkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fZm9vdGVyLmxvYWRpbmcgLmNvbnRhY3QtbWFpbl9fYnV0dG9uLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fZm9vdGVyLmxvYWRpbmcgLmNvbnRhY3QtbWFpbl9fYnV0dG9uIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzljYWNiO1xuICAgIGNvbG9yOiAjYzljYWNiO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2Zvb3Rlci5sb2FkaW5nIC5sb2FkZXIsIC5mcmVlc3dpbSAuY29udGFjdC1tYWluX19mb290ZXIubG9hZGluZyAubG9hZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbG9hZGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbG9hZGVyIHtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xvYWRlciAubG9hZGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbG9hZGVyIC5sb2FkZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xvYWRlciAubG9hZGVyX193cmFwcGVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbG9hZGVyIC5sb2FkZXJfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmNvbnRhY3QtLWZlZWRiYWNrIC5jb250YWN0LW1haW5fX2xvYWRlciAubG9hZGVyX19zcGlubmVyLCAuZnJlZXN3aW0gLmNvbnRhY3QtbWFpbl9fbG9hZGVyIC5sb2FkZXJfX3NwaW5uZXIge1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4uY29udGFjdC0tZmVlZGJhY2sgLmZyZWVzd2ltX19jb25maXJtLmNvbnRhY3QtbWFpbl9fbGluaywgLmZyZWVzd2ltIC5mcmVlc3dpbV9fY29uZmlybS5jb250YWN0LW1haW5fX2xpbmsge1xuICBtYXJnaW4tdG9wOiAwcHg7IH1cblxuLmNvbnRhY3QtbWFpbl9fY2VudHJlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29udGVudGh1Yi1hdXRob3JzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWZmZjtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDIwcHggMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250ZW50aHViLWF1dGhvcnMge1xuICAgICAgcGFkZGluZzogNTBweCAwIDMwcHg7IH0gfVxuXG4uY29udGVudGh1Yi1hdXRob3JzX19pbm5lciB7XG4gIHBhZGRpbmc6IDAgMThweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1hdXRob3JzX19pbm5lciB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItYXV0aG9yc19faW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250ZW50aHViLWF1dGhvcnNfX2lubmVyLCAuY29udGVudGh1Yi1hdXRob3JzX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuY29udGVudGh1Yi1hdXRob3JzX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmNvbnRlbnRodWItYXV0aG9yc19faW5uZXIgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuY29udGVudGh1Yi1hdXRob3JzX19pbm5lciBzcGFuIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1hdXRob3JzX19pbm5lciBzcGFuIHtcbiAgICAgICAgY2xlYXI6IGluaXRpYWw7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY29udGVudGh1Yi1hdXRob3JzX19hdXRob3Ige1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHdpZHRoOiA1MCU7IH1cbiAgLmNvbnRlbnRodWItYXV0aG9yc19fYXV0aG9yOm50aC1vZi10eXBlKG9kZCkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDsgfVxuICAuY29udGVudGh1Yi1hdXRob3JzX19hdXRob3I6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRodWItYXV0aG9yc19fYXV0aG9yIHtcbiAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgICAgd2lkdGg6IDI1JTsgfSB9XG5cbi5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1pbWFnZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29udGVudGh1Yi1hdXRob3JzX19hdXRob3ItbWV0YSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAyMHB4IDAgMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbnRlbnRodWItYXV0aG9yc19fYXV0aG9yLXRpdGxlIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvbGRcIiwgc2Fucy1zZXJpZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07IH0gfVxuICAuY29udGVudGh1Yi1hdXRob3JzX19hdXRob3ItdGl0bGUgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmNvbnRlbnRodWItYXV0aG9yc19fYXV0aG9yLXRpdGxlIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNvbnRlbnRodWItYXV0aG9yc19fYXV0aG9yLWRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY2NjtcbiAgd2lkdGg6IDkwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1kZXNjcmlwdGlvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1kZXNjcmlwdGlvbiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuY29udGVudGh1Yi1hdXRob3JzX19hdXRob3ItZGVzY3JpcHRpb24gYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29udGVudGh1Yi1hdXRob3JzX19hdXRob3ItbGluayB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzZDk2Y2E7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgfSB9XG4gIC5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29udGVudGh1Yi1jYXRlZ29yaWVzIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG5cbi5jb250ZW50aHViLWNhdGVnb3JpZXNfX2lubmVyIHtcbiAgcGFkZGluZzogMCAxOHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19faW5uZXIge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250ZW50aHViLWNhdGVnb3JpZXNfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19pbm5lciwgLmNvbnRlbnRodWItY2F0ZWdvcmllc19faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5jb250ZW50aHViLWNhdGVnb3JpZXNfX2lubmVyIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDsgfVxuICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19pbm5lciBzcGFuIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY29udGVudGh1Yi1jYXRlZ29yaWVzX19jYXRlZ29yeSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDVweCAwIDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19fY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19jYXRlZ29yeTpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4OyB9XG4gICAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19jYXRlZ29yeTpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19jYXRlZ29yeSB7XG4gICAgICBtYXJnaW46IDIwcHggMDsgfSB9XG4gIC5jb250ZW50aHViLWNhdGVnb3JpZXNfX2NhdGVnb3J5IGg0IHtcbiAgICBjb2xvcjogIzMzMztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jb250ZW50aHViLWNhdGVnb3JpZXNfX2NhdGVnb3J5IGg0LmV4cGFuZGVkOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaGlkZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19fY2F0ZWdvcnkgaDQuZXhwYW5kZWQ6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXhwYW5kLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9IH1cbiAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19jYXRlZ29yeSBoNDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V4cGFuZC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDM1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5jb250ZW50aHViLWNhdGVnb3JpZXNfX2NhdGVnb3J5IGg0OmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19fY2F0ZWdvcnkgaDQ6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2M5Y2FjYjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19fY2F0ZWdvcnkgaDQge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19jYXRlZ29yeSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19jYXRlZ29yeSB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmNvbnRlbnRodWItY2F0ZWdvcmllc19fcG9zdCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzMzM7XG4gIG1hcmdpbjogNXB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19wb3N0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICB3aWR0aDogOTAlOyB9IH1cbiAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19fcG9zdCBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19wb3N0IGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNvbnRlbnRodWItY2F0ZWdvcmllc19fbGluayB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzZDk2Y2E7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250ZW50aHViLWNhdGVnb3JpZXNfX2xpbmsge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyB9IH1cbiAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19fbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNvbnRlbnRodWItZmVhdHVyZWQ6OmJlZm9yZSwgLmNvbnRlbnRodWItZmVhdHVyZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJzsgfVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY29udGVudGh1Yi1mZWF0dXJlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfSB9XG5cbi5jb250ZW50aHViLWZlYXR1cmVkX19pbm5lciB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250ZW50aHViLWZlYXR1cmVkX19pbm5lciB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItZmVhdHVyZWRfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1mZWF0dXJlZF9faW5uZXIsIC5jb250ZW50aHViLWZlYXR1cmVkX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuY29udGVudGh1Yi1mZWF0dXJlZF9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlcyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGVzOjpiZWZvcmUsIC5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZXM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fcm93IHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGUge1xuICAgICAgcGFkZGluZzogMCA2cHg7XG4gICAgICB3aWR0aDogMzMuMzMlOyB9XG4gICAgICAuY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZTpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgICAgIC5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlOm50aC1jaGlsZCgzbikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS1pbWFnZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni41JTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGUtbWV0YSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAyMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiA2ICAgcHggMDtcbiAgd2lkdGg6IDkwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS10aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlLXRpdGxlIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlLXRpdGxlIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGUtZGVzYyB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIG1hcmdpbjogMTBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGUtZGVzYyB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07IH0gfVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS1saW5rIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzNkOTZjYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGUtbGluayB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07IH0gfVxuICAuY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29udGVudGh1Yi1sYXRlc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmOWZhO1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogMjBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRodWItbGF0ZXN0IHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMCAzMHB4OyB9IH1cblxuLmNvbnRlbnRodWItbGF0ZXN0X19pbm5lciB7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1sYXRlc3RfX2lubmVyIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGVudGh1Yi1sYXRlc3RfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1sYXRlc3RfX2lubmVyLCAuY29udGVudGh1Yi1sYXRlc3RfX2lubmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5jb250ZW50aHViLWxhdGVzdF9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5jb250ZW50aHViLWxhdGVzdF9faW5uZXIgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY29udGVudGh1Yi1tZW51IHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jb250ZW50aHViLW1lbnU6OmJlZm9yZSwgLmNvbnRlbnRodWItbWVudTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuY29udGVudGh1Yi1tZW51OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNvbnRlbnRodWItbWVudSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIGhlaWdodDogMTAwdmg7IH1cbiAgLmNvbnRlbnRodWItbWVudSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1pbm5lci1tZW51IHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgaGVpZ2h0OiA5MnZoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250ZW50aHViLW1lbnUgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24taW5uZXItbWVudSB7XG4gICAgICAgIGhlaWdodDogODl2aDsgfSB9XG4gIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX3dyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgYm94LXNoYWRvdzogMCA0cHggMnB4IC0ycHggIzkzOTU5ODtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDMwMHB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDYwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX3dyYXBwZXIge1xuICAgICAgICB0b3A6IDcycHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X193cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmNvbnRlbnRodWItbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNvbnRlbnRodWItbWVudV9fd3JhcHBlci5zbGlkZS11cCB7XG4gICAgICB0b3A6IDA7IH1cbiAgLmNvbnRlbnRodWItbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNvbnRlbnRodWItbWVudV9faW5uZXIge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGhlaWdodDogNjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19pbm5lcjo6YmVmb3JlLCAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19pbm5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19pbm5lcjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnRodWItbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNvbnRlbnRodWItbWVudV9faW5uZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX2xpc3QgbGkge1xuICAgIHBhZGRpbmc6IDE4cHggMDsgfVxuICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19jb2x1bW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4O1xuICAgIHBhZGRpbmctdG9wOiAxOHB4OyB9XG4gIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaCB7XG4gICAgcGFkZGluZzogMTBweCAwOyB9XG4gICAgLmNvbnRlbnRodWItbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgICBwYWRkaW5nOiAwLjYyNXJlbSAzLjc1cmVtIDAuNjI1cmVtIDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1pY29uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2ZmZmZmZjsgfSB9XG4gIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIHtcbiAgICBib3gtc2hhZG93OiAwIDRweCAycHggLTJweCAjYzljYWNiO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdG9wOiA2MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIHtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAwIDA7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIGNsZWFyOiBpbml0aWFsO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwOyB9IH1cbiAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biAuY29udGVudGh1Yi1tZW51X19saW5rLWluZm8tLWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1vcHRpb25zIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLW9wdGlvbnMge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAgIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLW9wdGlvbnMgLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvLS1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmNvbnRlbnRodWItbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24taW5uZXIge1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1pbm5lcjo6YmVmb3JlLCAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1pbm5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAuY29udGVudGh1Yi1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1pbm5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNvbnRlbnRodWItbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24taW5uZXIgdWwge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMS41NjI1cmVtIDEuMjVyZW07IH0gfVxuICAgIC5jb250ZW50aHViLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLWlubmVyLW1lbnUge1xuICAgICAgaGVpZ2h0OiA4MHZoO1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbi50b3VjaGV2ZW50cyAuY29udGVudGh1Yi1tZW51X193cmFwcGVyIHtcbiAgdHJhbnNpdGlvbjogdG9wIC40czsgfVxuXG4udG91Y2hldmVudHMgLmNvbnRlbnRodWItbWVudV9faW5uZXIge1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi5jb250ZW50aHViLW1lbnVfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDsgfVxuICAuY29udGVudGh1Yi1tZW51X193cmFwcGVyOjpiZWZvcmUsIC5jb250ZW50aHViLW1lbnVfX3dyYXBwZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNvbnRlbnRodWItbWVudV9fd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9fd3JhcHBlciB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9fd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnRodWItbWVudV9fd3JhcHBlciwgLmNvbnRlbnRodWItbWVudV9fd3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuY29udGVudGh1Yi1tZW51X193cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y5ZmE7XG4gIGhlaWdodDogNjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB3aWR0aDogMTAwJTsgfVxuICAuY29udGVudGh1Yi1tZW51X19pbm5lcjo6YmVmb3JlLCAuY29udGVudGh1Yi1tZW51X19pbm5lcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuY29udGVudGh1Yi1tZW51X19pbm5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9faW5uZXIge1xuICAgICAgaGVpZ2h0OiA2NHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1tZW51X19pbm5lciB7XG4gICAgICBoZWlnaHQ6IDgwcHg7IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19zZWFyY2gge1xuICBiYWNrZ3JvdW5kOiAjZjdmOWZhO1xuICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjZmZmO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuNHM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB3aWR0aDogNTBweDtcbiAgei1pbmRleDogMTA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGVudGh1Yi1tZW51X19zZWFyY2gge1xuICAgICAgcGFkZGluZzogMTJweCAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1tZW51X19zZWFyY2gge1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9IH1cbiAgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoXCIuLi9pbWcvc2VhcmNoLnN2Z1wiKSBuby1yZXBlYXQgOTYlIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAwIDAgMCA3MHB4O1xuICAgIG1heC13aWR0aDogNTcwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAzLjc1cmVtIDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgd2lkdGg6IDYwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaCBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjgxMjVyZW0gMy43NXJlbSAwLjgxMjVyZW0gMS4yNXJlbTsgfSB9XG4gIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC5hY3RpdmUge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29udGVudGh1Yi1tZW51X19zZWFyY2guYWN0aXZlIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1pY29uOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYXJyb3ctbGVmdC1ibHVlLnN2Z1wiKSBuby1yZXBlYXQgMTRweCBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDM1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC5hY3RpdmUgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoLWljb246YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2xvc2Uuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDsgfSB9XG4gICAgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoLmFjdGl2ZSBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjRzOyB9XG5cbi5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC40cztcbiAgd2lkdGg6IDUwcHg7IH1cbiAgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoLWljb246YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc2VhcmNoLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNHM7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbnRlbnRodWItbWVudV9faXRlbXMge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpOyB9XG4gIC5jb250ZW50aHViLW1lbnVfX2l0ZW1zOjpiZWZvcmUsIC5jb250ZW50aHViLW1lbnVfX2l0ZW1zOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5jb250ZW50aHViLW1lbnVfX2l0ZW1zOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1tZW51X19pdGVtcyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9fbGlzdCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAuY29udGVudGh1Yi1tZW51X19saXN0IGxpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDE4cHggMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbnRlbnRodWItbWVudV9fbGlzdCBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250ZW50aHViLW1lbnVfX2xpc3QgbGkge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDI4cHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgLmNvbnRlbnRodWItbWVudV9fbGlzdCBsaS5jdXJyZW50LW1lbnUtaXRlbSBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmYwODBkOyB9XG4gICAgLmNvbnRlbnRodWItbWVudV9fbGlzdCBsaSBhIHtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jb250ZW50aHViLW1lbnVfX2xpc3QgbGkgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlOGVmO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3V0bGluZTogMDtcbiAgcGFkZGluZzogMThweCAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9fY29sdW1uIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggNDBweCAyMHB4IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250ZW50aHViLW1lbnVfX2NvbHVtbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDI4cHggNDBweCAyOHB4IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19saW5rIHtcbiAgY29sb3I6ICNmZjA4MGQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudGh1Yi1tZW51X19saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9IH1cbiAgLmNvbnRlbnRodWItbWVudV9fbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvIHtcbiAgY29sb3I6ICMwMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXhwYW5kLnN2Z1wiKSBjZW50ZXIgY2VudGVyLzE1cHggYXV0byBuby1yZXBlYXQ7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTM1cHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAzNXB4OyB9XG4gIC5jb250ZW50aHViLW1lbnVfX2xpbmstaW5mby5leHBhbmRlZDphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2hpZGUuc3ZnXCIpIGNlbnRlciBjZW50ZXIvMzBweCBhdXRvIG5vLXJlcGVhdDsgfVxuICAuY29udGVudGh1Yi1tZW51X19saW5rLWluZm8uY29udGVudGh1Yi1tZW51X19saW5rLWluZm8tLW9wZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvLS1vcGVuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvLS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudGh1Yi1tZW51X19saW5rLWluZm8uY29udGVudGh1Yi1tZW51X19saW5rLWluZm8tLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19kcm9wZG93biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd246OmJlZm9yZSwgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjU2MjVyZW07IH0gfVxuICAuY29udGVudGh1Yi1tZW51X19kcm9wZG93biB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gdWw6OmJlZm9yZSwgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gdWw6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gdWw6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIHVsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gc3BhbiB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24gLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIC5jb250ZW50aHViLW1lbnVfX2xpbmstaW5mbzphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaGlkZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7IH1cblxuLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24taXRlbSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAxNXB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1pdGVtIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICB3aWR0aDogOTAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24tZGVzY3JpcHRpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1vcHRpb25zIHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24tb3B0aW9ucyBmb3JtIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDYwJTsgfVxuICAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1vcHRpb25zIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSA3LjE4NzVyZW0gMC42MjVyZW0gMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24tb3B0aW9ucyAuY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1pbm5lciB7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZmZmZmZmOyB9IH1cbiAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24tb3B0aW9ucyAuY29udGVudGh1Yi1tZW51X19saW5rLWluZm8tLWNsb3NlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDYycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRvcDogMDsgfVxuICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLW9wdGlvbnMgLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvLS1jbG9zZTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2xvc2UtYmx1ZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7IH1cblxuLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24tb3B0aW9ucy1zZWFyY2gge1xuICBtaW4taGVpZ2h0OiA2MnB4O1xuICBwYWRkaW5nOiAxMXB4IDA7IH1cbiAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24tb3B0aW9ucy1zZWFyY2ggLmNvbnRlbnRodWItbWVudV9fc2VhcmNoLWljb24ge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwcHg7XG4gIHRvcDogMHB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMjBweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDIwcHg7XG4gIGhlaWdodDogNDFweDsgfVxuXG4uZGl2aWRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6IDExMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZGl2aWRlciB7XG4gICAgICBoZWlnaHQ6IDEzMHB4OyB9IH1cbiAgLmRpdmlkZXI6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjYzljYWNiO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgICB3aWR0aDogMXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5kaXZpZGVyOmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogNjBweDsgfSB9XG4gIC5kaXZpZGVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwODBkO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDcwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdpZHRoOiAxMnB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5kaXZpZGVyOmFmdGVyIHtcbiAgICAgICAgdG9wOiA5MHB4OyB9IH1cbiAgLmRpdmlkZXIuZGl2aWRlci0tbWluIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5kaXZpZGVyLmRpdmlkZXItLW1pbiB7XG4gICAgICAgIGhlaWdodDogMTAwcHg7IH0gfVxuICAgIC5kaXZpZGVyLmRpdmlkZXItLW1pbjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5mYXFzLXBhZ2UgLmdlbmVyaWMtbWFpbiB7XG4gIHBhZGRpbmc6IDMuNzVyZW0gMCAyLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmFxcy1wYWdlIC5nZW5lcmljLW1haW4ge1xuICAgICAgcGFkZGluZzogNi4yNXJlbSAwIDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZhcXMtcGFnZSAuZ2VuZXJpYy1tYWluIHtcbiAgICAgIHBhZGRpbmc6IDcuODEyNXJlbSAwOyB9IH1cblxuLmZhcXMtcGFnZSAuZmFxcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzMzMzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmFxcy1wYWdlIC5mYXFzX19pbm5lciB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmFxcy1wYWdlIC5mYXFzX19pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mYXFzLXBhZ2UgLmZhcXNfX2lubmVyLCAuZmFxcy1wYWdlIC5mYXFzX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAuZmFxcy1wYWdlIC5mYXFzX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5mYXFzLXBhZ2UgLmZhcXNfX2NvbHVtbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmFxcy1wYWdlIC5mYXFzX19jb2x1bW4tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmFxcy1wYWdlIC5mYXFzX19jb2x1bW4tdGl0bGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmFxcy1wYWdlIC5mYXFzX19jb2x1bW4tdGl0bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mYXFzLXBhZ2UgLmZhcXNfX2NvbHVtbi10aXRsZSwgLmZhcXMtcGFnZSAuZmFxc19fY29sdW1uLXRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5mYXFzLXBhZ2UgLmZhcXNfX2NvbHVtbi10aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZhcXMtcGFnZSAuZmFxc19fcG9zdC13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mYXFzLXBhZ2UgLmZhcXNfX3Bvc3Qtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mYXFzLXBhZ2UgLmZhcXNfX3Bvc3Qtd3JhcHBlciwgLmZhcXMtcGFnZSAuZmFxc19fcG9zdC13cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5mYXFzLXBhZ2UgLmZhcXNfX3Bvc3Qtd3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5mYXFzLXBhZ2UgLmZhcXNfX3Bvc3Qge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2M5Y2FjYjtcbiAgY29sb3I6ICMzMzM7IH1cblxuLmZhcXMtcGFnZSAuZmFxc19fcXVlc3Rpb246YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc2hvdy1tb3JlLWdyZXkuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyB9XG5cbi5mYXFzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMjMyNjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmFxcyB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgLmZhcXMuZmFxcy0tdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmZhcXNfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZhcXNfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfVxuXG4uZmFxc19fY29sdW1uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5mYXFzX19jb2x1bW4tdGl0bGUgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mYXFzX19jb2x1bW4tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mYXFzX19jb2x1bW4tdGl0bGUge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZhcXNfX2NvbHVtbi10aXRsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZhcXNfX2NvbHVtbi10aXRsZSwgLmZhcXNfX2NvbHVtbi10aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZmFxc19fY29sdW1uLXRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uZmFxc19fY29sdW1uLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuICAuZmFxc19fY29sdW1uLWxpc3Q6OmJlZm9yZSwgLmZhcXNfX2NvbHVtbi1saXN0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5mYXFzX19jb2x1bW4tbGlzdDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZhcXNfX2NvbHVtbi1saXN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH0gfVxuXG4uZmFxc19fcG9zdC13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmFxc19fcG9zdC13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmFxc19fcG9zdC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmFxc19fcG9zdC13cmFwcGVyLCAuZmFxc19fcG9zdC13cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5mYXFzX19wb3N0LXdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5mYXFzX19wb3N0IHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDE1cHggMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mYXFzX19wb3N0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mYXFzX19wb3N0OmZpcnN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuICAuZmFxc19fcG9zdCBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuZmFxc19fcG9zdCBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5mYXFzX19xdWVzdGlvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mYXFzX19xdWVzdGlvbjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3Nob3ctbW9yZS13aGl0ZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgd2lkdGg6IDMwcHg7IH1cbiAgLmZhcXNfX3F1ZXN0aW9uLmV4cGFuZGVkOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5mYXFzX19hbnN3ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5mYXFzX19hbnN3ZXIgYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnBhZ2UtdGVtcGxhdGUtZmFxcyAuZmFxc19fYW5zd2VyIGEge1xuICBjb2xvcjogIzNkOTZjYTsgfVxuXG4uZmFxc19fbGluayB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mYXFzX19saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH0gfVxuICAuZmFxc19fbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmZhcXNfX2xpbms6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaGV2cm9uLXJpZ2h0LXdoaXRlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyNXB4OyB9XG5cbi5mYXFzX19yZXR1cm4tdG8tdG9wIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDIwcHggMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDgwJTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmZhcXNfX3JldHVybi10by10b3A6dmlzaXRlZCwgLmZhcXNfX3JldHVybi10by10b3AgOmhvdmVyLCAuZmFxc19fcmV0dXJuLXRvLXRvcCA6YWN0aXZlIHtcbiAgICBjb2xvcjogIzNkOTZjYTsgfVxuXG4uZmFxc19fYW5zd2VyLWhlbHBmdWwge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNHM7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIGZvbnQtc2l6ZTogMC44NWVtOyB9XG5cbi5mYXFzX19oZWxwZnVsLWNob2ljZSB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjVyZW07IH1cblxuLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuc3VnZ2VzdF9faW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuc3VnZ2VzdF9faW5wdXQgaW5wdXQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbWluLXdpZHRoOiA0MDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgIC5jb250YWN0LW1haW5fX3N1Z2dlc3QgLnN1Z2dlc3RfX2lucHV0IC5sb2FkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICMxYjIzMjY7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3Qge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QuZmFxcy0tdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5jb250YWN0LW1haW5fX3N1Z2dlc3QgLmZhcXMtc3VnZ2VzdCAuZmFxc19fcG9zdCB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNywgMzUsIDM4LCAwLjI1KTtcbiAgICAgIGNvbG9yOiAjMWIyMzI2O1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9XG4gICAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QgLmZhcXNfX3Bvc3Q6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNywgMzUsIDM4LCAwLjI1KTsgfVxuICAgIC5jb250YWN0LW1haW5fX3N1Z2dlc3QgLmZhcXMtc3VnZ2VzdCAuZmFxc19fcXVlc3Rpb24ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuZmFxcy1zdWdnZXN0IC5mYXFzX19xdWVzdGlvbjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9zaG93LW1vcmUtZ3JleS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IH1cbiAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QgLmZhcXNfX2Fuc3dlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuZmFxcy1zdWdnZXN0IC5mYXFzX19hbnN3ZXIgYSB7XG4gICAgICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5jb250YWN0LW1haW5fX3N1Z2dlc3QgLmZhcXMtc3VnZ2VzdCAuZmFxc19fcG9zdC13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QgLmZhcXNfX3Bvc3Qtd3JhcHBlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QgLmZhcXNfX3Bvc3Qtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QgLmZhcXNfX3Bvc3Qtd3JhcHBlciwgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuZmFxcy1zdWdnZXN0IC5mYXFzX19wb3N0LXdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuZmFxcy1zdWdnZXN0IC5mYXFzX19wb3N0LXdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5jb250YWN0LW1haW5fX3N1Z2dlc3QgLmZhcXMtc3VnZ2VzdCAuZmFxc19fY29sdW1uLWxpc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5jb250YWN0LW1haW5fX3N1Z2dlc3QgLmZhcXMtc3VnZ2VzdCAuZmFxc19fY29sdW1uLWxpc3Q6OmJlZm9yZSwgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuZmFxcy1zdWdnZXN0IC5mYXFzX19jb2x1bW4tbGlzdDo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QgLmZhcXNfX2NvbHVtbi1saXN0OjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5mYXFzLXN1Z2dlc3QgLmZhcXNfX2NvbHVtbi1saXN0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCAuY29udGFjdC1tYWluX19hbnN3ZXItdGl0bGUsXG4gIC5jb250YWN0LW1haW5fX3N1Z2dlc3QgLmNvbnRhY3QtbWFpbl9fbm8tcmVzdWx0cyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY29udGFjdC1tYWluX19zdWdnZXN0IC5jb250YWN0LW1haW5fX25vLXJlc3VsdHMge1xuICAgIG1hcmdpbjogMjBweCAwIDVweDsgfVxuICAuY29udGFjdC1tYWluX19zdWdnZXN0ICNsb2FkLW1vcmUtYnRuIHtcbiAgICBiYWNrZ3JvdW5kOiAjN2U4Nzg3O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiA1cHggMTBweCA1cHggMDsgfVxuICAuY29udGFjdC1tYWluX19zdWdnZXN0ICNzdWJtaXQtZW5xdWlyeS1idG4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiA1cHggMTBweCA1cHggMDsgfVxuICAuY29udGFjdC1tYWluX19zdWdnZXN0ICNzdWJtaXQtc2Vjb25kYXJ5LWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDVweCAxMHB4IDVweCAwOyB9XG5cbi5wYWdlLXRlbXBsYXRlLWVucXVpcmllcyAuY29udGFjdC1tYWluX19mb290ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFnZS10ZW1wbGF0ZS1lbnF1aXJpZXMgLmNvbnRhY3QtbWFpbl9fZm9vdGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG4gIC5wYWdlLXRlbXBsYXRlLWVucXVpcmllcyAuY29udGFjdC1tYWluX19mb290ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI3LCAzNSwgMzgsIDAuMjUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnBhZ2UtdGVtcGxhdGUtZW5xdWlyaWVzIC5jb250YWN0LW1haW5fX2Zvb3RlciAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5mYXFzX19hbmNob3ItbGlua3Mge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZmFxc19fYW5jaG9yLWxpbmtzOjpiZWZvcmUsIC5mYXFzX19hbmNob3ItbGlua3M6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZhcXNfX2FuY2hvci1saW5rczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZhcXNfX2FuY2hvci1saW5rcyB7XG4gICAgICBwYWRkaW5nOiAxMHJlbSAwIDUuNjI1cmVtIDEuODc1cmVtOyB9IH1cbiAgLmZhcXNfX2FuY2hvci1saW5rcyBoMyB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmZhcXNfX2FuY2hvci1saW5rcyBoMzphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuZmFxc19fYW5jaG9yLWxpbmtzIC5mYXFzX19hbmNob3ItbGluayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAjM2Q5NmNhOyB9XG5cbi5mYXFzX19hbmNob3ItbGlua3MtbGlzdCB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5mYXFzX19hbmNob3ItbGlua3MtbGlzdCBsaSB7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDE1cHggMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mYXFzX19hbmNob3ItbGlua3MtbGlzdCBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfSB9XG4gICAgLmZhcXNfX2FuY2hvci1saW5rcy1saXN0IGxpOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hlY2suc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyN3B4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDE1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5mYXFzX19hbmNob3ItbGlua3MtbGlzdCBsaTpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfSB9XG5cbi5mYXFzLXBhZ2UgLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmFxcy1wYWdlIC5jb250YWluZXIge1xuICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgIGZsZXgtZmxvdzogaW5oZXJpdDsgfSB9XG5cbi5mYXFzLXBhZ2UgLmdlbmVyaWMtbWFpbiB7XG4gIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZhcXMtcGFnZSAuZ2VuZXJpYy1tYWluIHtcbiAgICAgIHBhZGRpbmc6IDcuODEyNXJlbSAwOyB9IH1cblxuLmZhcXMtcGFnZSAuZ2VuZXJpYy1tYWluX19oZWFkZXI6bm90KC5tb2JpbGUpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mYXFzLXBhZ2UgLmdlbmVyaWMtbWFpbl9faGVhZGVyOm5vdCgubW9iaWxlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5mYXFzLXBhZ2UgLmdlbmVyaWMtbWFpbl9faGVhZGVyLm1vYmlsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiA2MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZhcXMtcGFnZSAuZ2VuZXJpYy1tYWluX19oZWFkZXIubW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllcyB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllcyB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICAuZmVhdHVyZWQtZmFjaWxpdGllczphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDgwZDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTJweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aWR0aDogMTJweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzLmZlYXR1cmVkLWZhY2lsaXRpZXMtLWNlbnRyZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMTBweDsgfSB9XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzLmZlYXR1cmVkLWZhY2lsaXRpZXMtLWNlbnRyZSAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0cyB7XG4gICAgbWFyZ2luLXRvcDogNzBweDsgfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faW50cm8ge1xuICBtYXJnaW46IGF1dG87XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faW50cm8ge1xuICAgICAgbWF4LXdpZHRoOiA1MjBweDsgfSB9XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19pbnRybzpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICNmZjA4MGQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTJweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTUwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2ludHJvOmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTExMHB4OyB9IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2ludHJvIGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19pbnRybyBoMiB7XG4gICAgICAgIG1hcmdpbjogNDVweCAwIDA7IH0gfVxuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19pbnRybyBoMjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI2M5Y2FjYjtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNjBweDtcbiAgICAgIHdpZHRoOiAxcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19pbnRybyBoMjpiZWZvcmUge1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICB0b3A6IC05MHB4OyB9IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX3ZpcnR1YWwtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogIzAwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIC40czsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX192aXJ0dWFsLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiA0NXB4OyB9IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX3ZpcnR1YWwtYnV0dG9uOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXh0ZXJuYWwtbGluay1ibGFjay5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjBweDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICB3aWR0aDogMjVweDsgfVxuICAuZmVhdHVyZWQtZmFjaWxpdGllc19fdmlydHVhbC1idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7IH1cbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fdmlydHVhbC1idXR0b246aG92ZXI6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V4dGVybmFsLWxpbmstd2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyICMwMDA7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzOyB9XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHRzLXdyYXBwZXI6OmJlZm9yZSwgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodHMtd3JhcHBlcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnOyB9XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHRzLXdyYXBwZXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodHMge1xuICBtYXJnaW46IDAgMCA1NXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHRzOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogI2M5Y2FjYjtcbiAgICBib3R0b206IC03NXB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodHM6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHRzIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHRzLCAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0czpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0czpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodCB7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIHBhZGRpbmc6IDAgMjBweDsgfVxuICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0OjpiZWZvcmUsIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0MHB4O1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodDpudGgtb2YtdHlwZSgybisxKSAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWNvbHVtbiB7XG4gICAgICBwYWRkaW5nOiAwIDI1cHggMCAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0Om50aC1vZi10eXBlKDJuKzEpIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY29sdW1uLWltYWdlIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodDpudGgtb2YtdHlwZSgybisxKSAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWNvbHVtbi1pbWFnZTphZnRlciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiBhdXRvOyB9IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodDpudGgtb2YtdHlwZSgybisxKSAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LXRpdGxlIGEge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodDpudGgtb2YtdHlwZSgybisxKSAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LXRpdGxlIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMzZDk2Y2E7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodDpudGgtb2YtdHlwZSgybisxKSAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LXRpdGxlOmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogLTMwcHg7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodDpudGgtb2YtdHlwZSgybisxKSAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LXRpdGxlOmFmdGVyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjVweDsgfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWNvbHVtbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY29sdW1uIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1jb2x1bW4gLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LXRpdGxlIHtcbiAgcGFkZGluZy1yaWdodDogMTUlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LXRpdGxlOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmYwODBkO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBsZWZ0OiAtMzBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTVweDtcbiAgICAgIHdpZHRoOiAxMnB4OyB9XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC10aXRsZTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjYzljYWNiO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDcwJTtcbiAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgbWluLWhlaWdodDogNDVweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMzZweDtcbiAgICAgIHdpZHRoOiAxcHg7IH0gfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWRlc2NyaXB0aW9uLCAuc21hcnRfX2NvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtZGVzY3JpcHRpb24gcCwgLnNtYXJ0X19jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBtYXJnaW46IDVweCAwIDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtZGVzY3JpcHRpb24gcCwgLnNtYXJ0X19jb250ZW50IHAge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgICBtYXJnaW46IDE1cHggMCAyNXB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1kZXNjcmlwdGlvbiBwLCAuc21hcnRfX2NvbnRlbnQgcCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1kZXNjcmlwdGlvbiBwIGEsIC5zbWFydF9fY29udGVudCBwIGEge1xuICAgICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtZGVzY3JpcHRpb24gcCBhOmhvdmVyLCAuc21hcnRfX2NvbnRlbnQgcCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1jdGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZjA4MGQ7XG4gIGNvbG9yOiAjZmYwODBkO1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1jdGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA4MGQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmYwODBkO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1jdGEge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY3RhLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1jdGEtLWhhbGYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH0gfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWxpbmsge1xuICBjb2xvcjogIzNkOTZjYTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtbGluayB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWxpbmsge1xuICAgICAgbWFyZ2luLXRvcDogN3B4OyB9IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1saW5rLnJlZCB7XG4gIGNvbG9yOiAjZmYwODBkOyB9XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY29sdW1uLWltYWdlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAwIDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWNvbHVtbi1pbWFnZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWNvbHVtbi1pbWFnZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDsgfVxuICAgICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1jb2x1bW4taW1hZ2U6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYzljYWNiO1xuICAgICAgICBib3R0b206IC0xNDVweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxcHg7IH0gfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWltYWdlIHtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNjAlO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtaW1hZ2Uge1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2LjUlOyB9IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcyB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIHBhZGRpbmc6IDIwcHggMDsgfVxuICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzOjpiZWZvcmUsIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcyB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDAgMzBweDsgfSB9XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtd3JhcHBlciB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLXdyYXBwZXIsIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtd3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLXdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtd3JhcHBlciBoMiB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWxpc3Qge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2M5Y2FjYjtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNjOWNhY2I7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDIwcHggMCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGhlaWdodCAuNHM7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1saXN0LmhpZGRlbi1jb250ZW50OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZ3JhZGllbnQtdXAucG5nXCIpIG5vLXJlcGVhdCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDYwcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogNjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtbGlzdCB7XG4gICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1saXN0IC5pbm5lcjo6YmVmb3JlLCAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWxpc3QgLmlubmVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtbGlzdCAuaW5uZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWl0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWl0ZW0ge1xuICAgICAgbWluLWhlaWdodDogODVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWl0ZW0ge1xuICAgICAgd2lkdGg6IDMzLjMzJTsgfSB9XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtdGl0bGUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy10aXRsZSBhIHtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLXRpdGxlIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMzZDk2Y2E7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy10aXRsZTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2NoZWNrLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjdweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtdGl0bGU6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7IH0gfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY2NjtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfSB9XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtZGVzY3JpcHRpb24gYSB7XG4gICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWRlc2NyaXB0aW9uIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1tb3JlIHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgYm90dG9tOiAtMTBweDtcbiAgZGlzcGxheTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxlZnQ6IDUwJTtcbiAgcGFkZGluZzogMCA0MHB4IDAgMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1tb3JlOmFmdGVyIHtcbiAgICByaWdodDogMTVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtbW9yZSB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgcGFkZGluZzogMCA2MHB4IDAgNDBweDsgfVxuICAgICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1tb3JlOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDM1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtbW9yZSB7XG4gICAgICBib3R0b206IDA7IH0gfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWsuZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWstLWRlc2t0b3Age1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2JyZWFrLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2JyZWFrLS1kZXNrdG9wIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWsuZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWstLXRhYmxldCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWsuZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWstLXRhYmxldCB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWsuZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWstLXRhYmxldCB7XG4gICAgICBjbGVhcjogaW5pdGlhbDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uZmVlbGluZy1pbnNwaXJlZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzlhMDQwNiwgI2ZmMDgwZCk7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMzBweCAwIDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWVsaW5nLWluc3BpcmVkIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCAzMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVlbGluZy1pbnNwaXJlZCB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDAgNDBweDsgfSB9XG5cbi5mZWVsaW5nLWluc3BpcmVkX19pbm5lciB7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVlbGluZy1pbnNwaXJlZF9faW5uZXIge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWVsaW5nLWluc3BpcmVkX19pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZlZWxpbmctaW5zcGlyZWRfX2lubmVyLCAuZmVlbGluZy1pbnNwaXJlZF9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmZlZWxpbmctaW5zcGlyZWRfX2lubmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuZmVlbGluZy1pbnNwaXJlZF9faW5uZXIgaDEge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVlbGluZy1pbnNwaXJlZF9faW5uZXIgaDEge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG4gICAgLmZlZWxpbmctaW5zcGlyZWRfX2lubmVyIGgxOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgd2lkdGg6IDMwcHg7IH1cbiAgLmZlZWxpbmctaW5zcGlyZWRfX2lubmVyIHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG8gMTBweDtcbiAgICBtYXgtd2lkdGg6IDQ1MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWVsaW5nLWluc3BpcmVkX19pbm5lciBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA2NTBweDsgfSB9XG5cbi5mZWVsaW5nLWluc3BpcmVkX19idXR0b25zIHtcbiAgbWFyZ2luOiAyMHB4IDAgMTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWVsaW5nLWluc3BpcmVkX19idXR0b25zIHtcbiAgICAgIG1hcmdpbjogNDBweCAwIDIwcHg7IH0gfVxuXG4uZmVlbGluZy1pbnNwaXJlZF9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2lkdGg6IDkwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWVsaW5nLWluc3BpcmVkX19idXR0b24ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICBtYXgtd2lkdGg6IDI3MHB4O1xuICAgICAgcGFkZGluZzogMC44MTI1cmVtIDAuNjI1cmVtO1xuICAgICAgd2lkdGg6IDMwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlZWxpbmctaW5zcGlyZWRfX2J1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBtYXJnaW46IDAgMTBweDsgfSB9XG4gIC5mZWVsaW5nLWluc3BpcmVkX19idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDAwOyB9XG5cbi5ob21lIC5mb290ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuaG9tZSAuZm9vdGVyLmZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNDB2aDsgfSB9XG5cbi5mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU1O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5mb290ZXI6OmJlZm9yZSwgLmZvb3Rlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuZm9vdGVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmZvb3Rlcl9fY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuZm9vdGVyX19jb250YWluZXI6OmJlZm9yZSwgLmZvb3Rlcl9fY29udGFpbmVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5mb290ZXJfX2NvbnRhaW5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5mb290ZXJfX21lbnVzOjpiZWZvcmUsIC5mb290ZXJfX21lbnVzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7IH1cblxuLmZvb3Rlcl9fbWVudXM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fbWVudXMge1xuICAgIGhlaWdodDogMzAwcHg7XG4gICAgcGFkZGluZzogMzBweCAwIDUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19tZW51LXdyYXBwZXIge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyX19tZW51LXdyYXBwZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19tZW51LXdyYXBwZXIsIC5mb290ZXJfX21lbnUtd3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAuZm9vdGVyX19tZW51LXdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uZm9vdGVyX19tZW51LWFib3V0IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19tZW51LWFib3V0IHtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyX19tZW51LWFib3V0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9vdGVyX19tZW51LWFib3V0LCAuZm9vdGVyX19tZW51LWFib3V0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5mb290ZXJfX21lbnUtYWJvdXQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fbWVudS1hYm91dCAuZm9vdGVyX19tZW51LXRpdGxlOmFmdGVyIHtcbiAgICAgIHdpZHRoOiA5NSU7IH0gfVxuXG4uZm9vdGVyX19tZW51LWNvbnRhY3Qge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX21lbnUtY29udGFjdCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyX19tZW51LWNvbnRhY3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXJfX21lbnUtY29udGFjdCwgLmZvb3Rlcl9fbWVudS1jb250YWN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5mb290ZXJfX21lbnUtY29udGFjdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fbWVudS1zb2NpYWwge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb290ZXJfX21lbnUtc29jaWFsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fbWVudS1zb2NpYWwsIC5mb290ZXJfX21lbnUtc29jaWFsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5mb290ZXJfX21lbnUtc29jaWFsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fbWVudS1zb2NpYWwgLmZvb3Rlcl9fbWVudS10aXRsZTphZnRlciB7XG4gICAgd2lkdGg6IDc1JTsgfSB9XG5cbi5mb290ZXJfX21lbnUtc29jaWFsIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1pbi13aWR0aDogMTI1cHg7XG4gIHBhZGRpbmctdG9wOiA4cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19tZW51LXNvY2lhbCBpbWcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy10b3A6IDhweDsgfSB9XG5cbi5uby10b3VjaGV2ZW50cyAuZm9vdGVyX19tZW51LXRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNjOWNhY2I7IH1cblxuLmZvb3Rlcl9fbWVudS10aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzMzMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBwYWRkaW5nOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZvb3Rlcl9fbWVudS10aXRsZTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V4cGFuZC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxNXB4OyB9XG4gIC5mb290ZXJfX21lbnUtdGl0bGUuZXhwYW5kZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTU7IH1cbiAgICAuZm9vdGVyX19tZW51LXRpdGxlLmV4cGFuZGVkOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9oaWRlLWdyZXkuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXJfX21lbnUtdGl0bGUuZXhwYW5kZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAuZm9vdGVyX19tZW51LXRpdGxlLmV4cGFuZGVkOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTRlNGU1OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19tZW51LXRpdGxlIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nOiAwIDAgMTBweDsgfVxuICAgICAgLmZvb3Rlcl9fbWVudS10aXRsZTphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlNGU0ZTU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIHdpZHRoOiA5MCU7IH0gfVxuXG4uZm9vdGVyX19tZW51LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU1O1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgLmZvb3Rlcl9fbWVudS1jb250ZW50OjpiZWZvcmUsIC5mb290ZXJfX21lbnUtY29udGVudDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuZm9vdGVyX19tZW51LWNvbnRlbnQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX21lbnUtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5mb290ZXJfX21lbnUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZm9vdGVyX19tZW51IGxpIHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzEyNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXJfX21lbnUgbGkge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgLmZvb3Rlcl9fbWVudSBsaSBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuZm9vdGVyX19tZW51IGxpIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19tZW51LS1oYWxmIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLmZvb3Rlcl9fbWVudS0taGFsZjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuXG4uZm9vdGVyX19zb2NpYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICAuZm9vdGVyX19zb2NpYWwgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmZvb3Rlcl9fc29jaWFsIGE6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLmZvb3Rlcl9fc29jaWFsLWljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMzZweDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IDM2cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vLXJlcGVhdCBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19zb2NpYWwtaWNvbiB7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB3aWR0aDogMjRweDsgfSB9XG4gIC5mb290ZXJfX3NvY2lhbC1pY29uLmZvb3Rlcl9fc29jaWFsLWljb24tLWZiIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZmFjZWJvb2stYmxhY2suc3ZnXCIpOyB9XG4gIC5mb290ZXJfX3NvY2lhbC1pY29uLmZvb3Rlcl9fc29jaWFsLWljb24tLXR3IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcveC1ibGFjay5zdmdcIik7IH1cbiAgLmZvb3Rlcl9fc29jaWFsLWljb24uZm9vdGVyX19zb2NpYWwtaWNvbi0taWcge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pbnN0YWdyYW0tYmxhY2suc3ZnXCIpOyB9XG4gIC5mb290ZXJfX3NvY2lhbC1pY29uLmZvb3Rlcl9fc29jaWFsLWljb24tLXR0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvdGlrdG9rLWJsYWNrLnN2Z1wiKTsgfVxuICAuZm9vdGVyX19zb2NpYWwtaWNvbi5mb290ZXJfX3NvY2lhbC1pY29uLS15dCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3lvdXR1YmUtYmxhY2suc3ZnXCIpOyB9XG5cbi5mb290ZXJfX2NvcHlyaWdodCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5mb290ZXJfX2NvcHlyaWdodDo6YmVmb3JlLCAuZm9vdGVyX19jb3B5cmlnaHQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZvb3Rlcl9fY29weXJpZ2h0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyX19jb3B5cmlnaHQge1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9IH1cblxuLmZvb3Rlcl9fY29weXJpZ2h0LWNvbnRlbnQge1xuICBjb2xvcjogIzAwMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyX19jb3B5cmlnaHQtY29udGVudCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvb3Rlcl9fY29weXJpZ2h0LWNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb290ZXJfX2NvcHlyaWdodC1jb250ZW50LCAuZm9vdGVyX19jb3B5cmlnaHQtY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZm9vdGVyX19jb3B5cmlnaHQtY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19jb3B5cmlnaHQtY29udGVudCB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvb3Rlcl9fY29weXJpZ2h0LWNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXJfX2NvcHlyaWdodC1jb250ZW50LCAuZm9vdGVyX19jb3B5cmlnaHQtY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZm9vdGVyX19jb3B5cmlnaHQtY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmZvb3Rlcl9fY29weXJpZ2h0LWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9vdGVyX19jb3B5cmlnaHQtY29udGVudCBwIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvb3Rlcl9fY29weXJpZ2h0LWNvbnRlbnQgcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5mb290ZXJfX2NvcHlyaWdodC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb290ZXJfX2NvcHlyaWdodC1pbWFnZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvb3Rlcl9fY29weXJpZ2h0LWltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9vdGVyX19jb3B5cmlnaHQtaW1hZ2UsIC5mb290ZXJfX2NvcHlyaWdodC1pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZm9vdGVyX19jb3B5cmlnaHQtaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fY29weXJpZ2h0LWltYWdlIHtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvb3Rlcl9fY29weXJpZ2h0LWltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9vdGVyX19jb3B5cmlnaHQtaW1hZ2UsIC5mb290ZXJfX2NvcHlyaWdodC1pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZm9vdGVyX19jb3B5cmlnaHQtaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5mb290ZXJfX2NvcHlyaWdodC1pbWFnZSBpbWcge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgd2lkdGg6IG1pbi1jb250ZW50OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb290ZXJfX2NvcHlyaWdodC1pbWFnZSBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXJfX2NvcHlyaWdodC1pbWFnZSBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5pbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZXh0J106Zm9jdXMsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2VtYWlsJ106Zm9jdXMsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3RlbCddOmZvY3VzLCB0ZXh0YXJlYTpmb2N1cywgc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RmNzIwODtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggI2RmNzIwODtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZXh0J10sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3Bhc3N3b3JkJ10sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2VtYWlsJ10sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3RlbCddIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzY2NjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDFlbTtcbiAgcGFkZGluZzogMC44MTI1cmVtIDEuMjVyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ndGV4dCddLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdwYXNzd29yZCddLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdlbWFpbCddLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZWwnXSB7XG4gICAgICBtYXgtd2lkdGg6IDUwMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZXh0J10sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3Bhc3N3b3JkJ10sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2VtYWlsJ10sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3RlbCddIHtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7IH0gfVxuICBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZXh0J106ZGlzYWJsZWQsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3Bhc3N3b3JkJ106ZGlzYWJsZWQsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2VtYWlsJ106ZGlzYWJsZWQsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3RlbCddOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZXh0J10uaW5wdXRfX3NlYXJjaCwgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ncGFzc3dvcmQnXS5pbnB1dF9fc2VhcmNoLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdlbWFpbCddLmlucHV0X19zZWFyY2gsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3RlbCddLmlucHV0X19zZWFyY2gge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmYgdXJsKFwiLi4vaW1nL3NlYXJjaC5zdmdcIikgbm8tcmVwZWF0IDk0JSAxM3B4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMThweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ndGV4dCddLmlucHV0X19zZWFyY2gsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3Bhc3N3b3JkJ10uaW5wdXRfX3NlYXJjaCwgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0nZW1haWwnXS5pbnB1dF9fc2VhcmNoLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZWwnXS5pbnB1dF9fc2VhcmNoIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoXCIuLi9pbWcvc2VhcmNoLnN2Z1wiKSBuby1yZXBlYXQgOTUlIDEzcHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjJweDtcbiAgICAgICAgcGFkZGluZzogMC45Mzc1cmVtIDMuMTI1cmVtIDAuOTM3NXJlbSAxLjI1cmVtOyB9IH1cbiAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ndGV4dCddLmlucHV0X19maWx0ZXIsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3Bhc3N3b3JkJ10uaW5wdXRfX2ZpbHRlciwgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0nZW1haWwnXS5pbnB1dF9fZmlsdGVyLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSd0ZWwnXS5pbnB1dF9fZmlsdGVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3RleHQnXS5pbnB1dF9fZmlsdGVyOmZvY3VzLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdwYXNzd29yZCddLmlucHV0X19maWx0ZXI6Zm9jdXMsIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2VtYWlsJ10uaW5wdXRfX2ZpbHRlcjpmb2N1cywgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ndGVsJ10uaW5wdXRfX2ZpbHRlcjpmb2N1cyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBpbml0aWFsO1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdyYWRpbyddLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdjaGVja2JveCddIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7IH1cbiAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ncmFkaW8nXSArIGxhYmVsLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdjaGVja2JveCddICsgbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDMxcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHNwYW4sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogLTFweCA2cHggMCAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgd2lkdGg6IDI0cHg7IH1cbiAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ncmFkaW8nXTpmb2N1cyArIGxhYmVsIHNwYW4sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2NoZWNrYm94J106Zm9jdXMgKyBsYWJlbCBzcGFuIHtcbiAgICBvdXRsaW5lOiBhdXRvIDNweCAjZGY3MjA4OyB9XG4gIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J3JhZGlvJ10uZm9ybXNfX2lucHV0LS1jaGVja2JveCArIGxhYmVsIHNwYW4sIGlucHV0Om5vdCguQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b24pW3R5cGU9J2NoZWNrYm94J10uZm9ybXNfX2lucHV0LS1jaGVja2JveCArIGxhYmVsIHNwYW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jaGVja2JveC1ibGFuay5zdmdcIik7XG4gICAgbWFyZ2luOiAtNHB4IDhweCAwIDA7IH1cbiAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLWNoZWNrYm94OmNoZWNrZWQgKyBsYWJlbCBzcGFuLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdjaGVja2JveCddLmZvcm1zX19pbnB1dC0tY2hlY2tib3g6Y2hlY2tlZCArIGxhYmVsIHNwYW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jaGVja2JveC1jaGVja2VkLnN2Z1wiKTsgfVxuICBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdyYWRpbyddLmZvcm1zX19pbnB1dC0tcmFkaW8gKyBsYWJlbCBzcGFuLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdjaGVja2JveCddLmZvcm1zX19pbnB1dC0tcmFkaW8gKyBsYWJlbCBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvcmFkaW8tYmxhbmsuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbWFyZ2luOiAtM3B4IDhweCAwIDA7XG4gICAgd2lkdGg6IDI0cHg7IH1cbiAgaW5wdXQ6bm90KC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbilbdHlwZT0ncmFkaW8nXS5mb3Jtc19faW5wdXQtLXJhZGlvOmNoZWNrZWQgKyBsYWJlbCBzcGFuLCBpbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKVt0eXBlPSdjaGVja2JveCddLmZvcm1zX19pbnB1dC0tcmFkaW86Y2hlY2tlZCArIGxhYmVsIHNwYW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9yYWRpby1jaGVja2VkLnN2Z1wiKTsgfVxuXG50ZXh0YXJlYSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NjY7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBoZWlnaHQ6IDE3MHB4O1xuICBsZXR0ZXItc3BhY2luZzogLS4wMWVtO1xuICBwYWRkaW5nOiAwLjgxMjVyZW0gMS4yNXJlbTtcbiAgcmVzaXplOiBub25lO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHRleHRhcmVhIHtcbiAgICAgIG1heC13aWR0aDogNTAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHRleHRhcmVhIHtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7IH0gfVxuXG4ucmFkaW9fX3dyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmFkaW9fX3dyYXBwZXItLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyNXB4OyB9XG5cbi5zZWxlY3RfX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zZWxlY3RfX3dyYXBwZXI6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXhwYW5kLWdyZXkuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMThweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDk0JTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAzJTtcbiAgICB3aWR0aDogMzBweDsgfVxuICAuc2VsZWN0X193cmFwcGVyIC5mb3JtX192YWxpZGl0eS1pY29uIHtcbiAgICByaWdodDogMTBweDsgfVxuICAuc2VsZWN0X193cmFwcGVyLmlucHV0X193cmFwcGVyLS12YWxpZDpiZWZvcmUsIC5zZWxlY3RfX3dyYXBwZXIuaW5wdXRfX3dyYXBwZXItLWludmFsaWQ6YmVmb3JlIHtcbiAgICByaWdodDogNDBweDsgfVxuICAuc2VsZWN0X193cmFwcGVyLmlucHV0X193cmFwcGVyLS12YWxpZCBzZWxlY3QsIC5zZWxlY3RfX3dyYXBwZXIuaW5wdXRfX3dyYXBwZXItLWludmFsaWQgc2VsZWN0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlbGVjdF9fd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDUwMHB4OyB9XG4gICAgICAuc2VsZWN0X193cmFwcGVyIC5mb3JtX192YWxpZGl0eS1pY29uIHtcbiAgICAgICAgbGVmdDogNDYwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWxlY3RfX3dyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiA0MDBweDsgfVxuICAgICAgLnNlbGVjdF9fd3JhcHBlciAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgIGxlZnQ6IDQxNXB4OyB9XG4gICAgICAuc2VsZWN0X193cmFwcGVyLmlucHV0X193cmFwcGVyLS12YWxpZDpiZWZvcmUsIC5zZWxlY3RfX3dyYXBwZXIuaW5wdXRfX3dyYXBwZXItLWludmFsaWQ6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC5zZWxlY3RfX3dyYXBwZXIuaW5wdXRfX3dyYXBwZXItLXZhbGlkIHNlbGVjdCwgLnNlbGVjdF9fd3JhcHBlci5pbnB1dF9fd3JhcHBlci0taW52YWxpZCBzZWxlY3Qge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLnNlbGVjdF9fd3JhcHBlcjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjY2O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGNvbG9yOiAjMzMzO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGhlaWdodDogM3JlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDFlbTtcbiAgcGFkZGluZzogMC44MTI1cmVtIDIuNXJlbSAwLjgxMjVyZW0gMS4yNXJlbTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBzZWxlY3Qge1xuICAgICAgbWF4LXdpZHRoOiA2MDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7IH0gfVxuXG4uZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAzMHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNCU7XG4gIHRvcDogOHB4O1xuICB3aWR0aDogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtX192YWxpZGl0eS1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICBsZWZ0OiA0NTBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvcm1fX3ZhbGlkaXR5LWljb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBsZWZ0OiA0MTVweDtcbiAgICAgIHRvcDogMTJweDsgfSB9XG5cbi5pbnB1dF9fd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaW5wdXRfX3dyYXBwZXItLXZhbGlkIGlucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiAjYjljNzAwOyB9XG4gIC5pbnB1dF9fd3JhcHBlci0tdmFsaWQgaW5wdXRbdHlwZT0ndGV4dCddLmlucHV0X19zZWFyY2gge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogODklO1xuICAgIHBhZGRpbmctcmlnaHQ6IDc1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmlucHV0X193cmFwcGVyLS12YWxpZCBpbnB1dFt0eXBlPSd0ZXh0J10uaW5wdXRfX3NlYXJjaCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogODclO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5MHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmlucHV0X193cmFwcGVyLS12YWxpZCBpbnB1dFt0eXBlPSd0ZXh0J10uaW5wdXRfX3NlYXJjaCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogOTUlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4OyB9IH1cblxuLmlucHV0X193cmFwcGVyLS12YWxpZCAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy92YWxpZC5zdmdcIik7XG4gIGNvbG9yOiAjYjljNzAwO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmlucHV0X193cmFwcGVyLS1pbnZhbGlkIGlucHV0LFxuLmlucHV0X193cmFwcGVyLS1pbnZhbGlkIHRleHRhcmVhIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGY3MjA4OyB9XG4gIC5pbnB1dF9fd3JhcHBlci0taW52YWxpZCBpbnB1dFt0eXBlPSd0ZXh0J10uaW5wdXRfX3NlYXJjaCxcbiAgLmlucHV0X193cmFwcGVyLS1pbnZhbGlkIHRleHRhcmVhW3R5cGU9J3RleHQnXS5pbnB1dF9fc2VhcmNoIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDg5JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pbnB1dF9fd3JhcHBlci0taW52YWxpZCBpbnB1dFt0eXBlPSd0ZXh0J10uaW5wdXRfX3NlYXJjaCxcbiAgICAgIC5pbnB1dF9fd3JhcHBlci0taW52YWxpZCB0ZXh0YXJlYVt0eXBlPSd0ZXh0J10uaW5wdXRfX3NlYXJjaCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogODclO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5MHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmlucHV0X193cmFwcGVyLS1pbnZhbGlkIGlucHV0W3R5cGU9J3RleHQnXS5pbnB1dF9fc2VhcmNoLFxuICAgICAgLmlucHV0X193cmFwcGVyLS1pbnZhbGlkIHRleHRhcmVhW3R5cGU9J3RleHQnXS5pbnB1dF9fc2VhcmNoIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiA5NSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH0gfVxuXG4uaW5wdXRfX3dyYXBwZXItLWludmFsaWQgLmZvcm1fX3ZhbGlkaXR5LW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaW5wdXRfX3dyYXBwZXItLWludmFsaWQgLmZvcm1fX3ZhbGlkaXR5LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYXR0ZW50aW9uLnN2Z1wiKTtcbiAgY29sb3I6ICNkZjcyMDg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uZm9ybV9fdmFsaWRpdHktbWVzc2FnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAtMjVweDtcbiAgY29sb3I6ICNkZjcyMDg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uZm9ybV9fc3ViZmllbGRzIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZnJlZXN3aW1fX2xvZ2luIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmZyZWVzd2ltX19lbGlnaWJpbGl0eS1tZXNzYWdlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiA0MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDgwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mcmVlc3dpbV9fZWxpZ2liaWxpdHktbWVzc2FnZSB7XG4gICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uZnJlZXN3aW1fX2VsaWdpYmlsaXR5LW1lc3NhZ2UtdGl0bGUge1xuICBjb2xvcjogI2ZmMDgwZDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uZnJlZXN3aW1fX2RldGFpbGVkLWZvcm0gcCB7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuLmZyZWVzd2ltX19lbGlnaWJpbGl0eS1vdGhlci1pbnB1dDplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZyZWVzd2ltX19lbGlnaWJpbGl0eS1zZWNvbmRhcnktb3B0aW9ucyAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mcmVlc3dpbV9fc2VjdGlvbnMge1xuICAgIG1hcmdpbjogMCAyMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZyZWVzd2ltX19zZWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwOyB9IH1cblxuLmZyZWVzd2ltX19zZWN0aW9uIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmZmZmY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZnJlZXN3aW1fX3NlY3Rpb24uYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWFlZmZmOyB9XG4gIC5mcmVlc3dpbV9fc2VjdGlvbi5jb250YWN0LW1haW5fX21vZHVsZS0tZGV0YWlscyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mcmVlc3dpbV9fc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZnJlZXN3aW1fX3NlY3Rpb24ge1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAzMHB4O1xuICAgICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAuZnJlZXN3aW1fX3NlY3Rpb24tLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZnJlZXN3aW1fX3NlY3Rpb24tLWFjdGl2ZSAuZnJlZXN3aW1fX3NlY3Rpb24tdGl0bGUge1xuICAgICAgYmFja2dyb3VuZDogI2UxZTdmZjsgfVxuICAgIC5mcmVlc3dpbV9fc2VjdGlvbi0tYWN0aXZlIC5mcmVlc3dpbV9fc2VjdGlvbi1ib2R5IHtcbiAgICAgIGJhY2tncm91bmQ6ICNlYWVmZmY7IH1cbiAgLmZyZWVzd2ltX19zZWN0aW9uLS1wcmVmZXJlbmNlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5mcmVlc3dpbV9fc2VjdGlvbi0tcHJlZmVyZW5jZXMgbGFiZWwge1xuICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgLmZyZWVzd2ltX19zZWN0aW9uLS12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZnJlZXN3aW1fX3NlY3Rpb24tdGl0bGUsXG4uZnJlZXN3aW1fX3NlY3Rpb24tYm9keSB7XG4gIHBhZGRpbmc6IDIwcHggMTVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mcmVlc3dpbV9fc2VjdGlvbi10aXRsZSxcbiAgICAuZnJlZXN3aW1fX3NlY3Rpb24tYm9keSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDI1cHg7IH0gfVxuXG4uZnJlZXN3aW1fX3NlY3Rpb24tdGl0bGUge1xuICBiYWNrZ3JvdW5kOiAjZTRlNGU1O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZmZmZjsgfVxuXG4uZnJlZXN3aW1fX3NlY3Rpb24tYm9keSB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIHBhZGRpbmc6IDIwcHggMzVweCAzNXB4OyB9XG4gIC5mcmVlc3dpbV9fc2VjdGlvbi1ib2R5IC5pbnB1dF9fd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAuZnJlZXN3aW1fX3NlY3Rpb24tYm9keSAuc2VsZWN0X193cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLmZyZWVzd2ltX19zZWN0aW9uLWJvZHkgW2lkXj0nc2VsZWN0LW9wdGlvbi1jaG9pY2UnXSA+IC5mb3JtX192YWxpZGl0eS1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjBweDtcbiAgICB0b3A6IC04cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZyZWVzd2ltX19zZWN0aW9uLWJvZHkgW2lkXj0nc2VsZWN0LW9wdGlvbi1jaG9pY2UnXSA+IC5mb3JtX192YWxpZGl0eS1pY29uIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDsgfSB9XG4gIC5mcmVlc3dpbV9fc2VjdGlvbi1ib2R5IGxhYmVsIHAge1xuICAgIGNvbG9yOiAjOTM5NTk4O1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAuZnJlZXN3aW1fX3NlY3Rpb24tYm9keSB0ZXh0YXJlYSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4uZnJlZXN3aW1fX2Zvb3RlciB7XG4gIGJhY2tncm91bmQ6ICNlYWVmZmY7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmZmZmO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMThweDtcbiAgcGFkZGluZzogMjVweCAxNXB4OyB9XG4gIC5mcmVlc3dpbV9fZm9vdGVyOjpiZWZvcmUsIC5mcmVlc3dpbV9fZm9vdGVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5mcmVlc3dpbV9fZm9vdGVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZnJlZXN3aW1fX2Zvb3RlciB7XG4gICAgICBtYXJnaW46IC0zOHB4IDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mcmVlc3dpbV9fZm9vdGVyIHtcbiAgICAgIG1hcmdpbjogLTM4cHggMCAwIDMwcHg7XG4gICAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gIC5mcmVlc3dpbV9fZm9vdGVyIC5jb250YWN0LW1haW5fX2J1dHRvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5mcmVlc3dpbV9fY29uZmlybSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAuZnJlZXN3aW1fX2NvbmZpcm0tLWNoZWNrYm94ZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZyZWVzd2ltX19jb25maXJtLS1tYXJrZXRpbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmxvZ2luX19mb3JtLS1jYXJkIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuLndyYXBwZXItbWFya2V0aW5nUHJlZmVyZW5jZXMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLWVucXVpcmllcyAud3JhcHBlcixcbiAgLnBhZ2UtdGVtcGxhdGUtZW5xdWlyaWVzLXRoYW5rLXlvdSAud3JhcHBlcixcbiAgLnBhZ2UtdGVtcGxhdGUtZmFxcyAud3JhcHBlcixcbiAgLnBhZ2UtdGVtcGxhdGUtZmVlZGJhY2sgLndyYXBwZXIsXG4gIC5wYWdlLXRlbXBsYXRlLWZlZWRiYWNrLXRoYW5rLXlvdSAud3JhcHBlcixcbiAgLnBhZ2UtdGVtcGxhdGUtZ2VuZXJpYyAud3JhcHBlcixcbiAgLnBhZ2UtdGVtcGxhdGUtZnJlZXN3aW0gLndyYXBwZXIsXG4gIC5wYWdlLXRlbXBsYXRlLXNjdiAud3JhcHBlcixcbiAgLnNpbmdsZS1jZW50cmUtc3VicGFnZSAud3JhcHBlcixcbiAgLnNpbmdsZS1wcm9tby1wYWdlIC53cmFwcGVyLFxuICAuZXJyb3I0MDQgLndyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2ZmZmZmZiA1MCUsICNmNGY0ZjQgNTAlKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2VuZXJpYyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfSB9XG5cbi5nZW5lcmljX19jb250ZW50IHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nZW5lcmljX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpY19fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdlbmVyaWNfX2NvbnRlbnQsIC5nZW5lcmljX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5nZW5lcmljX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgLmdlbmVyaWNfX2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDc1JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdlbmVyaWNfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgICAgLmdlbmVyaWNfX2NvbnRlbnQsIC5nZW5lcmljX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5nZW5lcmljX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2VuZXJpY19fd3JhcHBlciB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdlbmVyaWNfX3NpZGViYXIge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpY19fc2lkZWJhciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nZW5lcmljX19zaWRlYmFyLCAuZ2VuZXJpY19fc2lkZWJhcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAuZ2VuZXJpY19fc2lkZWJhcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5nZW5lcmljLW1haW4ge1xuICBwYWRkaW5nOiA2LjI1cmVtIDAgMi41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdlbmVyaWMtbWFpbiB7XG4gICAgICBwYWRkaW5nOiA3LjgxMjVyZW0gMCAyLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nZW5lcmljLW1haW4ge1xuICAgICAgcGFkZGluZzogNy44MTI1cmVtIDA7IH0gfVxuXG4uZ2VuZXJpYy1tYWluX19oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdlbmVyaWMtbWFpbl9faGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMzBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdlbmVyaWMtbWFpbl9faGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweCAzMHB4IDA7IH0gfVxuICAuZ2VuZXJpYy1tYWluX19oZWFkZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlNGU0ZTU7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ2VuZXJpYy1tYWluX19oZWFkZXI6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNnB4KTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdlbmVyaWMtbWFpbl9faGVhZGVyIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMi44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMy44NzVyZW07IH0gfVxuICAuZ2VuZXJpYy1tYWluX19oZWFkZXIgcCB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBtYXgtd2lkdGg6IDY4MHB4O1xuICAgIHBhZGRpbmc6IDIwcHggMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ2VuZXJpYy1tYWluX19oZWFkZXIgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDQwcHg7IH0gfVxuXG4uZ2VuZXJpYy1tYWluX19oZWFkZXItYnV0dG9ucyB7XG4gIG1hcmdpbjogMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpYy1tYWluX19oZWFkZXItYnV0dG9ucyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuLmdlbmVyaWMtbWFpbl9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5nZW5lcmljLW1haW5fX2RpdmlkZXIge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpYy1tYWluX19kaXZpZGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIG1hcmdpbjogMCAxMHB4OyB9IH1cbiAgLmdlbmVyaWMtbWFpbl9fZGl2aWRlciBzcGFuIHtcbiAgICBtYXJnaW46IDAgMnB4OyB9XG5cbi5nZW5lcmljLW1haW5fX2xpbmsge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4uZ2VuZXJpYy1tYWluX19jb250ZW50IHtcbiAgY29sb3I6ICM2NjY7XG4gIHBhZGRpbmc6IDI1cHggMjBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICB3aWR0aDogOTAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4JTtcbiAgICAgIHdpZHRoOiA4NCU7IH0gfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgcCBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IHAgZW0ge1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBoMixcbiAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBoMyxcbiAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBoNCxcbiAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBoNSB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGEge1xuICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50ID4gdWwsXG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCA+IHVsLFxuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCA+IG9sIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9IH1cbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50ID4gdWwgbGksXG4gICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCA+IG9sIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTYyNXJlbTtcbiAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiB1bCBsaTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI2ZmMDgwZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgd2lkdGg6IDZweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCA+IHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogLTI3cHg7IH0gfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50ID4gb2wge1xuICAgIGNvdW50ZXItcmVzZXQ6IGl0ZW07IH1cbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50ID4gb2wgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7IH1cbiAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBvbCBsaTpiZWZvcmUge1xuICAgICAgICBjb2xvcjogI2ZmMDgwZDtcbiAgICAgICAgY29udGVudDogY291bnRlcihpdGVtKSBcIi5cIjtcbiAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGl0ZW07XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBvbCBsaTpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogLTI3cHg7IH0gfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50ID4gYmxvY2txdW90ZSB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgbWFyZ2luOiAyMHB4O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCA+IGJsb2NrcXVvdGUgcCB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBibG9ja3F1b3RlIHA6YWZ0ZXIsIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBibG9ja3F1b3RlIHA6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3F1b3RlLXJlZC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMjVweDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBibG9ja3F1b3RlIHA6YWZ0ZXIsIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBibG9ja3F1b3RlIHA6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDsgfSB9XG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50ID4gYmxvY2txdW90ZSBwOmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgcmlnaHQ6IC0zMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7IH1cbiAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgPiBibG9ja3F1b3RlIHA6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgIHRvcDogLTEwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCA+IGJsb2NrcXVvdGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDUwcHg7IH1cbiAgICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCA+IGJsb2NrcXVvdGUgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbmxlZnQud3AtY2FwdGlvbiwgLmdlbmVyaWMtbWFpbl9fY29udGVudCBmaWd1cmUuYWxpZ25yaWdodC53cC1jYXB0aW9uLFxuICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWdubGVmdC53cC1jYXB0aW9uLFxuICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWducmlnaHQud3AtY2FwdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfSB9XG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgZmlndXJlLmFsaWdubGVmdC53cC1jYXB0aW9uIGltZywgLmdlbmVyaWMtbWFpbl9fY29udGVudCBmaWd1cmUuYWxpZ25yaWdodC53cC1jYXB0aW9uIGltZyxcbiAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBpbWcuYWxpZ25sZWZ0LndwLWNhcHRpb24gaW1nLFxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGltZy5hbGlnbnJpZ2h0LndwLWNhcHRpb24gaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbmxlZnQsXG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWdubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMzBweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbmxlZnQsXG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGltZy5hbGlnbmxlZnQge1xuICAgICAgICBtYXJnaW46IDIwcHggMjVweCAyMHB4IDA7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgZmlndXJlLmFsaWdubGVmdCxcbiAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWdubGVmdCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAtMjVweCAyMHB4IDA7XG4gICAgICAgIHJpZ2h0OiA2MHB4O1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgZmlndXJlLmFsaWducmlnaHQsXG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWducmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgZmlndXJlLmFsaWducmlnaHQsXG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGltZy5hbGlnbnJpZ2h0IHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAyNXB4O1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbnJpZ2h0LFxuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBpbWcuYWxpZ25yaWdodCB7XG4gICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDIwcHggLTI1cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBmaWd1cmUuYWxpZ25jZW50ZXIsIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgZmlndXJlLmFsaWdubm9uZSxcbiAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBpbWcuYWxpZ25jZW50ZXIsXG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWdubm9uZSB7XG4gICAgZGlzcGxheTogdGFia2U7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbmNlbnRlciwgLmdlbmVyaWMtbWFpbl9fY29udGVudCBmaWd1cmUuYWxpZ25ub25lLFxuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBpbWcuYWxpZ25jZW50ZXIsXG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGltZy5hbGlnbm5vbmUge1xuICAgICAgICBtYXJnaW46IDUwcHggYXV0bzsgfVxuICAgICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbmNlbnRlci53cC1jYXB0aW9uLCAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbm5vbmUud3AtY2FwdGlvbixcbiAgICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBpbWcuYWxpZ25jZW50ZXIud3AtY2FwdGlvbixcbiAgICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBpbWcuYWxpZ25ub25lLndwLWNhcHRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBmaWd1cmUuYWxpZ25jZW50ZXIud3AtY2FwdGlvbiAud3AtY2FwdGlvbi10ZXh0LCAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbm5vbmUud3AtY2FwdGlvbiAud3AtY2FwdGlvbi10ZXh0LFxuICAgICAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWduY2VudGVyLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCxcbiAgICAgICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGltZy5hbGlnbm5vbmUud3AtY2FwdGlvbiAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgICAgICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2FwdGlvbjsgfSB9XG4gICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCBmaWd1cmUuYWxpZ25jZW50ZXIgaW1nLCAuZ2VuZXJpYy1tYWluX19jb250ZW50IGZpZ3VyZS5hbGlnbm5vbmUgaW1nLFxuICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgaW1nLmFsaWduY2VudGVyIGltZyxcbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGltZy5hbGlnbm5vbmUgaW1nIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50IGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50IC53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgbWFyZ2luLXRvcDogNnB4OyB9XG4gIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgLmlmcmFtZS12aWRlbyB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDU1LjI1JTtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IC5pZnJhbWUtdmlkZW8gaWZyYW1lIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuZ2VuZXJpYy1tYWluX19jb250ZW50IC50YWJsZS1jb250YWluZXIge1xuICAgIG1hcmdpbjogNDBweCAwO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCAudGFibGUtY29udGFpbmVyIHtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuOyB9IH1cbiAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IC50YWJsZS1jb250YWluZXIgdGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIG1pbi13aWR0aDogNjAwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5nZW5lcmljLW1haW5fX2NvbnRlbnQgLnRhYmxlLWNvbnRhaW5lciB0YWJsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBtaW4td2lkdGg6IDA7IH0gfVxuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCAudGFibGUtY29udGFpbmVyIHRhYmxlIHRoIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlNGU0ZTU7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZTRlNGU1O1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgcGFkZGluZzogMjBweDsgfVxuICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCAudGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRyOm50aC1vZi10eXBlKDJuICsgMSkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0OyB9XG4gICAgICAuZ2VuZXJpYy1tYWluX19jb250ZW50IC50YWJsZS1jb250YWluZXIgdGFibGUgdGJvZHkgdHIgdGQge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHg7IH1cbiAgICAgICAgLmdlbmVyaWMtbWFpbl9fY29udGVudCAudGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRyIHRkIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmYwODBkOyB9XG5cbi5pbmZvLWJsb2NrIHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgYm9yZGVyOiAycHggc29saWQgI2Y0ZjRmNDtcbiAgbWFyZ2luOiA1cHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pbmZvLWJsb2NrOjpiZWZvcmUsIC5pbmZvLWJsb2NrOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5pbmZvLWJsb2NrOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmluZm8tYmxvY2sgLmluZm8tYmxvY2tfX2ltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBoZWlnaHQ6IDIwMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMjguMTI1ZW0pIHtcbiAgICAgIC5pbmZvLWJsb2NrIC5pbmZvLWJsb2NrX19pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMTMwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTgwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faW1hZ2Uge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faW1hZ2Uge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faW1hZ2UsIC5pbmZvLWJsb2NrIC5pbmZvLWJsb2NrX19pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmluZm8tYmxvY2sgLmluZm8tYmxvY2tfX2NvbnRlbnQge1xuICAgIGNvbG9yOiAjMzMzOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pbmZvLWJsb2NrIC5pbmZvLWJsb2NrX19jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5pbmZvLWJsb2NrIC5pbmZvLWJsb2NrX19jb250ZW50LCAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faGVhZGVyIHtcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7IH1cbiAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faGVhZGVyIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI4LjEyNWVtKSB7XG4gICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faGVhZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDAgMjAwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faGVhZGVyIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgIC5pbmZvLWJsb2NrIC5pbmZvLWJsb2NrX19oZWFkZXIgaDQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAgICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19faGVhZGVyIHAge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5pbmZvLWJsb2NrIC5pbmZvLWJsb2NrX19oZWFkZXIgLmluZm8tYmxvY2tfX21vcmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5pbmZvLWJsb2NrIC5pbmZvLWJsb2NrX19oZWFkZXIgLmluZm8tYmxvY2tfX21vcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI4LjEyNWVtKSB7XG4gICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgICAgICB3aWR0aDogNzUlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmluZm8tYmxvY2sgLmluZm8tYmxvY2tfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgICAgICAgd2lkdGg6IDc1JTsgfSB9XG4gICAgLmluZm8tYmxvY2sgLmluZm8tYmxvY2tfX2Rlc2NyaXB0aW9uIC5oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fbW9yZSB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW5mby1ibG9jayAuaW5mby1ibG9ja19fbW9yZSB7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDIwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2VuZXJpYy1tb2JpbGUtbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5nZW5lcmljLW1vYmlsZS1tZW51LnN0aWNreS1uYXYtLWFjdGl2ZSAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDJweCAtMnB4ICM5Mzk1OTg7XG4gIGxlZnQ6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAzMDBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDYwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX3dyYXBwZXIge1xuICAgICAgdG9wOiA3MnB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudS5zdGlja3ktbmF2LS1hY3RpdmUgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX3dyYXBwZXIge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmdlbmVyaWMtbW9iaWxlLW1lbnUuc3RpY2t5LW5hdi0tYWN0aXZlIC5nZW5lcmljLW1vYmlsZS1tZW51X193cmFwcGVyLnNsaWRlLXVwIHtcbiAgICB0b3A6IDA7IH1cblxuLnRvdWNoZXZlbnRzIC5nZW5lcmljLW1vYmlsZS1tZW51X193cmFwcGVyIHtcbiAgdHJhbnNpdGlvbjogdG9wIC40czsgfVxuXG4uZ2VuZXJpYy1tb2JpbGUtbWVudV9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5nZW5lcmljLW1vYmlsZS1tZW51X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fdGl0bGUge1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIC5nZW5lcmljLW1vYmlsZS1tZW51X190aXRsZTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V4cGFuZC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA2MHB4OyB9XG4gIC5nZW5lcmljLW1vYmlsZS1tZW51X190aXRsZS5leHBhbmRlZDphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2hpZGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfVxuICAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fdGl0bGUgYSB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5nZW5lcmljLW1vYmlsZS1tZW51X19saXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gKDYwcHggKyA2MHB4KSk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmZmZmOyB9XG4gIC5nZW5lcmljLW1vYmlsZS1tZW51X193cmFwcGVyLnNsaWRlLXVwIC5nZW5lcmljLW1vYmlsZS1tZW51X19saXN0IHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjBweCk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fbGlzdCB7XG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gKDcycHggKyA3MnB4KSk7IH1cbiAgICAgIC5nZW5lcmljLW1vYmlsZS1tZW51X193cmFwcGVyLnNsaWRlLXVwIC5nZW5lcmljLW1vYmlsZS1tZW51X19saXN0IHtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDcycHgpOyB9IH1cbiAgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX2xpc3QgbGkge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX2xpc3QgbGk6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmZmZmY7IH1cbiAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fbGlzdCBsaS5jdXJyZW50X3BhZ2VfaXRlbSA+IGEge1xuICAgICAgY29sb3I6ICMzMzM7IH1cbiAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fbGlzdCBsaS5wYWdlX2l0ZW1faGFzX2NoaWxkcmVuIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlYWVmZmY7IH1cbiAgICAgIC5nZW5lcmljLW1vYmlsZS1tZW51X19saXN0IGxpLnBhZ2VfaXRlbV9oYXNfY2hpbGRyZW4gPiBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2hpZGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzkzOTU5ODtcbiAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiA2MHB4OyB9XG4gICAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fbGlzdCBsaS5wYWdlX2l0ZW1faGFzX2NoaWxkcmVuIHVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4OyB9XG4gICAgICAgIC5nZW5lcmljLW1vYmlsZS1tZW51X19saXN0IGxpLnBhZ2VfaXRlbV9oYXNfY2hpbGRyZW4gdWwgbGkge1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmZmZmOyB9XG4gICAgICAgICAgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX2xpc3QgbGkucGFnZV9pdGVtX2hhc19jaGlsZHJlbiB1bCBsaSBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDIwcHggMTBweDsgfVxuICAgICAgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX2xpc3QgbGkucGFnZV9pdGVtX2hhc19jaGlsZHJlbi5jbG9zZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0OyB9XG4gICAgICAgIC5nZW5lcmljLW1vYmlsZS1tZW51X19saXN0IGxpLnBhZ2VfaXRlbV9oYXNfY2hpbGRyZW4uY2xvc2VkID4gc3BhbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V4cGFuZC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9XG4gICAgICAuZ2VuZXJpYy1tb2JpbGUtbWVudV9fbGlzdCBsaS5wYWdlX2l0ZW1faGFzX2NoaWxkcmVuID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5nZW5lcmljLW1vYmlsZS1tZW51X19saXN0IGxpIGEge1xuICAgICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmdlbmVyaWMtc2lkZWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDcuODEyNXJlbSAwIDAgMy4xMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2VuZXJpYy1zaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmdlbmVyaWMtc2lkZWJhciBoNCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM5Mzk1OTg7XG4gICAgbWFyZ2luOiAyMHB4IDAgMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG4gICAgLmdlbmVyaWMtc2lkZWJhciBoNCBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5nZW5lcmljLXNpZGViYXJfX2xpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMTVweDsgfVxuICAuZ2VuZXJpYy1zaWRlYmFyX19saXN0IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogNXB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmdlbmVyaWMtc2lkZWJhcl9fbGlzdCBsaS5jdXJyZW50X3BhZ2VfaXRlbSA+IGEge1xuICAgICAgY29sb3I6ICMzMzM7IH1cbiAgICAuZ2VuZXJpYy1zaWRlYmFyX19saXN0IGxpLmN1cnJlbnRfcGFnZV9pdGVtLnBhZ2VfaXRlbV9oYXNfY2hpbGRyZW46YWZ0ZXIsIC5nZW5lcmljLXNpZGViYXJfX2xpc3QgbGkuY3VycmVudF9wYWdlX3BhcmVudC5wYWdlX2l0ZW1faGFzX2NoaWxkcmVuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9oaWRlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgIGhlaWdodDogNDRweDsgfVxuICAgIC5nZW5lcmljLXNpZGViYXJfX2xpc3QgbGkuY3VycmVudF9wYWdlX2l0ZW0ucGFnZV9pdGVtX2hhc19jaGlsZHJlbiB1bCwgLmdlbmVyaWMtc2lkZWJhcl9fbGlzdCBsaS5jdXJyZW50X3BhZ2VfcGFyZW50LnBhZ2VfaXRlbV9oYXNfY2hpbGRyZW4gdWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZ2VuZXJpYy1zaWRlYmFyX19saXN0IGxpOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC1ibHVlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAyMHB4OyB9XG4gICAgLmdlbmVyaWMtc2lkZWJhcl9fbGlzdCBsaSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuZ2VuZXJpYy1zaWRlYmFyX19saXN0IGxpIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5nZW5lcmljLXNpZGViYXJfX2xpc3QgbGkgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfVxuICAgICAgLmdlbmVyaWMtc2lkZWJhcl9fbGlzdCBsaSB1bCBsaSBhIHtcbiAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICAgIC5nZW5lcmljLXNpZGViYXJfX2xpc3QgbGkgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gPiBhIHtcbiAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5nb29nbGUtYWQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M5Y2FjYjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjOWNhY2I7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDE0cHg7XG4gIHBhZGRpbmc6IDE0cHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ29vZ2xlLWFkIHtcbiAgICAgIG1hcmdpbjogMjhweDtcbiAgICAgIHBhZGRpbmc6IDI4cHggMDsgfSB9XG4gIC5nb29nbGUtYWQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjOTU5NTk1O1xuICAgIGNvbnRlbnQ6ICdQYXJ0bmVyIEFkdmVydGlzZW1lbnQnO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQgKyAuZ29vZ2xlLWFkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMTAwcHg7IH0gfVxuXG4jbWVtYmVyc2hpcHMgLmdvb2dsZS1hZCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgI21lbWJlcnNoaXBzIC5nb29nbGUtYWQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZmZmOyB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzIC5nb29nbGUtYWQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDsgfVxuXG4uYXJ0aWNsZV9fY29udGVudCAuZ29vZ2xlLWFkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlX19jb250ZW50IC5nb29nbGUtYWQge1xuICAgICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtNTBweDsgfSB9XG5cbi5iZW5lZml0c19fbGlzdCAuZ29vZ2xlLWFkIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbnRlbnRodWItY2F0ZWdvcmllcyAuYWQge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuY29udGVudGh1Yi1jYXRlZ29yaWVzIC5hZCAuY29udGVudGh1Yi1jYXRlZ29yaWVzX19pbm5lciAuZ29vZ2xlLWFkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmNvbnRlbnRodWItZmVhdHVyZWRfX2lubmVyIC5nb29nbGUtYWQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5ncmlkLWhlbHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5ncmlkLWhlbHBlcl9faW5uZXIge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5ncmlkLWhlbHBlcl9faW5uZXI6OmJlZm9yZSwgLmdyaWQtaGVscGVyX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAuZ3JpZC1oZWxwZXJfX2lubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAuZ3JpZC1oZWxwZXJfX2NvbCB7XG4gICAgd2lkdGg6IDguMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZC1oZWxwZXJfX2NvbCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgICAuZ3JpZC1oZWxwZXJfX2NvbCwgLmdyaWQtaGVscGVyX19jb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmdyaWQtaGVscGVyX19jb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAuZ3JpZC1oZWxwZXJfX2NvbCBwIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMGY7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBvcGFjaXR5OiAuNDtcbiAgICAgIHBhZGRpbmc6IDA7IH1cblxuLmhlYWRlciB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiB0b3AgLjRzO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwMDsgfVxuICAuaGVhZGVyLmhpZGRlbiB7XG4gICAgdG9wOiAtNjBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaGVhZGVyLmhpZGRlbiB7XG4gICAgICAgIHRvcDogLTcycHg7IH0gfVxuICAgIC5oZWFkZXIuaGlkZGVuIC5uYXYge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uaGVybyB7XG4gIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4OyB9XG4gIC5oZXJvOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjg4KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICBib3R0b206IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAuODtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlcm8ge1xuICAgICAgbWluLWhlaWdodDogMzAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDQ1MHB4OyB9IH1cblxuLmhvbWUtdjItaGVyby5oZXJvOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvLS1tZW51IHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDsgfSB9XG5cbi5oZXJvX19jb250ZW50IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlcm9fX2NvbnRlbnQge1xuICAgICAgbWluLWhlaWdodDogNTMwcHg7IH0gfVxuICAuaGVyb19fY29udGVudCBoMSB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgbWF4LXdpZHRoOiA1MDBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaGVyb19fY29udGVudCBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlcm9fX2NvbnRlbnQgaDEge1xuICAgICAgICBmb250LXNpemU6IDIuODc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMy4yNXJlbTsgfSB9XG4gIC5oZXJvX19jb250ZW50IC5oZXJvX19zdWJ0aXRsZSB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDsgfVxuICAuaGVyb19fY29udGVudCAuaGVyb19fbGluayB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4OyB9XG5cbi5ob21lLXYyLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmhvbWUtdjItaGVybyAuaGVyb19fY29udGVudCBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXgtd2lkdGg6IDYwMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lLXYyLWhlcm8gLmhlcm9fX2NvbnRlbnQgaDEge1xuICAgICAgICBmb250LXNpemU6IDMuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMy43NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ob21lLXYyLWhlcm8gLmhlcm9fX2NvbnRlbnQgaDEge1xuICAgICAgICBmb250LXNpemU6IDMuNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0LjM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgICAgLmhvbWUtdjItaGVybyAuaGVyb19fY29udGVudCBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNC4zNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cbiAgICAuaG9tZS12Mi1oZXJvIC5oZXJvX19jb250ZW50IGgxIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmhvbWUtdjItaGVybyAuaGVyb19fc3VidGl0bGUge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lLXYyLWhlcm8gLmhlcm9fX3N1YnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjg3NXJlbTtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhvbWUtdjItaGVybyAuaGVyb19fc3VidGl0bGUge1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ob21lLXYyLWhlcm8gLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ob21lLXYyLWhlcm8gLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfVxuICAuaG9tZS12Mi1oZXJvIC5mdWxsLWJnIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogLTEwMDsgfVxuICAgIC5ob21lLXYyLWhlcm8gLmZ1bGwtYmcgLnZpZGVvLWpzIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaG9tZS12Mi1oZXJvIC5mdWxsLWJnIC52aWRlby1qcyAudmpzLWNvbnRyb2wtYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5ob21lLXYyLWhlcm8gLmZ1bGwtYmcgLnZqcy10ZWNoIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5oZXJvLWltYWdlIHtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGVyby1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGVyby1kZXNrdG9wIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oZXJvLWRlc2t0b3Age1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uaGVyb19fY29udGVudC1pbm5lciB7XG4gIHBhZGRpbmc6IDQwcHggMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5oZXJvX19jb250ZW50LWlubmVyLCAuaGVyb19fY29udGVudC1pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuaGVyb19fY29udGVudC1pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmhlcm9fX2NvbnRlbnQtaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzljYWNiO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGhlaWdodDogMTUwcHg7XG4gIG1hcmdpbjogMjVweCBhdXRvIDA7XG4gIHdpZHRoOiAxNTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oZXJvX19jb250ZW50LWltYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH0gfVxuICAuaGVyb19fY29udGVudC1pbWFnZS5oZXJvX19jb250ZW50LWltYWdlLS1wYXJ0bmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4uaGVyb19fc3VidGl0bGUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgLmhlcm9fX3N1YnRpdGxlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmhlcm9fX3N1YnRpdGxlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cblxuLmhlcm9fX2ltYWdlIHtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuICAuaGVyb19faW1hZ2UuaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlcm9fX2ltYWdlIHtcbiAgICAgIGhlaWdodDogMzAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvX19pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDM1MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgIC5oZXJvX19pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDQ1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm9fX2ltYWdlLS1zcGxpdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNTAlO1xuICAgIHotaW5kZXg6IDE7IH0gfVxuXG5hLmhlcm8taW1hZ2UtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDsgfVxuXG4uc2xpY2stc2xpZGVyIHtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwOyB9XG4gIC5zbGljay10cmFjazpiZWZvcmUsIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG4uc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2Nyb2xsYm94X19jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zY3JvbGxib3hfX2Nhcm91c2VsOjpiZWZvcmUsIC5zY3JvbGxib3hfX2Nhcm91c2VsOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5zY3JvbGxib3hfX2Nhcm91c2VsOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNjcm9sbGJveF9fY2Fyb3VzZWwgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zY3JvbGxib3hfX2Nhcm91c2VsIC5zbGljay1jdXJyZW50IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNjcm9sbGJveF9fY2Fyb3VzZWwuc2xpY2staW5pdGlhbGl6ZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5ob21lLXYyLWNhbGxvdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmOWZhO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAyMHB4IDA7IH1cbiAgLmhvbWUtdjItY2FsbG91dCBhLmhlcm8taW1hZ2UtbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDsgfVxuICAuaG9tZS12Mi1jYWxsb3V0OjpiZWZvcmUsIC5ob21lLXYyLWNhbGxvdXQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmhvbWUtdjItY2FsbG91dDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWUtdjItY2FsbG91dCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7IH0gfVxuXG4uaG9tZS12Mi1jYWxsb3V0X19pbm5lciB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ob21lLXYyLWNhbGxvdXRfX2lubmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWUtdjItY2FsbG91dF9faW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ob21lLXYyLWNhbGxvdXRfX2lubmVyLCAuaG9tZS12Mi1jYWxsb3V0X19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuaG9tZS12Mi1jYWxsb3V0X19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmhvbWUtdjItY2FsbG91dF9faW5uZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMS42NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaG9tZS12Mi1jYWxsb3V0X19pbm5lciBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG4gIC5ob21lLXYyLWNhbGxvdXRfX2lubmVyIHAge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDMwcHg7XG4gICAgbWF4LXdpZHRoOiA3NTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaG9tZS12Mi1jYWxsb3V0X19pbm5lciBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ob21lLXYyLWNhbGxvdXRfX2lubmVyIHAge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMnJlbTsgfSB9XG4gICAgLmhvbWUtdjItY2FsbG91dF9faW5uZXIgcCBhIHtcbiAgICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuaG9tZS12Mi1jYWxsb3V0X19pbm5lciBwIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlczo6YmVmb3JlLCAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlczo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnOyB9XG5cbi5ob21lLXYyLWNhbGxvdXRfX2FydGljbGVzOjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGVzIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cblxuLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlIHtcbiAgICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgICAgd2lkdGg6IDMzLjMzJTsgfVxuICAgICAgLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG4gICAgICAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbi5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS1pbWFnZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAtMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIC0ycHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0ycHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuNSU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS1tZXRhIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtbWV0YSAuaGlnaGxpZ2h0LWN0YSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBib3JkZXItY29sb3I6ICMwMDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbjogMjVweCBhdXRvIDIwcHg7XG4gICAgbWF4LXdpZHRoOiBmaXQtY29udGVudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlLW1ldGEgLmhpZ2hsaWdodC1jdGEucmVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA4MGQ7XG4gICAgICBib3JkZXItY29sb3I6ICNmZjA4MGQ7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtbWV0YSAuaGlnaGxpZ2h0LWN0YTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZmYwODBkO1xuICAgICAgY29sb3I6ICNmZjA4MGQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS1tZXRhIC5oaWdobGlnaHQtY3RhLmhpZ2hsaWdodC1jdGEtLWhhbGYge1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTsgfSB9XG4gIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtbWV0YSAuc2Vjb25kYXJ5LWN0YSB7XG4gICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtbWV0YSAuc2Vjb25kYXJ5LWN0YTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjMzMzO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9sZFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDZweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA5MCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIG1hcmdpbjogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS10aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtdGl0bGUgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS10aXRsZSBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlLXRpdGxlIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS1kZXNjIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIG1hcmdpbjogMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlLWRlc2Mge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfSB9XG5cbi5ob21lLXYyLWNvbnRlbnQtYmxvY2sge1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogNDVweCAyMHB4IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuaG9tZS12Mi1jb250ZW50LWJsb2NrOjpiZWZvcmUsIC5ob21lLXYyLWNvbnRlbnQtYmxvY2s6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmhvbWUtdjItY29udGVudC1ibG9jazo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWUtdjItY29udGVudC1ibG9jayB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDIwcHggNjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhvbWUtdjItY29udGVudC1ibG9jayB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDIwcHggOTBweDsgfSB9XG4gIC5ob21lLXYyLWNvbnRlbnQtYmxvY2sgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgbWFyZ2luOiAyMHB4IGF1dG8gMzBweDtcbiAgICBtYXgtd2lkdGg6IDc1MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lLXYyLWNvbnRlbnQtYmxvY2sgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjgxMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaG9tZS12Mi1jb250ZW50LWJsb2NrIHAge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMnJlbTsgfSB9XG4gICAgLmhvbWUtdjItY29udGVudC1ibG9jayBwIGEge1xuICAgICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5ob21lLXYyLWNvbnRlbnQtYmxvY2sgcCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmhvbWUtdjItY29udGVudC1ibG9jayBoMiB7XG4gICAgZm9udC1zaXplOiAxLjY1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lLXYyLWNvbnRlbnQtYmxvY2sgaDIge1xuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07IH0gfVxuICAuaG9tZS12Mi1jb250ZW50LWJsb2NrIC5oaWdobGlnaHQtY3RhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmMDgwZDtcbiAgICBjb2xvcjogI2ZmMDgwZDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmhvbWUtdjItY29udGVudC1ibG9jayAuaGlnaGxpZ2h0LWN0YTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwODBkO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZmYwODBkO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhvbWUtdjItY29udGVudC1ibG9jayAuaGlnaGxpZ2h0LWN0YSB7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAgIC5ob21lLXYyLWNvbnRlbnQtYmxvY2sgLmhpZ2hsaWdodC1jdGEuaGlnaGxpZ2h0LWN0YS0taGFsZiB7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgbWF4LXdpZHRoOiA2MCU7IH0gfVxuICAuaG9tZS12Mi1jb250ZW50LWJsb2NrIC5hcHAtc3RvcmUtYnV0dG9ucyBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lLXYyLWNvbnRlbnQtYmxvY2sgLmFwcC1zdG9yZS1idXR0b25zIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAuaG9tZS12Mi1jb250ZW50LWJsb2NrIC5hcHAtc3RvcmUtYnV0dG9ucyBpbWcge1xuICAgIHdpZHRoOiAxODBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaG9tZS12Mi1jb250ZW50LWJsb2NrIC5hcHAtc3RvcmUtYnV0dG9ucyBpbWcge1xuICAgICAgICB3aWR0aDogMjAwcHg7IH1cbiAgICAgICAgLmhvbWUtdjItY29udGVudC1ibG9jayAuYXBwLXN0b3JlLWJ1dHRvbnMgaW1nOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDsgfSB9XG5cbi5ob21lLXYyLWxhdGVzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y5ZmE7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaG9tZS12Mi1sYXRlc3Qge1xuICAgICAgcGFkZGluZzogNDBweCAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaG9tZS12Mi1sYXRlc3Qge1xuICAgICAgcGFkZGluZzogNTBweCAwOyB9IH1cbiAgLmhvbWUtdjItbGF0ZXN0IC5wb3N0LWxpc3Qge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cblxuLmhvbWUtdjItbGF0ZXN0X19pbm5lciB7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaG9tZS12Mi1sYXRlc3RfX2lubmVyIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaG9tZS12Mi1sYXRlc3RfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaG9tZS12Mi1sYXRlc3RfX2lubmVyLCAuaG9tZS12Mi1sYXRlc3RfX2lubmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5ob21lLXYyLWxhdGVzdF9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5ob21lLXYyLWxhdGVzdF9faW5uZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMS42NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmhvbWUtdjItbGF0ZXN0X19pbm5lciBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH0gfVxuICAuaG9tZS12Mi1sYXRlc3RfX2lubmVyIC5wb3N0LWxpc3RfX2FydGljbGUtY2F0ZWdvcnkge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4ubGVzc29uLWxldmVscyB7XG4gIGJhY2tncm91bmQ6ICNmMWYyZjQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDMwcHggMCA0MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxlc3Nvbi1sZXZlbHMge1xuICAgICAgcGFkZGluZzogNTBweCAxNHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGVzc29uLWxldmVscyB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDE0cHggNTBweDsgfSB9XG4gIC5sZXNzb24tbGV2ZWxzIGgyIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxlc3Nvbi1sZXZlbHMgaDIge1xuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTsgfSB9XG5cbi5sZXNzb24tbGV2ZWxzX19pbnRybyB7XG4gIG1hcmdpbjogYXV0bztcbiAgbWF4LXdpZHRoOiA5MDBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxlc3Nvbi1sZXZlbHNfX2ludHJvLmxlc3Nvbi1sZXZlbHNfX2ludHJvLS1jZW50cmUge1xuICAgIG1heC13aWR0aDogNTcwcHg7IH1cbiAgLmxlc3Nvbi1sZXZlbHNfX2ludHJvIHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgbWFyZ2luOiAxNXB4IDAgMjBweDtcbiAgICBwYWRkaW5nOiAwIDMwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxlc3Nvbi1sZXZlbHNfX2ludHJvIHAge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW46IDIwcHggMCAyNXB4O1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxlc3Nvbi1sZXZlbHNfX2ludHJvIHAge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICBtYXJnaW46IDIwcHggMCAzMHB4OyB9IH1cbiAgICAubGVzc29uLWxldmVsc19faW50cm8gcCBhIHtcbiAgICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5sZXNzb24tbGV2ZWxzX19saXN0IHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxlc3Nvbi1sZXZlbHNfX2xpc3Q6OmJlZm9yZSwgLmxlc3Nvbi1sZXZlbHNfX2xpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxlc3Nvbi1sZXZlbHNfX2xpc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ubGVzc29uLWxldmVsc19fbGV2ZWwge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXg6IDAgMCAyODBweDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDAgMTJweCAyNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5sZXNzb24tbGV2ZWxzX19pbWFnZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogMTU1cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5sZXNzb24tbGV2ZWxzX19jb250ZW50IHtcbiAgcGFkZGluZzogMjBweDsgfVxuXG4ubGVzc29uLWxldmVsc19fdGl0bGUge1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmxlc3Nvbi1sZXZlbHNfX2Rlc2Mge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzdlODc4NztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBtaW4taGVpZ2h0OiA4OXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxMnB4IDAgMDsgfVxuXG4uY3RhLW1vZHVsZSBhLmN0YS1tb2R1bGVfX3NlY29uZGFyeSwgLmNlbnRyZS1pbmZvX19saW5rLCAuY29udGFjdC1tYWluX19sb2dnZWRpbi1saW5rLCAuY29udGFjdC0tZmVlZGJhY2sgLmNvbnRhY3QtbWFpbl9fbG9nZ2VkaW4tbGluaywgLmZyZWVzd2ltIC5jb250YWN0LW1haW5fX2xvZ2dlZGluLWxpbmssIC5nZW5lcmljLW1haW5fX2xpbmssIC5sZXNzb24tbGV2ZWxzX19saW5rLCAubGluay0tZXh0ZXJuYWwsIC5raW9zay1tZW51X19saW5rIHtcbiAgY29sb3I6ICMzZDk2Y2E7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuY3RhLW1vZHVsZSBhLmN0YS1tb2R1bGVfX3NlY29uZGFyeTpob3ZlciwgLmNlbnRyZS1pbmZvX19saW5rOmhvdmVyLCAuY29udGFjdC1tYWluX19sb2dnZWRpbi1saW5rOmhvdmVyLCAuZ2VuZXJpYy1tYWluX19saW5rOmhvdmVyLCAubGVzc29uLWxldmVsc19fbGluazpob3ZlciwgLmxpbmstLWV4dGVybmFsOmhvdmVyLCAua2lvc2stbWVudV9fbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmxpbmstLWV4dGVybmFsIHtcbiAgY29sb3I6ICMzZDk2Y2E7XG4gIHBhZGRpbmctcmlnaHQ6IDI3cHg7IH1cbiAgLmxpbmstLWV4dGVybmFsOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXh0ZXJuYWwtbGluay5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzMnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyMHB4OyB9XG5cbi5sb2FkZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDsgfVxuXG4ubG9hZGVyX19zcGlubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDgwcHg7XG4gIGhlaWdodDogMWVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDEwMHB4IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDFlbTsgfVxuICAubG9hZGVyX19zcGlubmVyLmxvYWRlcl9fc3Bpbm5lci0tc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAubG9hZGVyX19zcGlubmVyIGxpIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAuMmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogLjJlbTsgfVxuICAgIC5sb2FkZXJfX3NwaW5uZXIgbGk6bnRoLWNoaWxkKDEpIHtcbiAgICAgIGFuaW1hdGlvbjogcm90YSAxLjEzcyBsaW5lYXIgaW5maW5pdGUsIG9wYSAzLjY3cyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmYwODBkO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luOiAwIDAgMCAtLjFlbTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAyNTAlOyB9XG4gICAgLmxvYWRlcl9fc3Bpbm5lciBsaTpudGgtY2hpbGQoMikge1xuICAgICAgYW5pbWF0aW9uOiByb3RhIDEuODZzIGxpbmVhciBpbmZpbml0ZSwgb3BhIDQuMjlzIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICBtYXJnaW46IC0uMWVtIDAgMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAtMTUwJSA1MCU7IH1cbiAgICAubG9hZGVyX19zcGlubmVyIGxpOm50aC1jaGlsZCgzKSB7XG4gICAgICBhbmltYXRpb246IHJvdGEgMS40NXMgbGluZWFyIGluZmluaXRlLCBvcGEgNS4xMnMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlO1xuICAgICAgYmFja2dyb3VuZDogIzY2NjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbjogMCAwIDAgLS4xZW07XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgLTE1MCU7IH1cbiAgICAubG9hZGVyX19zcGlubmVyIGxpOm50aC1jaGlsZCg0KSB7XG4gICAgICBhbmltYXRpb246IHJvdGEgMS43MnMgbGluZWFyIGluZmluaXRlLCBvcGEgNS4yNXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlO1xuICAgICAgYmFja2dyb3VuZDogI2FlNGJkMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IC0uMWVtIDAgMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMjUwJSA1MCU7IH1cblxuQGtleWZyYW1lcyByb3RhIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG9wYSB7XG4gIDEyJSB7XG4gICAgb3BhY2l0eTogLjg7IH1cbiAgMTkuNSUge1xuICAgIG9wYWNpdHk6IC44ODsgfVxuICAzNy4yJSB7XG4gICAgb3BhY2l0eTogLjY0OyB9XG4gIDQwLjUlIHtcbiAgICBvcGFjaXR5OiAuNTI7IH1cbiAgNTIuNyUge1xuICAgIG9wYWNpdHk6IC42OTsgfVxuICA2MC4yJSB7XG4gICAgb3BhY2l0eTogLjY7IH1cbiAgNjYuNiUge1xuICAgIG9wYWNpdHk6IC41MjsgfVxuICA3MCUge1xuICAgIG9wYWNpdHk6IC42MzsgfVxuICA3OS45JSB7XG4gICAgb3BhY2l0eTogLjY7IH1cbiAgODQuMiUge1xuICAgIG9wYWNpdHk6IC43NTsgfVxuICA5MSUge1xuICAgIG9wYWNpdHk6IC44NzsgfSB9XG5cbi5sb2NhdGlvbi1maW5kZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxvY2F0aW9uLWZpbmRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubG9jYXRpb24tZmluZGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4OyB9IH1cbiAgLmxvY2F0aW9uLWZpbmRlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2U0ZTRlNTtcbiAgICBib3R0b206IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxvY2F0aW9uLWZpbmRlcjphZnRlciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzNnB4KTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxvY2F0aW9uLWZpbmRlciAuaW5wdXRfX3dyYXBwZXIgLmZvcm1fX3ZhbGlkaXR5LWljb24ge1xuICAgICAgbGVmdDogNTE1cHg7IH1cbiAgICAubG9jYXRpb24tZmluZGVyIC5pbnB1dF9fd3JhcHBlciBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgbWF4LXdpZHRoOiA1MDBweDsgfSB9XG4gIC5sb2NhdGlvbi1maW5kZXIgLmlucHV0X193cmFwcGVyIC5sb2FkZXIge1xuICAgIGxlZnQ6IDg5JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0cHg7IH1cbiAgICAubG9jYXRpb24tZmluZGVyIC5pbnB1dF9fd3JhcHBlciAubG9hZGVyIC5sb2FkZXJfX3NwaW5uZXIge1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjlmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubG9jYXRpb24tZmluZGVyIC5pbnB1dF9fd3JhcHBlciAubG9hZGVyIHtcbiAgICAgICAgbGVmdDogNTEwcHg7XG4gICAgICAgIHRvcDogOHB4OyB9XG4gICAgICAgIC5sb2NhdGlvbi1maW5kZXIgLmlucHV0X193cmFwcGVyIC5sb2FkZXIgLmxvYWRlcl9fc3Bpbm5lciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sb2NhdGlvbi1maW5kZXIgLmlucHV0X193cmFwcGVyIC5sb2FkZXIge1xuICAgICAgICBsZWZ0OiA0MTBweDsgfSB9XG5cbi5sb2NhdGlvbi1maW5kZXJfX3RpdGxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmxvY2F0aW9uLWZpbmRlcl9fdGl0bGU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9leHBhbmQuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMzVweDsgfVxuICAubG9jYXRpb24tZmluZGVyX190aXRsZS5leHBhbmRlZDphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2hpZGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfVxuICAubG9jYXRpb24tZmluZGVyX190aXRsZS52aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sb2NhdGlvbi1maW5kZXJfX3RpdGxlLnZpc2libGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5sb2NhdGlvbi1maW5kZXJfX2ZpbHRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWF4LXdpZHRoOiA0MjVweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxvY2F0aW9uLWZpbmRlcl9fZmlsdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9IH1cbiAgLmxvY2F0aW9uLWZpbmRlcl9fZmlsdGVyIHNwYW46YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc2hvdy1tb3JlLXJlZC5zdmdcIikgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiAzMHB4OyB9XG4gIC5sb2NhdGlvbi1maW5kZXJfX2ZpbHRlci5hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjOTM5NTk4OyB9XG4gICAgLmxvY2F0aW9uLWZpbmRlcl9fZmlsdGVyLmFjdGl2ZSBzcGFuOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI4cHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgLmxvY2F0aW9uLWZpbmRlcl9fZmlsdGVyLmFjdGl2ZSAubG9jYXRpb24tZmluZGVyX19idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5sb2NhdGlvbi1maW5kZXJfX2ZpbHRlci5hY3RpdmUgLmlucHV0X19maWx0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzVweCk7IH1cblxuLmlucHV0X19maWx0ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDIycHg7XG4gIG1hcmdpbi1sZWZ0OiAzNXB4OyB9XG5cbi5sb2NhdGlvbi1maW5kZXJfX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjZmYwODBkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sb2NhdGlvbi1maW5kZXJfX2J1dHRvbiB7XG4gICAgICBoZWlnaHQ6IDIycHg7IH0gfVxuXG4ubG9jYXRpb24tZmluZGVyX19idXR0b24tbG9jYXRpb24ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzNkOTZjYTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubG9jYXRpb24tZmluZGVyX19idXR0b24tbG9jYXRpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH0gfVxuXG4ubG9jYXRpb24tZmluZGVyX19idXR0b24tLWFjdGl2ZTpiZWZvcmUge1xuICBhbmltYXRpb246IHJvdGF0aW5nIC41cyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLmxvY2F0aW9uLWZpbmRlcl9fYnV0dG9uLS1hY3RpdmUsXG4ubG9jYXRpb24tZmluZGVyX19idXR0b24tLWNvbXBsZXRlIHtcbiAgY29sb3I6ICM5Mzk1OTg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0aW5nIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4ubWFwLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFwLXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9IH1cblxuLm1hcC10b2dnbGVfX3RleHQge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCA1cHggMCAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1hcC10b2dnbGVfX3RleHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbG9jYXRpb24ucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgd2lkdGg6IDI1cHg7IH1cblxuLm1hcC10b2dnbGVfX3N3aXRjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiA2NHB4OyB9XG4gIC5tYXAtdG9nZ2xlX19zd2l0Y2ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tYXAtdG9nZ2xlX19zd2l0Y2ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2I5YzcwMDsgfVxuICAgICAgLm1hcC10b2dnbGVfX3N3aXRjaCBpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzJweCk7IH1cbiAgICAgIC5tYXAtdG9nZ2xlX19zd2l0Y2ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgY29udGVudDogJ09uJztcbiAgICAgICAgbGVmdDogN3B4OyB9XG4gICAgLm1hcC10b2dnbGVfX3N3aXRjaCBpbnB1dFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM2NjY7XG4gICAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zaXRpb246IC40czsgfVxuICAgICAgLm1hcC10b2dnbGVfX3N3aXRjaCBpbnB1dFt0eXBlPSdjaGVja2JveCddICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzkzOTU5ODtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3R0b206IDRweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIHRyYW5zaXRpb246IC40cztcbiAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIC5tYXAtdG9nZ2xlX19zd2l0Y2ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsOmFmdGVyIHtcbiAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIGNvbnRlbnQ6ICdPZmYnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDA7IH1cblxuLm1vZGFsLFxuLm1vZGFsX19iZyB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwMDsgfVxuICAubW9kYWw6OmJlZm9yZSwgLm1vZGFsOjphZnRlcixcbiAgLm1vZGFsX19iZzo6YmVmb3JlLFxuICAubW9kYWxfX2JnOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5tb2RhbDo6YWZ0ZXIsXG4gIC5tb2RhbF9fYmc6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ubW9kYWxfX2JnIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG5cbi5tb2RhbF9fd3JhcHBlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgY29sb3I6ICMzMzM7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXgtaGVpZ2h0OiA3NSU7XG4gIG1heC13aWR0aDogNjgwcHg7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDogOTAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1vZGFsX193cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMzBweDsgfSB9XG5cbi5tb2RhbF9fY2xvc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogcmlnaHQ7XG4gIGhlaWdodDogMTZweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogLTZweDtcbiAgdG9wOiAtMTZweDtcbiAgd2lkdGg6IDE2cHg7IH1cbiAgLm1vZGFsX19jbG9zZTpob3ZlciwgLm1vZGFsX19jbG9zZTpmb2N1cyB7XG4gICAgY29sb3I6ICMzMzM7IH1cbiAgLm1vZGFsX19jbG9zZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jbG9zZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC40cztcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgd2lkdGg6IDE2cHg7IH1cblxuLm1vZGFsX19oZWFkZXI6OmJlZm9yZSwgLm1vZGFsX19oZWFkZXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJzsgfVxuXG4ubW9kYWxfX2hlYWRlcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4ubW9kYWxfX2hlYWRlciBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLm1vZGFsX19oZWFkZXIgcCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIG1hcmdpbjogMTBweCAwIDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubW9kYWxfX2hlYWRlciBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH0gfVxuICAubW9kYWxfX2hlYWRlciBwIGEge1xuICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5tb2RhbF9faGVhZGVyIHAgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubW9kYWxfX2NvbnRlbnQ6OmJlZm9yZSwgLm1vZGFsX19jb250ZW50OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7IH1cblxuLm1vZGFsX19jb250ZW50OjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5tb2RhbF9fY29udGVudCBwIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNjY2O1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5tb2RhbF9fY29udGVudCB1bCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgMCAxNXB4O1xuICBwYWRkaW5nOiAwIDAgMjBweDsgfVxuICAubW9kYWxfX2NvbnRlbnQgdWwgbGkge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgbWFyZ2luOiA1cHggMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm1vZGFsX19jb250ZW50IHVsIGxpOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmYwODBkO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDZweDtcbiAgICAgIHdpZHRoOiA2cHg7IH1cbiAgICAubW9kYWxfX2NvbnRlbnQgdWwgbGkgc3BhbiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4ubW9kYWxfX3RpbWVzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4ubW9kYWxfX2RheSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY2NjtcbiAgbWFyZ2luOiAycHggMDsgfVxuICAubW9kYWxfX2RheSBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTUwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tb2RhbF9fZGF5IHNwYW4ge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjAwcHgpOyB9IH1cbiAgICAubW9kYWxfX2RheSBzcGFuLm1vZGFsX19kYXktbmFtZSB7XG4gICAgICB3aWR0aDogMTAwcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5tb2RhbF9fZGF5IHNwYW4ubW9kYWxfX2RheS1uYW1lIHtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7IH0gfVxuXG4ubW9kYWxfX2xpbmsge1xuICBjb2xvcjogIzNkOTZjYTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1vZGFsX19saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cblxuLm1vZGFsX19saW5rLS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZjA4MGQ7XG4gIGNvbG9yOiAjZmYwODBkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbjogNXB4IDAgMTBweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tb2RhbF9fbGluay0tYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwODBkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAubW9kYWxfX2xpbmstLWJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1vZGFsX19saW5rLS1idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIHBhZGRpbmc6IDZweCAyMHB4O1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuXG4ubW9kYWxfX3ByaWNlLWxpc3Qge1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuXG4ubW9kYWxfX3ByaWNlLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubW9kYWxfX3ByaWNlLWhlYWRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH0gfVxuICAubW9kYWxfX3ByaWNlLWhlYWRlci5tb2RhbF9fcHJpY2UtaGVhZGVyLS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubW9kYWxfX3ByaWNlLWhlYWRlci5tb2RhbF9fcHJpY2UtaGVhZGVyLS1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLm1vZGFsX19wcmljZS1oZWFkZXIgLm1vZGFsX19wcmljZS1jZWxsIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzY2NjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmc6IDEwcHggMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubW9kYWxfX3ByaWNlLWhlYWRlciAubW9kYWxfX3ByaWNlLWNlbGwge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAwOyB9IH1cblxuLm1vZGFsX19wcmljZS1yb3cge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1vZGFsX19wcmljZS1yb3cge1xuICAgICAgZGlzcGxheTogdGFibGUtcm93OyB9IH1cbiAgLm1vZGFsX19wcmljZS1yb3cubW9kYWxfX3ByaWNlLXJvdy0tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1vZGFsX19wcmljZS1yb3cubW9kYWxfX3ByaWNlLXJvdy0tbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5tb2RhbF9fcHJpY2UtY2VsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4xODc1cmVtO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzljYWNiO1xuICBjb2xvcjogIzY2NjtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDE2JTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tb2RhbF9fcHJpY2UtY2VsbCB7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZzogMjBweCAxMHB4IDIwcHggMDsgfSB9XG4gIC5tb2RhbF9fcHJpY2UtY2VsbC5tb2RhbF9fcHJpY2UtY2VsbC0tZmlyc3Qge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgd2lkdGg6IDEyJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubW9kYWxfX3ByaWNlLWNlbGwubW9kYWxfX3ByaWNlLWNlbGwtLWZpcnN0IHtcbiAgICAgICAgd2lkdGg6IDE3JTsgfSB9XG5cbi5tb2RhbF9fdGVybXMgYSB7XG4gIGNvbG9yOiAjM2Q5NmNhO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLm1vZGFsX190ZXJtcyBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAyMHB4IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVtYmVyc2hpcC1iZW5lZml0cyB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDAgMzBweDsgfSB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19pbm5lciB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2lubmVyOjpiZWZvcmUsIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pbm5lcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubWVtYmVyc2hpcC1iZW5lZml0c19faW5uZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pbm5lciB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWVtYmVyc2hpcC1iZW5lZml0c19faW5uZXIsIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAubWVtYmVyc2hpcC1iZW5lZml0c19faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pbm5lciBoMiB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pbm5lciBoMjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzljYWNiO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2lubmVyIGgyOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogOTAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2NvbHVtbiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19jb2x1bW4ge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVtYmVyc2hpcC1iZW5lZml0c19fY29sdW1uLCAubWVtYmVyc2hpcC1iZW5lZml0c19fY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0c19fY29sdW1uIC5wb3N0LWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19jb2x1bW4gLnBvc3QtbGlzdF9fYXJ0aWNsZSB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVtYmVyc2hpcC1iZW5lZml0c19fY29sdW1uIC5wb3N0LWxpc3RfX2FydGljbGUge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19jb2x1bW4gLnBvc3QtbGlzdF9fYXJ0aWNsZTpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2NvbHVtbiAucG9zdC1saXN0X19hcnRpY2xlOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2xpc3Qge1xuICBtYXJnaW46IDIwcHggMDtcbiAgcGFkZGluZzogMDsgfVxuICAubWVtYmVyc2hpcC1iZW5lZml0c19fbGlzdCBsaSB7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDE1cHggMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA5MCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2xpc3QgbGkge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7IH0gfVxuICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19saXN0IGxpOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hlY2suc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyN3B4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDE1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19saXN0IGxpOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9IH1cblxuLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2J1dHRvbi13cmFwcGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2J1dHRvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2J1dHRvbi13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWVtYmVyc2hpcC1iZW5lZml0c19fYnV0dG9uLXdyYXBwZXIsIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19idXR0b24td3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAubWVtYmVyc2hpcC1iZW5lZml0c19fYnV0dG9uLXdyYXBwZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDMwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0c19fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNjY2O1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX3RleHQge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMTBweDsgfSB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19wYXJ0bmVyLWxpc3Qge1xuICBtYXJnaW46IDMwcHggMCAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19wYXJ0bmVyLWxpc3QgLmxvYWRlciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0c19faXRlbSB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlNGU0ZTU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMjVweDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pdGVtOjpiZWZvcmUsIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pdGVtOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19pdGVtOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVtYmVyc2hpcC1iZW5lZml0c19faXRlbSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19vZmZlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2ZmMDgwZCwgI2FlNGJkMCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgbGVmdDogLTEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0b3A6IC0yMHB4O1xuICB3aWR0aDogNDBweDtcbiAgei1pbmRleDogMTAwOyB9XG4gIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19vZmZlciBzcGFuIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMC44NzVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLm1lbWJlcnNoaXAtYmVuZWZpdHNfX3RodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlNGU0ZTU7XG4gIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tZW1iZXJzaGlwLWJlbmVmaXRzX190aHVtYiBpbWcge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXgtaGVpZ2h0OiAxNTBweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX190aHVtYiB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgbWluLWhlaWdodDogMTMwcHg7XG4gICAgICB3aWR0aDogMTUwcHg7IH1cbiAgICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX190aHVtYiBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMzBweDsgfSB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19kZXRhaWxzIHtcbiAgcGFkZGluZzogMTJweCAxMnB4IDI0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJlbmVmaXRzX19kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmc6IDI0cHggMjRweCAxNHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1MHB4KTsgfSB9XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19uYW1lIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtYmVuZWZpdHNfX25hbWUge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNnB4OyB9IH1cblxuLm1lbWJlcnNoaXAtYmVuZWZpdHNfX2Rlc2NyaXB0aW9uIHtcbiAgY29sb3I6ICM1YzVjNWM7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgaHlwaGVuczogYXV0bztcbiAgbWFyZ2luLXRvcDogNXB4O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVtYmVyc2hpcC1iZW5lZml0c19fZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfSB9XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmOWZhO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAzMHB4IDAgNDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXMge1xuICAgICAgcGFkZGluZzogNTBweCAxNHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVtYmVyc2hpcC1idW5kbGVzIHtcbiAgICAgIHBhZGRpbmc6IDYwcHggMTRweCA3MHB4OyB9IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlcyBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTsgfVxuICAubWVtYmVyc2hpcC1idW5kbGVzIGgzIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0uMDNlbTtcbiAgICBsaW5lLWhlaWdodDogMi4yNXJlbTsgfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX19pbnRybyB7XG4gIG1hcmdpbjogYXV0bztcbiAgbWF4LXdpZHRoOiA5MDBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19faW50cm8ubWVtYmVyc2hpcC1idW5kbGVzX19pbnRyby0tY2VudHJlIHtcbiAgICBtYXgtd2lkdGg6IDU3MHB4OyB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX2ludHJvIHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luOiAxNXB4IDAgMjBweDtcbiAgICBwYWRkaW5nOiAwIDMwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1lbWJlcnNoaXAtYnVuZGxlc19faW50cm8gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDI1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWVtYmVyc2hpcC1idW5kbGVzX19pbnRybyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMzBweDsgfSB9XG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19faW50cm8gcCBhIHtcbiAgICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fd3JhcHBlcjo6YmVmb3JlLCAubWVtYmVyc2hpcC1idW5kbGVzX193cmFwcGVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3dyYXBwZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubWVtYmVyc2hpcC1idW5kbGVzX193cmFwcGVyLnNsaWNrLWluaXRpYWxpemVkIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3dyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogNzBweDsgfVxuICAgICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fd3JhcHBlci5zbGljay1pbml0aWFsaXplZCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAubWVtYmVyc2hpcC1idW5kbGVzX193cmFwcGVyIC5zbGljay1kb3RzIHtcbiAgICBtYXJnaW46IDE1cHggMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3dyYXBwZXIgLnNsaWNrLWRvdHMge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAwOyB9IH1cbiAgICAubWVtYmVyc2hpcC1idW5kbGVzX193cmFwcGVyIC5zbGljay1kb3RzIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgICAubWVtYmVyc2hpcC1idW5kbGVzX193cmFwcGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM2NjY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgbWFyZ2luOiA0cHg7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIHdpZHRoOiA4cHg7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAubWVtYmVyc2hpcC1idW5kbGVzX193cmFwcGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDhweDsgfSB9XG4gICAgICAubWVtYmVyc2hpcC1idW5kbGVzX193cmFwcGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgIHdpZHRoOiAxMXB4OyB9XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDIwcHggMDtcbiAgbWF4LXdpZHRoOiA0NTBweDtcbiAgb3V0bGluZTogMDtcbiAgcGFkZGluZzogMzBweCAyMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogODYlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZSB7XG4gICAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGU6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZSAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlIHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZSBwIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZSAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXRpdGxlIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlIGIsIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19faW5uZXIgYSB7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLXBvcHVsYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tcG9wdWxhcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDgwZDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29udGVudDogJ01vc3QgcG9wdWxhcic7XG4gICAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGhlaWdodDogODhweDtcbiAgICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gICAgcGFkZGluZzogMjRweCAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdG9wOiAtNDVweDtcbiAgICB3aWR0aDogODhweDtcbiAgICB6LWluZGV4OiA5OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLXBvcHVsYXI6YWZ0ZXIge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogMjdweCAwO1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB0b3A6IC03MHB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tcHJpb3JpdHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLXRvcDogMzVweDsgfVxuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLXByaW9yaXR5Lm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tY2VudHJlIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweCAzMHB4OyB9XG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tcHJpb3JpdHkgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZSB7XG4gICAgICBmb250LXNpemU6IDMuNzVyZW07IH1cbiAgICAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1wcmlvcml0eSBoNCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIHdpZHRoOiA4NSU7IH0gfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1wcmlvcml0eSAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlcyB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tcHJpb3JpdHkgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZXMgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS10aW1lIHtcbiAgICBtYXJnaW46IDEwcHggMCAxNXB4OyB9XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLXByaW9yaXR5IHAge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1zcGVjaWFsLW9mZmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1zcGVjaWFsLW9mZmVyLWhlYWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICNmZjA4MGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tc3BlY2lhbC1vZmZlci1ib2R5IHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI2MjYyNjsgfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1wYWlyLW1pZGRsZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tYnVuZGxlLWNlbnRyZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1idW5kbGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgcGFkZGluZzogNDBweCAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1idW5kbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLWJ1bmRsZSBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgbWFyZ2luLXRvcDogMTVweDsgfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlcyAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlcy1jb250YWluZXIge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlcyAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlcy1jb250YWluZXI6OmJlZm9yZSwgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZXMgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZXMtY29udGFpbmVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtcHJpY2VzIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtcHJpY2VzLWNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtcHJpY2VzIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtdGltZSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICBjb2xvcjogI2Y1ZjBjNjtcbiAgZmxleDogMSAwIGF1dG87XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZXMgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZSB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBtYXJnaW46IDEwcHggMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBtYXJnaW46IDIwcHggMDtcbiAgdHJhbnNpdGlvbjogZm9udC1zaXplIC40czsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtcHJpY2Uge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtcHJpY2Uge1xuICAgICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7IH0gfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtc2Vjb25kYXJ5TGluayB7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxNXB4IGF1dG8gMHB4O1xuICB3aWR0aDogOTVweDsgfVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX19idW5kbGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXgtd2lkdGg6IDg1MHB4O1xuICBwYWRkaW5nOiA4MHB4IDQwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fYnVuZGxlIHtcbiAgICAgIHBhZGRpbmc6IDEyMHB4IDIwcHggMDsgfSB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX2J1bmRsZS5tZW1iZXJzaGlwLWJ1bmRsZXNfX2J1bmRsZS0tY2VudHJlIHtcbiAgICBtYXgtd2lkdGg6IDY3MHB4O1xuICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX2J1bmRsZSBoMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fYnVuZGxlIGgyOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjYzljYWNiO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC02MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgd2lkdGg6IDFweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fYnVuZGxlIGgyOmJlZm9yZSB7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIHRvcDogLTkwcHg7IH0gfVxuICAubWVtYmVyc2hpcC1idW5kbGVzX19idW5kbGUgcCB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX2J1bmRsZSBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX2J1bmRsZSBwIGEge1xuICAgICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1idW5kbGUtbGluayB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlci1jb2xvcjogI2ZmMDgwZDtcbiAgY29sb3I6ICNmZjA4MGQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtYnVuZGxlLWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1idW5kbGUtbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDgwZDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ubWVtYmVyc2hpcC1vZmZlcnMge1xuICBtYXJnaW4tdG9wOiAxMDBweDsgfVxuXG4ubWVtYmVyc2hpcC1vZmZlcnMtbmF2IHtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtb2ZmZXJzLW5hdiB7XG4gICAgICBvdmVyZmxvdy14OiBpbml0aWFsOyB9IH1cblxuLm1lbWJlcnNoaXAtb2ZmZXJzX19sYXRlc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi13aWR0aDogODAwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVtYmVyc2hpcC1vZmZlcnNfX2xhdGVzdCB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAxMDBweDsgfSB9XG4gIC5tZW1iZXJzaGlwLW9mZmVyc19fbGF0ZXN0OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29udGVudDogXCJMYXRlc3QgT2ZmZXJzXCI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgaGVpZ2h0OiA4MnB4O1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgICBwYWRkaW5nOiAyMXB4IDE3cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRvcDogLTRweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjBkZWcpO1xuICAgIHdpZHRoOiA4MnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm1lbWJlcnNoaXAtb2ZmZXJzX19sYXRlc3Q6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAtNHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1lbWJlcnNoaXAtb2ZmZXJzX19sYXRlc3Q6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiA4MnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICAgICAgICBwYWRkaW5nOiAyMXB4IDE3cHg7XG4gICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgd2lkdGg6IDgycHg7IH0gfVxuXG4ubWVtYmVyc2hpcC1vZmZlcnNfX3RpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtb2ZmZXJzX190aXRsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm1lbWJlcnNoaXAtb2ZmZXJzLW5hdiB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG5cbi5tZW1iZXJzaGlwLW9mZmVycy1uYXZfX29wdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAyNHB4IDAgMThweDtcbiAgd2lkdGg6IDI1JTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW1iZXJzaGlwLW9mZmVycy1uYXZfX29wdGlvbjpob3ZlciB7XG4gICAgY29sb3I6ICNlNDMyMjc7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLm1lbWJlcnNoaXAtb2ZmZXJzLW5hdl9fb3B0aW9uLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNlNDMyMjc7IH1cblxuLm1lbWJlcnNoaXAtb2ZmZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM5YTA0MDYsICNmZjA4MGQpO1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDYwcHggMCAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVtYmVyc2hpcC1vZmZlciB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDAgNDBweDsgfSB9XG5cbi5tZW1iZXJzaGlwLW9mZmVyLS12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm1lbWJlcnNoaXAtb2ZmZXJfX2lubmVyIHtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbWJlcnNoaXAtb2ZmZXJfX2lubmVyIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVtYmVyc2hpcC1vZmZlcl9faW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tZW1iZXJzaGlwLW9mZmVyX19pbm5lciwgLm1lbWJlcnNoaXAtb2ZmZXJfX2lubmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5tZW1iZXJzaGlwLW9mZmVyX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLm1lbWJlcnNoaXAtb2ZmZXJfX2lubmVyIGgxIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tZW1iZXJzaGlwLW9mZmVyX19pbm5lciBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tZW1iZXJzaGlwLW9mZmVyX19pbm5lciBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNXJlbTsgfSB9XG4gICAgLm1lbWJlcnNoaXAtb2ZmZXJfX2lubmVyIGgxOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB3aWR0aDogMzBweDsgfVxuXG4ubWVtYmVyc2hpcC1vZmZlcl9fZGVzY3JpcHRpb24gcCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luOiAyMHB4IGF1dG8gMTBweDtcbiAgbWF4LXdpZHRoOiA0NTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW1iZXJzaGlwLW9mZmVyX19kZXNjcmlwdGlvbiBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICAgIG1heC13aWR0aDogNjUwcHg7IH0gfVxuXG4ubWVtYmVyc2hpcC1vZmZlcl9fYnV0dG9ucyB7XG4gIG1hcmdpbjogMjBweCAwIDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVtYmVyc2hpcC1vZmZlcl9fYnV0dG9ucyB7XG4gICAgICBtYXJnaW46IDQwcHggMCAyMHB4OyB9IH1cblxuLm1lbWJlcnNoaXAtb2ZmZXJfX2J1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdpZHRoOiA5MCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVtYmVyc2hpcC1vZmZlcl9fYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgbWF4LXdpZHRoOiAyNzBweDtcbiAgICAgIHBhZGRpbmc6IDAuODEyNXJlbSAwLjYyNXJlbTtcbiAgICAgIHdpZHRoOiAzMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW1iZXJzaGlwLW9mZmVyX19idXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbWFyZ2luOiAwIDEwcHg7IH0gfVxuICAubWVtYmVyc2hpcC1vZmZlcl9fYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogIzAwMDsgfVxuXG4ubWVtYmVyc2hpcC1vZmZlcl9fdGV4dCBwIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbjogMjBweCBhdXRvOyB9XG4gIC5tZW1iZXJzaGlwLW9mZmVyX190ZXh0IHAgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbWJlcnNoaXAtb2ZmZXJfX3RleHQgYSB7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5yZWNpdGVtZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC40cztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDgwZDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmMDgwZDtcbiAgYm90dG9tOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICB6LWluZGV4OiAxMDAwOyB9XG4gIC5yZWNpdGVtZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6IDFweCBzb2xpZCAjZmYwODBkO1xuICAgIGNvbG9yOiAjZmYwODBkOyB9XG5cbi5uYXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDAgMTVweCAxcHggcmdiYSgwLCAwLCAwLCAwLjI5KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgaGVpZ2h0OiA2MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1pbi13aWR0aDogMzAwcHg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjRzO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uYXYge1xuICAgICAgaGVpZ2h0OiA3MnB4OyB9IH1cblxuLm5hdl9fbG9nbyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy9lYS1sb2dvLXZlcnRpY2FsLnN2Z1wiKSBjZW50ZXIgY2VudGVyL2NvbnRhaW4gbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHdpZHRoOiA5N3B4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5hdl9fbG9nbyB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMnB4IDM2cHg7XG4gICAgICBtYXJnaW46IDAgMCAwIDMwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXZfX2xvZ28ge1xuICAgICAgbWFyZ2luOiAwIDAgMCAyNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgIC5uYXZfX2xvZ28ge1xuICAgICAgbWFyZ2luOiAwIDAgMCA1MHB4OyB9IH1cblxuLm5hdl9fbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDZweCAwIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5hdl9fbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5uYXZfX21lbnUgbGkge1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDAuNzI1cmVtO1xuICAgIGhlaWdodDogNTRweDtcbiAgICBsaW5lLWhlaWdodDogMy4wNjI1cmVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogOXB4O1xuICAgIHBhZGRpbmc6IDAgN3B4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgICAubmF2X19tZW51IGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuICAgIC5uYXZfX21lbnUgbGkuaGlnaGxpZ2h0ZWQge1xuICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkICMwMDA7XG4gICAgICBmb250LWZhbWlseTogJ0NpcmN1bGFyIFN0ZCBCb2xkJztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzOyB9XG4gICAgICAubmF2X19tZW51IGxpLmhpZ2hsaWdodGVkOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmMDgwZDtcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgI2ZmMDgwZDsgfVxuICAgICAgLm5hdl9fbWVudSBsaS5oaWdobGlnaHRlZDphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5uYXZfX21lbnUgbGkuaGlnaGxpZ2h0ZWQgYSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIDExcHg7IH1cbiAgICAubmF2X19tZW51IGxpLnJlZGxpbmsgYSB7XG4gICAgICBjb2xvcjogI2ZmMDgwZDsgfVxuICAgIC5uYXZfX21lbnUgbGkuY3VycmVudC1tZW51LWl0ZW0gYSB7XG4gICAgICBjb2xvcjogIzMzMzsgfVxuICAgICAgLm5hdl9fbWVudSBsaS5jdXJyZW50LW1lbnUtaXRlbSBhOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubmF2X19tZW51IGxpLm5hdl9fbXlwcm9maWxlIHtcbiAgICAgIGNvbG9yOiAjZmYwODBkOyB9XG4gICAgICAubmF2X19tZW51IGxpLm5hdl9fbXlwcm9maWxlIGE6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmYwODBkO1xuICAgICAgICBtYXJnaW46IDRweCAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5uYXZfX21lbnUgbGkgYSB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuNHM7IH1cbiAgICAubmF2X19tZW51IGxpOm5vdCguaGlnaGxpZ2h0ZWQpIGE6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmMDgwZDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjRzO1xuICAgICAgd2lkdGg6IDA7IH1cbiAgICAubmF2X19tZW51IGxpOm5vdCguaGlnaGxpZ2h0ZWQpIGE6aG92ZXI6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cblxuLm5hdl9fbW9iaWxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDYwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC41cztcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHdpZHRoOiA4MCU7XG4gIHotaW5kZXg6IDEwMDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmF2X19tb2JpbGUge1xuICAgICAgdG9wOiA3MnB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDBweCwgMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNHM7XG4gICAgICB3aWR0aDogMzAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXZfX21vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm5hdl9fbWVudS0tbG9nZ2VkaW4gbGkge1xuICBsaW5lLWhlaWdodDogMy42MjVyZW07IH1cblxuLm5hdl9fbW9iaWxlLS1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ubmF2X19tZW51LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNmMWYyZjQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDE3cHggNDVweCAxNXB4IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uYXZfX21lbnUtYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDI0cHggNDVweCAyNHB4IDE1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXZfX21lbnUtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubmF2X19tZW51LWJ1dHRvbl9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzMzMztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4ubmF2X19tb2JpbGUtbWVudSB7XG4gIG1hcmdpbjogMTBweCAwO1xuICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogMCAxNXB4IDMwcHggMjBweDsgfVxuICAubmF2X19tb2JpbGUtbWVudSBsaSB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuNzVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm5hdl9fbW9iaWxlLW1lbnUgbGk6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiL2ltZy9wcm9maWxlL2Fycm93LXJpZ2h0LWJsdWUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDIwcHg7IH1cbiAgICAubmF2X19tb2JpbGUtbWVudSBsaSBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5uYXZfX21vYmlsZS1tZW51IGxpIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubmF2X19tZW51LWJ1dHRvbi0tY2xvc2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5hdl9fbWVudS1idXR0b24tLWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubmF2X19tZW51LWRvdHMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxOHB4IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDE4cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmF2X19tZW51LWRvdHMge1xuICAgICAgbWFyZ2luOiAyNXB4IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXZfX21lbnUtZG90cyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLm5hdl9fbWVudS1kb3RzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLm5hdl9fbWVudS1kb3RzIHNwYW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA4MGQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogNXB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDNweDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNHM7XG4gICAgd2lkdGg6IDVweDsgfVxuXG4ubmF2X19tZW51LWRvdHMtLWFsdCB7XG4gIG1hcmdpbjogMTlweCAwO1xuICByaWdodDogMTJweDsgfVxuXG4ubmF2X19tZW51LWRvdHMtLW9wZW4ge1xuICBtYXJnaW46IDMwcHggMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uYXZfX21lbnUtZG90cy0tb3BlbiB7XG4gICAgICBtYXJnaW46IDM3cHggMDsgfSB9XG4gIC5uYXZfX21lbnUtZG90cy0tb3BlbiBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwODBkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgbWFyZ2luOiAtMnB4IGF1dG8gMDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzO1xuICAgIHdpZHRoOiAxOHB4OyB9XG4gICAgLm5hdl9fbWVudS1kb3RzLS1vcGVuIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAubmF2X19tZW51LWRvdHMtLW9wZW4gc3BhbjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm5hdl9fbWVudS1kb3RzLS1vcGVuIHNwYW46bGFzdC1vZi10eXBlIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm5hdl9fbWVudS1kb3RzLS1vcGVuLWFsdCB7XG4gICAgbWFyZ2luOiAzMHB4IDA7IH0gfVxuXG4ubmF2X19tZW51LWNyb3NzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTZweDtcbiAgdG9wOiAyMHB4OyB9XG4gIC5uYXZfX21lbnUtY3Jvc3Mgc3BhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDgwZDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIHdpZHRoOiAxOHB4OyB9XG4gICAgLm5hdl9fbWVudS1jcm9zcyBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gICAgLm5hdl9fbWVudS1jcm9zcyBzcGFuOmxhc3Qtb2YtdHlwZSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5uYXZfX3Byb2ZpbGUge1xuICBiYWNrZ3JvdW5kOiAjZWFlZmZmO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uYXZfX3Byb2ZpbGUge1xuICAgICAgYm94LXNoYWRvdzogLTZweCAtNXB4IDZweCA2cHggIzkzOTU5ODsgfSB9XG5cbi5uYXZfX3Byb2ZpbGUtLW9wZW4ge1xuICBoZWlnaHQ6IDMwMHB4O1xuICBtYXJnaW4tdG9wOiA3MnB4OyB9XG5cbi5uYXZfX3Byb2ZpbGVfX2NvbCB7XG4gIHdpZHRoOiAyNSU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmF2X19wcm9maWxlX19jb2wge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgLm5hdl9fcHJvZmlsZV9fY29sLCAubmF2X19wcm9maWxlX19jb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLm5hdl9fcHJvZmlsZV9fY29sOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4ubmF2X19wcm9maWxlX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDUwcHggMCAyMnB4O1xuICBwYWRkaW5nOiAwOyB9XG5cbi5uYXZfX3Byb2ZpbGVfX21lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLm5hdl9fcHJvZmlsZV9fbWVudSBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiA0cHggMDsgfVxuICAgIC5uYXZfX3Byb2ZpbGVfX21lbnUgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZzogMCAwIDRweDsgfVxuICAgIC5uYXZfX3Byb2ZpbGVfX21lbnUgbGkgYSB7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLm5hdl9fcHJvZmlsZV9fbWVudSBsaSBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLm5hdl9fbG9nb3V0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjOWNhY2I7XG4gIG1hcmdpbjogMzZweCAwIDA7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIHBhZGRpbmc6IDM2cHggMCAwOyB9XG5cbi5uYXZfX25vdGlmeS1idWJibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwODBkO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbjogMXB4IDNweCAwO1xuICBwYWRkaW5nOiAxcHggNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLm5hdl9fbm90aWZ5LWJ1YmJsZS0tYWx0IHtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgaGVpZ2h0OiAyMnB4O1xuICBwYWRkaW5nOiAwIDVweDtcbiAgd2lkdGg6IDIycHg7IH1cblxuLm5hdl9fbm90aWZ5LWJ1YmJsZS0tZW1wdHkge1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICB3aWR0aDogMTRweDsgfVxuXG4ubmV3cy1mbGFzaCB7XG4gIGJhY2tncm91bmQ6ICNmZjAwMDE7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2Q3MDAwMCAyOSUsICNmZjJhMmYgNjglLCByZWQgMTAwJSk7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ld3MtZmxhc2gge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA3MnB4OyB9IH1cbiAgLm5ld3MtZmxhc2ggLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmV3cy1mbGFzaF9faW5uZXIge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW46IGF1dG87XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5uZXdzLWZsYXNoX19pbm5lciBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ubmV3cy1mbGFzaF9fcG9zdHMge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5uZXdzLWZsYXNoX19wb3N0cyAubmV3cy1mbGFzaF9fYmxvY2sge1xuICAgIG1hcmdpbjogMTBweCAwOyB9XG5cbi5uZXdzLWZsYXNoX19ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5ld3MtZmxhc2hfX2Jsb2NrLnZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uZXdzLWZsYXNoX19saW5rIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5uZXdzLWZsYXNoX19saW5rOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZXhwYW5kLXdoaXRlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTIwcHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyMHB4OyB9XG4gIC5uZXdzLWZsYXNoX19saW5rOmFjdGl2ZSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLm5ld3MtZmxhc2hfX2xpbmsubmV3cy1mbGFzaF9fbGluay0tbGVzczphZnRlciwgLm5ld3MtZmxhc2hfX2xpbmsubmV3cy1mbGFzaF9fbGluay0taGlkZTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpOyB9XG5cbi5ob21lcGFnZS1uZXdzLWZsYXNoIC5uZXdzLWZsYXNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaG9tZXBhZ2UtbmV3cy1mbGFzaCAubmV3cy1mbGFzaCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDA7IH0gfVxuXG4ucGFnZS1pbnRybyB7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiA1NXB4IDIwcHggMjVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS1pbnRybyB7XG4gICAgICBwYWRkaW5nOiAxMDBweCAyMHB4IDM1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYWdlLWludHJvIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNDBweDsgfSB9XG4gIC5wYWdlLWludHJvOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogI2M5Y2FjYjtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDFweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS1pbnRybzpiZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB0b3A6IDIwcHg7IH0gfVxuICAucGFnZS1pbnRybyBoMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogNzUwcHg7IH1cbiAgLnBhZ2UtaW50cm8gcCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDA7XG4gICAgbWF4LXdpZHRoOiA3NTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS1pbnRybyBwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gICAgLnBhZ2UtaW50cm8gcCBhIHtcbiAgICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAucGFnZS1pbnRybyBwIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ucGFnZS1pbnRyby0tYmFyZTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wYWdlLWludHJvLS1hbHQge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAucGFnZS1pbnRyby0tYWx0IHAge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5wYWdlLWludHJvLS1hbHQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgIC5wYWdlLWludHJvLS1hbHQgLmJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICNmZjA4MGQ7IH1cblxuLnBhZ2UtaW50cm9fX2J1dHRvbiB7XG4gIG1hcmdpbjogMTBweCAwIDMwcHg7IH1cblxuLnBvc3QtbGlzdCB7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZmZmO1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBwYWRkaW5nOiAxMHB4IDAgMzBweDsgfVxuICAucG9zdC1saXN0OjpiZWZvcmUsIC5wb3N0LWxpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnBvc3QtbGlzdDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wb3N0LWxpc3Qgc3BhbiB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBvc3QtbGlzdF9fYXJ0aWNsZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDEwcHggMCAyMHB4O1xuICB3aWR0aDogNTAlOyB9XG4gIC5wb3N0LWxpc3RfX2FydGljbGU6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgY2xlYXI6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogOHB4OyB9XG4gIC5wb3N0LWxpc3RfX2FydGljbGU6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgIHBhZGRpbmctbGVmdDogOHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvc3QtbGlzdF9fYXJ0aWNsZSB7XG4gICAgICBtYXJnaW46IDIwcHggMDsgfSB9XG5cbi5wb3N0LWxpc3RfX2FydGljbGUtaW1hZ2Uge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuNSU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9zdC1saXN0X19hcnRpY2xlLWltYWdlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMCU7XG4gICAgICB3aWR0aDogMzUlOyB9IH1cblxuLnBvc3QtbGlzdF9fYXJ0aWNsZS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogI2M5Y2FjYjtcbiAgYm90dG9tOiAwO1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiA0NXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvc3QtbGlzdF9fYXJ0aWNsZS1sYWJlbCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgd2lkdGg6IDY2cHg7IH0gfVxuICAucG9zdC1saXN0X19hcnRpY2xlLWxhYmVsLnBvc3QtbGlzdF9fYXJ0aWNsZS1sYWJlbC0tTmV3cyB7XG4gICAgYmFja2dyb3VuZDogIzY2NjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAucG9zdC1saXN0X19hcnRpY2xlLWxhYmVsLnBvc3QtbGlzdF9fYXJ0aWNsZS1sYWJlbC0tRXZlbnQge1xuICAgIGJhY2tncm91bmQ6ICNkNDk4M2U7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnBvc3QtbGlzdF9fYXJ0aWNsZS1tZXRhIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDIwcHggMCAwO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb3N0LWxpc3RfX2FydGljbGUtbWV0YSB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICB3aWR0aDogNjUlOyB9IH1cblxuLnBvc3QtbGlzdF9fYXJ0aWNsZS1jYXRlZ29yeSB7XG4gIGNvbG9yOiAjNzc3O1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgTWVkaXVtXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIC5wb3N0LWxpc3RfX2FydGljbGUtY2F0ZWdvcnkgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLnBvc3QtbGlzdF9fYXJ0aWNsZS1jYXRlZ29yeSBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5wb3N0LWxpc3RfX2FydGljbGUtdGl0bGUge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDkwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb3N0LWxpc3RfX2FydGljbGUtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9zdC1saXN0X19hcnRpY2xlLXRpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLnBvc3QtbGlzdF9fYXJ0aWNsZS10aXRsZSBhIHtcbiAgICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9sZFwiLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5wb3N0LWxpc3RfX2FydGljbGUtdGl0bGUgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ucG9zdC1saXN0X19hcnRpY2xlLWxpbmsge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjM2Q5NmNhO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9zdC1saXN0X19hcnRpY2xlLWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyB9IH1cbiAgLnBvc3QtbGlzdF9fYXJ0aWNsZS1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ucG9zdC1saXN0X19idXR0b24tY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgbWF4LXdpZHRoOiAyMjBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucG9zdC1saXN0X19hcnRpY2xlLWNvdW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9sZFwiLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nLXRvcDogMjBweDsgfVxuXG4ucmVjaXRlbWUtYnV0dG9uIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDgwZDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmMDgwZDtcbiAgYm90dG9tOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgei1pbmRleDogOTAwMDsgfVxuICAucmVjaXRlbWUtYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogMXB4IHNvbGlkICNmZjA4MGQ7XG4gICAgY29sb3I6ICNmZjA4MGQ7IH1cblxuLm5vLXRvdWNoZXZlbnRzIC5mb290ZXIge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveF9fd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmZmZmYgMCUsICNmZmZmZmYgMjklLCAjZmVmZWZlIDMxJSwgI2U0ZTRlNSAxMDAlKTtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgbWluLWhlaWdodDogOTd2aDsgfVxuICAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveF9fd3JhcHBlcjo6YmVmb3JlLCAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveF9fd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveF9fd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94IHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC40czsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5vLXRvdWNoZXZlbnRzIC5zY3JvbGxib3guc2Nyb2xsYm94LS0xIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDc0dmg7XG4gICAgICBwYWRkaW5nLXRvcDogMTV2aDsgfVxuICAgICAgLm5vLXRvdWNoZXZlbnRzIC5zY3JvbGxib3guc2Nyb2xsYm94LS0xIC5zY3JvbGxib3hfX21lZGlhIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LnNjcm9sbGJveC0tMSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTJ2aDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LnNjcm9sbGJveC0tMSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTV2aDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm5vLXRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX2hlYWRlciB7XG4gICAgaGVpZ2h0OiA2dmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94X19oZWFkZXIge1xuICAgIGhlaWdodDogOHZoOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveF9fbWVkaWEge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG5cbi5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZmZmZmZmIDI5JSwgI2ZlZmVmZSAzMSUsICNlNGU0ZTUgMTAwJSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBtaW4taGVpZ2h0OiA3NHZoO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1dmg7IH0gfVxuICAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveC0tYWN0aXZlLmZhcXMge1xuICAgIGJhY2tncm91bmQ6ICMxYjIzMjY7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveC0tYWN0aXZlIC5zY3JvbGxib3hfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1hY3RpdmUgLnNjcm9sbGJveF9fbWVkaWEge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNnM7IH1cbiAgICAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveC0tYWN0aXZlIC5zY3JvbGxib3hfX21lZGlhLmhpZGRlbiB7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1hY3RpdmUgLnNjcm9sbGJveF9fbGluayB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1jb2xsYXBzZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1jb2xsYXBzZWQuc2Nyb2xsYm94LS0yIHtcbiAgICAgIHRvcDogNzh2aDsgfVxuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1jb2xsYXBzZWQuc2Nyb2xsYm94LS0zIHtcbiAgICAgIHRvcDogODR2aDsgfVxuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1jb2xsYXBzZWQuc2Nyb2xsYm94LS00IHtcbiAgICAgIHRvcDogOTB2aDsgfVxuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1jb2xsYXBzZWQuZmFxcyB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDk2dmg7XG4gICAgICB6LWluZGV4OiAyNTsgfVxuICAgIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1jb2xsYXBzZWQgLnNjcm9sbGJveF9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAubm8tdG91Y2hldmVudHMgLnNjcm9sbGJveC0tY29sbGFwc2VkLnNjcm9sbGJveC0tMiB7XG4gICAgdG9wOiA3MnZoOyB9XG4gIC5uby10b3VjaGV2ZW50cyAuc2Nyb2xsYm94LS1jb2xsYXBzZWQuc2Nyb2xsYm94LS0zIHtcbiAgICB0b3A6IDgwdmg7IH1cbiAgLm5vLXRvdWNoZXZlbnRzIC5zY3JvbGxib3gtLWNvbGxhcHNlZC5zY3JvbGxib3gtLTQge1xuICAgIHRvcDogODh2aDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm5vLXRvdWNoZXZlbnRzIC5mYXFzIC5zY3JvbGxib3hfX2hlYWRlciB7XG4gICAgaGVpZ2h0OiA0dmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5uby10b3VjaGV2ZW50cyAuZmFxcyAuc2Nyb2xsYm94X19oZWFkZXIge1xuICAgIGhlaWdodDogM3ZoOyB9IH1cblxuLnRvdWNoZXZlbnRzIC5mb290ZXIge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnRvdWNoZXZlbnRzIC5mb290ZXIuZml4ZWQge1xuICAgICAgdG9wOiAwOyB9IH1cblxuLnRvdWNoZXZlbnRzIC5zY3JvbGxib3gge1xuICBvcGFjaXR5OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50b3VjaGV2ZW50cyAuc2Nyb2xsYm94IHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmZmZmYgMCUsICNmZmZmZmYgMjklLCAjZmVmZWZlIDMxJSwgI2U0ZTRlNSAxMDAlKTtcbiAgICAgIGhlaWdodDogNjB2aDtcbiAgICAgIG1pbi1oZWlnaHQ6IDYwMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudG91Y2hldmVudHMgLnNjcm9sbGJveCB7XG4gICAgICBoZWlnaHQ6IDg1dmg7IH0gfVxuXG4udG91Y2hldmVudHMgLnNjcm9sbGJveC0tMSAuc2Nyb2xsYm94X19tZWRpYSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4udG91Y2hldmVudHMgLnNjcm9sbGJveF9fbWVkaWEge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZmZmZmZmIDI5JSwgI2ZlZmVmZSAzMSUsICNlNGU0ZTUgMTAwJSk7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX21lZGlhIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBsZWZ0OiA1NSU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogNDUlOyB9XG4gICAgICAudG91Y2hldmVudHMgLnNjcm9sbGJveF9fbWVkaWEgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50b3VjaGV2ZW50cyAuc2Nyb2xsYm94X19tZWRpYSB7XG4gICAgICBsZWZ0OiA1MyU7XG4gICAgICB3aWR0aDogNDclOyB9IH1cblxuLnRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX21lZGlhLS0yIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC50b3VjaGV2ZW50cyAuc2Nyb2xsYm94X19tZWRpYS0tMiAuc2Nyb2xsYm94X19tZWRpYS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50b3VjaGV2ZW50cyAuc2Nyb2xsYm94X19tZWRpYS0tMiAubW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50b3VjaGV2ZW50cyAuc2Nyb2xsYm94X19tZWRpYS0tMiBpbWcge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi50b3VjaGV2ZW50cyAuc2Nyb2xsYm94X19tZWRpYS0tMyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAudG91Y2hldmVudHMgLnNjcm9sbGJveF9fbWVkaWEtLTMge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudG91Y2hldmVudHMgLnNjcm9sbGJveF9fbWVkaWEtLTMge1xuICAgICAgaGVpZ2h0OiA4NXZoOyB9IH1cbiAgLnRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX21lZGlhLS0zIGltZyB7XG4gICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgIHRvcDogNTAlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX21lZGlhLS00IGltZyB7XG4gICAgaGVpZ2h0OiA2MCU7XG4gICAgbGVmdDogMTUlOyB9XG4gICAgLnRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX21lZGlhLS00IGltZzpudGgtb2YtdHlwZSgyKSB7XG4gICAgICBsZWZ0OiAzMCU7XG4gICAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICAgICAgdG9wOiA0MiU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG91Y2hldmVudHMgLnNjcm9sbGJveF9fbWVkaWEtLTQgaW1nIHtcbiAgICBoZWlnaHQ6IDQwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG91Y2hldmVudHMgLnNjcm9sbGJveF9fY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuLnRvdWNoZXZlbnRzIC5zY3JvbGxib3hfX2hlYWRlciAuc2Nyb2xsYm94X19saW5rIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udG91Y2hldmVudHMgLnNjcm9sbGJveF9fY29udGVudDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG91Y2hldmVudHMgLnNjcm9sbGJveF9fY29udGVudCB7XG4gICAgd2lkdGg6IDUzJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3VjaGV2ZW50cyAuc2Nyb2xsYm94X19jb250ZW50IHtcbiAgICB3aWR0aDogNTAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG91Y2hldmVudHMgLmZhcXMgLnNjcm9sbGJveF9faGVhZGVyIHtcbiAgICBoZWlnaHQ6IDN2aDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3VjaGV2ZW50cyAuZmFxcyAuc2Nyb2xsYm94X19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLnNjcm9sbGJveCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGNsZWFyOiBib3RoO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAyMHB4IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI1OyB9XG4gIC5zY3JvbGxib3g6OmJlZm9yZSwgLnNjcm9sbGJveDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuc2Nyb2xsYm94OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zY3JvbGxib3gge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5zY3JvbGxib3guc2Nyb2xsYm94LS0xIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fbWVkaWEge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fbWVkaWE6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjg4KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IC44O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fbWVkaWEtLXZpZGVvIH4gLmNvbnRhaW5lciAuc2Nyb2xsYm94X19jb250ZW50LFxuICAgICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fbWVkaWEtLXZpZGVvIH4gLmNvbnRhaW5lciAuc2Nyb2xsYm94X19kZXNjcmlwdGlvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuc2Nyb2xsYm94LnNjcm9sbGJveC0tMSAuc2Nyb2xsYm94X19jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDsgfSB9XG4gICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fY29udGVudCBoMSB7XG4gICAgICBmb250LWZhbWlseTogJ0JhcmxvdyBTZW1pIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fY29udGVudCBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAzLjc1cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAgICAgICAuc2Nyb2xsYm94LnNjcm9sbGJveC0tMSAuc2Nyb2xsYm94X19jb250ZW50IGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDVyZW07IH0gfVxuICAgIC5zY3JvbGxib3guc2Nyb2xsYm94LS0xIC5zY3JvbGxib3hfX2NvbnRlbnQgLnNjcm9sbGJveF9fY29udGVudC1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDgwZDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZjA4MGQ7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fY29udGVudCAuc2Nyb2xsYm94X19jb250ZW50LWJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzAwMDsgfVxuICAgIC5zY3JvbGxib3guc2Nyb2xsYm94LS0xIC5zY3JvbGxib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTEgLnNjcm9sbGJveF9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzY7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgNDBweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4OyB9IH1cbiAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTIuc2Nyb2xsYm94LS1zcGFjZSB7XG4gICAgcGFkZGluZy10b3A6IDEwdmg7IH1cbiAgLnNjcm9sbGJveC5zY3JvbGxib3gtLTIuc2Nyb2xsYm94LS1hY3RpdmUge1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgLjNzIGxpbmVhcjsgfVxuICAuc2Nyb2xsYm94IC5jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2Nyb2xsYm94LS1jb250YWluZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzljYWNiOyB9IH1cblxuLnNjcm9sbGJveF9fbWVkaWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNjcm9sbGJveF9fbWVkaWEgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IGF1dG87IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zY3JvbGxib3hfX21lZGlhIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgd2lkdGg6IDQwJTsgfVxuICAgICAgLnNjcm9sbGJveF9fbWVkaWEgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zY3JvbGxib3hfX21lZGlhIHtcbiAgICAgIHdpZHRoOiA0MyU7IH0gfVxuXG4uc2Nyb2xsYm94X19tZWRpYS0tdmlkZW8ge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc2Nyb2xsYm94X19tZWRpYS0tdmlkZW8ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDc0dmg7XG4gICAgICBtYXJnaW4tdG9wOiAtMTV2aDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuc2Nyb2xsYm94X19tZWRpYS0tdmlkZW8gLmZ1bGwtYmcge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDsgfVxuICAgICAgICAuc2Nyb2xsYm94X19tZWRpYS0tdmlkZW8gLmZ1bGwtYmcgLnZpZGVvLWpzIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA1NnZ3O1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAuc2Nyb2xsYm94X19tZWRpYS0tdmlkZW8gLmZ1bGwtYmcgLnZpZGVvLWpzIC52anMtY29udHJvbC1iYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuc2Nyb2xsYm94X19tZWRpYS0tdmlkZW8gLmZ1bGwtYmcgLnZqcy10ZWNoIHtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNjcm9sbGJveF9fbWVkaWEtLXZpZGVvIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xMnZoOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgIC5zY3JvbGxib3hfX21lZGlhLS12aWRlbyB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTV2aDsgfSB9XG5cbi5zY3JvbGxib3hfX21lZGlhLS1mYWxsYmFjayB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc2Nyb2xsYm94X19tZWRpYS0tZmFsbGJhY2sge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnNjcm9sbGJveF9fbWVkaWEtLWZhbGxiYWNrIGltZyB7XG4gICAgICAgIHdpZHRoOiA5NSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zY3JvbGxib3hfX21lZGlhLS0yIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogNjAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zY3JvbGxib3hfX21lZGlhLS0yIHtcbiAgICBsZWZ0OiA1NiU7IH0gfVxuXG4uc2Nyb2xsYm94X19tZWRpYS0tMiAuc2Nyb2xsYm94X19tZWRpYS1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc2Nyb2xsYm94X19tZWRpYS0tMiAuc2Nyb2xsYm94X19tZWRpYS1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3MCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNjcm9sbGJveF9fbWVkaWEtLTIgLnNjcm9sbGJveF9fbWVkaWEtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2NSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgLnNjcm9sbGJveF9fbWVkaWEtLTIgLnNjcm9sbGJveF9fbWVkaWEtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzODBweDsgfSB9XG4gIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWcge1xuICAgIGJveC1zaGFkb3c6IDFweCAzcHggMjBweCAwICM2NjY7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNzUlLCAtMjUlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDA7XG4gICAgei1pbmRleDogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWcge1xuICAgICAgICBtYXJnaW46IGluaXRpYWw7IH0gfVxuICAgIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWc6bnRoLW9mLXR5cGUoMSksIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWc6bnRoLW9mLXR5cGUoMiksIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWc6bnRoLW9mLXR5cGUoNSksIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWc6bnRoLW9mLXR5cGUoMykge1xuICAgICAgd2lkdGg6IDE1JTsgfVxuICAgIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWc6bnRoLW9mLXR5cGUoNCksIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWc6bnRoLW9mLXR5cGUoNikge1xuICAgICAgd2lkdGg6IDMwJTsgfVxuICAgIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWc6bnRoLW9mLXR5cGUoNykge1xuICAgICAgbGVmdDogMTYlO1xuICAgICAgdG9wOiAzNSU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwKTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLnNjcm9sbGJveF9fbWVkaWEtLTIgLnNjcm9sbGJveF9fbWVkaWEtY29udGFpbmVyIGltZy5hY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuNnM7IH1cbiAgICAgIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWcuYWN0aXZlOm50aC1vZi10eXBlKDEpIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAyJTsgfVxuICAgICAgLnNjcm9sbGJveF9fbWVkaWEtLTIgLnNjcm9sbGJveF9fbWVkaWEtY29udGFpbmVyIGltZy5hY3RpdmU6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICBsZWZ0OiAxNiU7XG4gICAgICAgIHRvcDogMTQlOyB9XG4gICAgICAuc2Nyb2xsYm94X19tZWRpYS0tMiAuc2Nyb2xsYm94X19tZWRpYS1jb250YWluZXIgaW1nLmFjdGl2ZTpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgIGxlZnQ6IDQ4JTtcbiAgICAgICAgdG9wOiAwOyB9XG4gICAgICAuc2Nyb2xsYm94X19tZWRpYS0tMiAuc2Nyb2xsYm94X19tZWRpYS1jb250YWluZXIgaW1nLmFjdGl2ZTpudGgtb2YtdHlwZSg0KSB7XG4gICAgICAgIGxlZnQ6IDYzJTtcbiAgICAgICAgdG9wOiAyMCU7IH1cbiAgICAgIC5zY3JvbGxib3hfX21lZGlhLS0yIC5zY3JvbGxib3hfX21lZGlhLWNvbnRhaW5lciBpbWcuYWN0aXZlOm50aC1vZi10eXBlKDUpIHtcbiAgICAgICAgbGVmdDogNzQlO1xuICAgICAgICB0b3A6IDgyJTsgfVxuICAgICAgLnNjcm9sbGJveF9fbWVkaWEtLTIgLnNjcm9sbGJveF9fbWVkaWEtY29udGFpbmVyIGltZy5hY3RpdmU6bnRoLW9mLXR5cGUoNikge1xuICAgICAgICBsZWZ0OiAyJTtcbiAgICAgICAgdG9wOiA4NSU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2Nyb2xsYm94X19tZWRpYS0tMiAubW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2Nyb2xsYm94X19tZWRpYS0tMiAubW9iaWxlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7IH0gfVxuXG4uc2Nyb2xsYm94X19tZWRpYS0tMyBpbWcge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zY3JvbGxib3hfX21lZGlhLS0zIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwOyB9XG4gICAgLnNjcm9sbGJveF9fbWVkaWEtLTMgaW1nIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2Nyb2xsYm94X19tZWRpYS0tMyBpbWcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTsgfSB9XG5cbi5zY3JvbGxib3hfX21lZGlhLS00IGltZyB7XG4gIGJveC1zaGFkb3c6IDAgMCAyNXB4IDAgI2M5Y2FjYjsgfVxuICAuc2Nyb2xsYm94X19tZWRpYS0tNCBpbWc6bnRoLW9mLXR5cGUoMikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdG9wOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNjcm9sbGJveF9fbWVkaWEtLTQgaW1nIHtcbiAgICAgIGxlZnQ6IDIwMHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC41czsgfVxuICAgICAgLnNjcm9sbGJveF9fbWVkaWEtLTQgaW1nLmFjdGl2ZSB7XG4gICAgICAgIGxlZnQ6IDA7IH1cbiAgICAgICAgLnNjcm9sbGJveF9fbWVkaWEtLTQgaW1nLmFjdGl2ZTpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgbGVmdDogODBweDtcbiAgICAgICAgICB0b3A6IDcwcHg7IH1cbiAgICAgIC5zY3JvbGxib3hfX21lZGlhLS00IGltZzpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgIC5zY3JvbGxib3hfX21lZGlhLS00IGltZyB7XG4gICAgICBsZWZ0OiAzMDBweDsgfSB9XG5cbi5zY3JvbGxib3hfX2lubmVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zY3JvbGxib3hfX2lubmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDsgfSB9XG5cbi5zY3JvbGxib3hfX2NvbnRlbnQtd3JhcHBlciB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gOHZoKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zY3JvbGxib3hfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAwIDEycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgLnNjcm9sbGJveF9fY29udGVudC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uc2Nyb2xsYm94X19oZWFkZXIge1xuICBwYWRkaW5nOiA0MHB4IDIwcHggMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNjcm9sbGJveF9faGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMXZoIDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zY3JvbGxib3hfX2hlYWRlciB7XG4gICAgICBwYWRkaW5nOiAxLjI1dmggMCAydmg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgLnNjcm9sbGJveF9faGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDJ2aCAwOyB9IH1cbiAgLnNjcm9sbGJveF9faGVhZGVyIC5zY3JvbGxib3hfX3RpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5zY3JvbGxib3hfX2hlYWRlciAuc2Nyb2xsYm94X190aXRsZSB7XG4gICAgICAgIHdpZHRoOiA2NyU7IH0gfVxuICAgIC5zY3JvbGxib3hfX2hlYWRlciAuc2Nyb2xsYm94X190aXRsZSBoMixcbiAgICAuc2Nyb2xsYm94X19oZWFkZXIgLnNjcm9sbGJveF9fdGl0bGUgaDMge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnNjcm9sbGJveF9faGVhZGVyIC5zY3JvbGxib3hfX3RpdGxlIGgyLFxuICAgICAgICAuc2Nyb2xsYm94X19oZWFkZXIgLnNjcm9sbGJveF9fdGl0bGUgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjdweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAgICAgLnNjcm9sbGJveF9faGVhZGVyIC5zY3JvbGxib3hfX3RpdGxlIGgyLFxuICAgICAgICAuc2Nyb2xsYm94X19oZWFkZXIgLnNjcm9sbGJveF9fdGl0bGUgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0M3B4OyB9IH1cbiAgLnNjcm9sbGJveF9faGVhZGVyIC5zY3JvbGxib3hfX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICMzZDk2Y2E7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2lkdGg6IDMyJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2Nyb2xsYm94X19oZWFkZXIgLnNjcm9sbGJveF9fbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICAuc2Nyb2xsYm94X19oZWFkZXIgLnNjcm9sbGJveF9fbGluazphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hldnJvbi1yaWdodC1ibHVlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMjVweDsgfVxuICAgIC5zY3JvbGxib3hfX2hlYWRlciAuc2Nyb2xsYm94X19saW5rIGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5zY3JvbGxib3hfX2hlYWRlciAuc2Nyb2xsYm94X19saW5rIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uc2Nyb2xsYm94LS0xIC5zY3JvbGxib3hfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAwIDIwcHggNjBweDsgfVxuXG4uc2Nyb2xsYm94X19jb250ZW50IHtcbiAgcGFkZGluZzogMCAyMHB4IDYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNjcm9sbGJveF9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDU2JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNjcm9sbGJveF9fY29udGVudCB7XG4gICAgICB3aWR0aDogNTUlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2Nyb2xsYm94X19jb250ZW50IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zY3JvbGxib3hfX2NvbnRlbnQgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4yNXJlbTsgfSB9XG4gIC5zY3JvbGxib3hfX2NvbnRlbnQgLnNjcm9sbGJveF9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnNjcm9sbGJveF9fY29udGVudCAuc2Nyb2xsYm94X190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uc2Nyb2xsYm94X19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzMzM7XG4gIG1hcmdpbjogMTBweCAwIDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zY3JvbGxib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zY3JvbGxib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICBtYXJnaW46IDAgYXV0byAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgIC5zY3JvbGxib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtOyB9IH1cblxuLnNjcm9sbGJveF9fc2Vjb25kYXJ5LXRleHQge1xuICBjb2xvcjogIzMzMztcbiAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG4gIC5zY3JvbGxib3hfX3NlY29uZGFyeS10ZXh0IGEge1xuICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5zY3JvbGxib3hfX3NlY29uZGFyeS10ZXh0IGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnNjcm9sbGJveF9fbG9nb3Mge1xuICBoZWlnaHQ6IDEyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zY3JvbGxib3hfX2xvZ29zOjpiZWZvcmUsIC5zY3JvbGxib3hfX2xvZ29zOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5zY3JvbGxib3hfX2xvZ29zOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MDBweCkge1xuICAgIC5zY3JvbGxib3hfX2xvZ29zIHtcbiAgICAgIGhlaWdodDogMTUwcHg7IH0gfVxuXG4uc2Nyb2xsYm94X19sb2dvcy1yb3cge1xuICBoZWlnaHQ6IDEzMHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgICAuc2Nyb2xsYm94X19sb2dvcy1yb3cge1xuICAgICAgaGVpZ2h0OiAxNTBweDsgfSB9XG4gIC5zY3JvbGxib3hfX2xvZ29zLXJvdy5zbGljay1zbGlkZSB7XG4gICAgaGVpZ2h0OiAxMzBweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgICAgIC5zY3JvbGxib3hfX2xvZ29zLXJvdy5zbGljay1zbGlkZSB7XG4gICAgICAgIGhlaWdodDogMTUwcHg7IH0gfVxuXG4uc2Nyb2xsYm94X19sb2dvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogODAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgICAuc2Nyb2xsYm94X19sb2dvIHtcbiAgICAgIHdpZHRoOiA3MCU7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwMHB4KSB7XG4gICAgLnNjcm9sbGJveF9fbG9nbyB7XG4gICAgICB3aWR0aDogNzUlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAgIC5zY3JvbGxib3hfX2xvZ28ge1xuICAgICAgd2lkdGg6IDYwJTsgfSB9XG4gIC5zY3JvbGxib3hfX2xvZ28gaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4uc2Nyb2xsYm94X19jb250ZW50LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZjA4MGQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAjZmYwODBkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMTI1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2Nyb2xsYm94X19jb250ZW50LWJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgfSB9XG4gIC5zY3JvbGxib3hfX2NvbnRlbnQtYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uc2Nyb2xsYm94X19jb250ZW50LWxpbmsge1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbjogMzBweCAwIDA7IH1cbiAgLnNjcm9sbGJveF9fY29udGVudC1saW5rIGEge1xuICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnNlYXJjaC1yZXN1bHRzIHtcbiAgcGFkZGluZy10b3A6IDg1cHg7IH1cbiAgLnNlYXJjaC1yZXN1bHRzOjpiZWZvcmUsIC5zZWFyY2gtcmVzdWx0czo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuc2VhcmNoLXJlc3VsdHM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0cyB7XG4gICAgICBwYWRkaW5nLXRvcDogOTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHRzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMTVweDsgfSB9XG5cbi5zZWFyY2gtcmVzdWx0c19faW5uZXIge1xuICBwYWRkaW5nOiAwIDEycHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHRzX19pbm5lciB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHRzX19pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNlYXJjaC1yZXN1bHRzX19pbm5lciwgLnNlYXJjaC1yZXN1bHRzX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuc2VhcmNoLXJlc3VsdHNfX2lubmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuc2VhcmNoLXJlc3VsdHNfX2lubmVyIC5wb3N0LWxpc3Qge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjYzljYWNiOyB9XG5cbi5zZWFyY2gtcmVzdWx0c19faW5mbyA+IHNwYW4ge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7IH1cblxuLnNlYXJjaC1yZXN1bHRzX190aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzljYWNiO1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICBtYXJnaW46IDEwcHggMCAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0c19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0c19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzLjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4OyB9IH1cblxuLnNlYXJjaC1yZXN1bHRzX19vcHRpb25zIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5zZWFyY2gtcmVzdWx0c19fb3B0aW9uczo6YmVmb3JlLCAuc2VhcmNoLXJlc3VsdHNfX29wdGlvbnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19vcHRpb25zOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VhcmNoLXJlc3VsdHNfX29wdGlvbnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9IH1cblxuLnNlYXJjaC1yZXN1bHRzX19jb3VudCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJDaXJjdWxhciBTdGQgQm9va1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzMzM7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VhcmNoLXJlc3VsdHNfX2NvdW50IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMjBweCk7IH0gfVxuICAuc2VhcmNoLXJlc3VsdHNfX2NvdW50IHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5zZWFyY2gtcmVzdWx0c19fcmVwZWF0IHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBCb29rXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogI2ZmMDgwZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBtaW4td2lkdGg6IDMwMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19yZXBlYXQ6OmJlZm9yZSwgLnNlYXJjaC1yZXN1bHRzX19yZXBlYXQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19yZXBlYXQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0c19fcmVwZWF0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIC5zZWFyY2gtcmVzdWx0c19fcmVwZWF0IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5zZWFyY2gtcmVzdWx0c19fcmVwZWF0IGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19yZXBlYXQgZm9ybSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNlYXJjaC1yZXN1bHRzX19yZXBlYXQgZm9ybSB7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2VhcmNoLXJlc3VsdHNfX3JlcGVhdCBmb3JtIHtcbiAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICAgIC5zZWFyY2gtcmVzdWx0c19fcmVwZWF0IGZvcm0gaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDM1cHg7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBwYWRkaW5nOiAwLjYyNXJlbSA3LjE4NzVyZW0gMC42MjVyZW0gMC45Mzc1cmVtOyB9XG5cbi5zZWFyY2gtcmVzdWx0c19fZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnNlYXJjaC1yZXN1bHRzX19mb3JtIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWF4LXdpZHRoOiA2MDBweDsgfVxuXG4udG9nZ2xlX19idXR0b25zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdkN2Q3ZDtcbiAgYm9yZGVyOiAzcHggc29saWQgIzY2NjtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDgwcHg7IH1cblxuLnRvZ2dsZV9fYnV0dG9ucy0tZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTAwOyB9XG5cbi50b2dnbGVfX3NsaWRlciB7XG4gIGJhY2tncm91bmQ6ICNmZjA4MGQ7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBoZWlnaHQ6IDM0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlO1xuICB3aWR0aDogMzRweDtcbiAgei1pbmRleDogMTsgfVxuICAudG9nZ2xlX19zbGlkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAxNnB4OyB9XG5cbi50b2dnbGVfX3NsaWRlci0tZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50b2dnbGVfX3NsaWRlci0tb25lIHtcbiAgbGVmdDogMDsgfVxuICAudG9nZ2xlX19zbGlkZXItLW9uZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy90b2dnbGUtbGVmdC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxM3B4OyB9XG5cbi50b2dnbGVfX3NsaWRlci0tdHdvIHtcbiAgbGVmdDogNDBweDsgfVxuICAudG9nZ2xlX19zbGlkZXItLXR3bzo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy90b2dnbGUtcmlnaHQuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTNweDsgfVxuXG4udG9nZ2xlX19sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDsgfVxuXG4udG9nZ2xlX19vcHRpb24ge1xuICBjb2xvcjogIzMzMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkNpcmN1bGFyIFN0ZCBNZWRpdW1cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLnRvZ2dsZV9fb3B0aW9uLnRvZ2dsZV9fb3B0aW9uLS1vbmUge1xuICAgIGxlZnQ6IC01MHB4OyB9XG4gIC50b2dnbGVfX29wdGlvbi50b2dnbGVfX29wdGlvbi0tdHdvIHtcbiAgICByaWdodDogLTUwcHg7IH1cbiAgLnRvZ2dsZV9fb3B0aW9uLnRvZ2dsZV9fb3B0aW9uLS1hY3RpdmUge1xuICAgIGNvbG9yOiAjOTM5NTk4OyB9XG5cbi5wbGFucy10ZWFzZXIge1xuICBiYWNrZ3JvdW5kOiAjZTRlNGU1O1xuICBwYWRkaW5nOiA2MHB4IDAgNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5wbGFucy10ZWFzZXJfX2lubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGxhbnMtdGVhc2VyX19pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICAucGxhbnMtdGVhc2VyX19pbm5lciwgLnBsYW5zLXRlYXNlcl9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnBsYW5zLXRlYXNlcl9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5wbGFucy10ZWFzZXJfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtLjAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wbGFucy10ZWFzZXJfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMi42MjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuXG4ucGxhbnMtdGVhc2VyX190ZXh0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiQ2lyY3VsYXIgU3RkIEJvb2tcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM2NjY7XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMjBweCBhdXRvIDA7XG4gIG1heC13aWR0aDogODQwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGxhbnMtdGVhc2VyX190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAucGxhbnMtdGVhc2VyX190ZXh0IGEge1xuICAgIGNvbG9yOiAjM2Q5NmNhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5wbGFucy10ZWFzZXJfX3RleHQgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ucGxhbnMtdGVhc2VyX19wbGFucyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNDhweCAwIDA7IH1cblxuLnBsYW4tY2FyZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogMXB4IDFweCA1cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMCAxMnB4IDI0cHg7XG4gIG1heC13aWR0aDogMjc4cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnBsYW4tY2FyZF9fY29udGVudCB7XG4gIHBhZGRpbmc6IDIwcHg7IH1cblxuLnBsYW4tY2FyZF9fdGl0bGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4OyB9XG5cbi5wbGFuLWNhcmRfX2Rlc2Mge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZTRlNTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNGU0ZTU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgaGVpZ2h0OiAxNDBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMTJweCAwIDE2cHg7IH1cblxuLnBsYW4tY2FyZF9fbGV2ZWwge1xuICBjb2xvcjogI2M5Y2FjYjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiAxMnB4IDAgMDsgfVxuICAucGxhbi1jYXJkX19sZXZlbCBzcGFuIHtcbiAgICBjb2xvcjogIzMzMztcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAucGxhbi1jYXJkX19sZXZlbCBhIHtcbiAgICBjb2xvcjogIzNkOTZjYTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLnBsYW4tY2FyZF9fbGV2ZWwgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ucGxhbi1jYXJkX19pbWcge1xuICBtYXgtaGVpZ2h0OiAxNTVweDtcbiAgbWF4LXdpZHRoOiAyODBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ua2lvc2stdGVtcGxhdGUgLm5hdl9fbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5raW9zay10ZW1wbGF0ZSAud3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cblxuLmtpb3NrLXRlbXBsYXRlIC5pZnJhbWUtcGFyZW50IHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiA3MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7IH1cblxuLmtpb3NrLXRlbXBsYXRlIGlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5raW9zay1tZW51IHtcbiAgZm9udC1mYW1pbHk6ICdCYXJsb3cgQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDQwcHggMCAxMHB4OyB9XG5cbi5raW9zay10ZW1wbGF0ZS1zaW5nbGUta2lvc2staWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmtpb3NrLXRlbXBsYXRlLXNpbmdsZS1raW9zay1pZnJhbWUgLmtpb3NrLW1lbnUge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5raW9zay10ZW1wbGF0ZS1zaW5nbGUta2lvc2staWZyYW1lIGlmcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5raW9zay1tZW51X19pbnRybyB7XG4gIC1tb3otYm94LXNoYWRvdzogMCAxcHggNXB4IDAgI2NjY2NjYztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCA1cHggMCAjY2NjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDFweCA1cHggMCAjY2NjY2NjO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDsgfVxuICAua2lvc2stbWVudV9faW50cm8gLmtpb3NrX3RvcF9fbG9nbyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoXCIuLi9pbWcvZWEtbG9nby1sYW5kc2NhcGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICB3aWR0aDogMjgwcHg7IH1cbiAgICAua2lvc2stbWVudV9faW50cm8gLmtpb3NrX3RvcF9fbG9nbyBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmtpb3NrLW1lbnVfX2ludHJvIGEge1xuICAgIGNvbG9yOiAjZmYwODBkO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5raW9zay1tZW51X19pbnRybyAua2lvc2tfdG9wX19ob21lLFxuICAua2lvc2stbWVudV9faW50cm8gLmtpb3NrX3RvcF9fbG9nb3V0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDE1cHgpOyB9XG4gIC5raW9zay1tZW51X19pbnRybyAua2lvc2tfdG9wX19ob21lIHtcbiAgICBsZWZ0OiAyMHB4OyB9XG4gIC5raW9zay1tZW51X19pbnRybyAua2lvc2tfdG9wX19sb2dvdXQge1xuICAgIHJpZ2h0OiAyMHB4OyB9XG5cbi5raW9za19fbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmtpb3NrX19saXN0OjpiZWZvcmUsIC5raW9za19fbGlzdDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAua2lvc2tfX2xpc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ua2lvc2stbWVudV9fdGlsZV9wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMTVweCBhdXRvIDQ1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiA5MCU7IH1cbiAgLmtpb3NrLW1lbnVfX3RpbGVfcHJpbWFyeSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAua2lvc2stbWVudV9fdGlsZV9wcmltYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMTVweCAxMnB4IDQ1cHg7XG4gICAgICB3aWR0aDogMzUlOyB9IH1cblxuLmtpb3NrLW1lbnVfX3RpbGVfaW1hZ2Uge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMCAxMnB4IDI0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA5MCU7IH1cbiAgLmtpb3NrLW1lbnVfX3RpbGVfaW1hZ2UgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmtpb3NrLW1lbnVfX3RpbGVfaW1hZ2Uge1xuICAgICAgbWFyZ2luOiA4cHggNXB4O1xuICAgICAgd2lkdGg6IDQ3JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmtpb3NrLW1lbnVfX3RpbGVfaW1hZ2Uge1xuICAgICAgbWFyZ2luOiA4cHggNXB4O1xuICAgICAgd2lkdGg6IDMwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgICAua2lvc2stbWVudV9fdGlsZV9pbWFnZSB7XG4gICAgICBtYXJnaW46IDhweCA1cHg7XG4gICAgICB3aWR0aDogMjQlOyB9IH1cblxuLnByaW1hcnlfdGlsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA4MGQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZjA4MGQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggNXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG1hcmdpbjogMCAxMnB4IDI0cHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wcmltYXJ5X3RpbGUgLnRpdGxlIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLmltYWdlX3RpbGUge1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBtYXJnaW46IDAgNXB4OyB9XG4gIC5pbWFnZV90aWxlIC50aXRsZV9ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDE1cHggMTVweDtcbiAgICBoZWlnaHQ6IDkwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pbWFnZV90aWxlIC50aXRsZSB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiA5MHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdG9wOiAtMnB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5pbWFnZV90aWxlIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMTVweCAxNXB4IDAgMDtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5ub3Nob3d0aWxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ua2lvc2tfaWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAua2lvc2tfaWZyYW1lIGJvZHkge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwdmg7IH1cblxuLmtpb3NrLWJhbm5lciB7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDQwcHg7IH1cblxuLmtpb3NrLWJhbm5lcmFkIHtcbiAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmxpc3RfaW1hZ2VfdGlsZSB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGlzdF9pbWFnZV90aWxlOjpiZWZvcmUsIC5saXN0X2ltYWdlX3RpbGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RfaW1hZ2VfdGlsZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RfaW1hZ2VfdGlsZSB7XG4gICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgLmxpc3RfaW1hZ2VfdGlsZSB7XG4gICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWF4LWhlaWdodDogOTAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5sYXJnZV90aWxlcyB7XG4gICAgZmxleDogMCAwIDc4OXB4OyB9IH1cblxuLmNvb2tpZS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXItdG9wOiA0cHggc29saWQgIzAwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBwYWRkaW5nOiAyNHB4IDMycHggMzZweDtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDFzO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogODk5OTsgfVxuICAuY29va2llLWJhbm5lci5oaWRkZW4ge1xuICAgIGJvdHRvbTogLTEwMHZoOyB9XG4gIC5jb29raWUtYmFubmVyIGg0IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICAuY29va2llLWJhbm5lciBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29va2llLWJhbm5lcl9faW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4uY29va2llLWJhbm5lcl9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWZmZiAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNlYWVmZmYgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgfVxuICAuY29va2llLWJhbm5lcl9fYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwODBkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmYwODBkICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuXG4uY29va2llLWJhbm5lcl9fY29sXzEge1xuICBwYWRkaW5nOiAwIDI0cHggMCAwO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvb2tpZS1iYW5uZXJfX2NvbF8xIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uY29va2llLWJhbm5lcl9fY29sXzIge1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uc21hcnRfX3NlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAzNy41cHg7XG4gIG1hcmdpbi1ib3R0b206IDYyLjVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbWFydF9fc2VjdGlvbjpudGgtY2hpbGQob2RkKSAuc21hcnRfX3dyYXAge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnNtYXJ0X193cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuLnNtYXJ0X19jb3ZlciB7XG4gIHBhZGRpbmctYm90dG9tOiA2NiU7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc21hcnRfX2NvdmVyIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjklOyB9IH1cblxuLnNtYXJ0X19pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICBtYXJnaW46IGF1dG87IH1cblxuLnNtYXJ0X19jb250ZW50IHtcbiAgcGFkZGluZzogMjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMjMyNjtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbWFydF9fY29udGVudCB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLnNtYXJ0X19jb250ZW50IHAge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zbWFydF9fbG9nb3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbi5zbWFydF9fbG9nby13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNtYXJ0X19sb2dvLXdyYXAge1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9IH1cblxuLnNtYXJ0X19wYXJhZ3JhcGgge1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbi5zbWFydF9fbGluayB7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLnNtYXJ0X19idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogNXB4OyB9XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IGFic29sdXRlICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiAxcHggI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiAxcHggI3skaW1wb3J0YW50fTtcbiAgcGFkZGluZzogMCAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogaGlkZGVuICN7JGltcG9ydGFudH07XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCkgI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAjeyRpbXBvcnRhbnR9O1xuICBib3JkZXI6IDAgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZihcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogc3RhdGljICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiBhdXRvICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogdmlzaWJsZSAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiBhdXRvICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludChcbiAgJHNtYWxsOiB0cnVlLFxuICAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWVcbikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKGF1dG8sIC16Zi1ib29sKCRzbWFsbCksIC16Zi1ib29sKCRhdXRvLWluc2VydC1icmVha3BvaW50cykpIHtcbiAgICBAY29udGVudFxuICB9O1xufVxuXG4vLy8gSXRlcmF0ZXMgd2l0aCBgQGNvbnRlbnRgIHRocm91Z2ggdGhlIGdpdmVuIGxpc3Qgb2YgYnJlYWtwb2ludHMgYCRicmVha3BvaW50c2AuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxMaXN0fSAkYnJlYWtwb2ludHMgW2F1dG9dIC0gQnJlYWtwb2ludHMgdG8gaXRlcmF0ZXMgb24uIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58TnVsbH0gJHplcm8tYnJlYWtwb2ludCBbbnVsbF0gLSBXaGV0aGVyIHRoZSB6ZXJvLWJyZWFrcG9pbnQgKG9mdGVuIGBzbWFsbGApIG11c3QgYmUgaW5jbHVkZWQuIElmIGB0cnVlYCwgaXQgd2lsbCBhbHdheXMgYmUgYWRkZWQgdG8gdGhlIGxpc3QgaWYgbm90IGFscmVhZHkgdGhlcmUuIElmIGBmYWxzZWAsIGl0IHdpbGwgYWx3YXlzIGJlIHJlbW92ZWQuIERvZXMgbm90aGluZyBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxLZXl3b3JkfSAkbWVkaWEtcXVlcmllcyBbdHJ1ZV0gLSBXaGV0aGVyIG1lZGlhLXF1ZXJpZXMgbXVzdCBiZSBnZW5lcmF0ZWQuIElmIGBmb3ItbGlzdHNgLCBvbmx5IGdlbmVyYXRlIG1lZGlhLXF1ZXJpZXMgd2hlbiBgJGJyZWFrcG9pbnRzYCBpcyBhIGxpc3QuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludC1pbihcbiAgJGJyZWFrcG9pbnRzOiBhdXRvLFxuICAkemVyby1icmVha3BvaW50OiBudWxsLFxuICAkbWVkaWEtcXVlcmllczogdHJ1ZVxuKSB7XG4gICQtbGlzdDogKCk7XG4gICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiB0cnVlO1xuXG4gIC8vIFJldHJpZXZlIHRoZSBsaXN0IG9mIGJyZWFrcG9pbnQocykgdG8gaXRlcmF0ZSBvbi5cbiAgQGlmICRicmVha3BvaW50cyA9PSBhdXRvIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdsaXN0JyB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludHM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdzdHJpbmcnIHtcbiAgICAkLWxpc3Q6ICgkYnJlYWtwb2ludHMpO1xuICAgICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiBmYWxzZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIFwiJGJyZWFrcG9pbnRzXCIgaW4gXCItemYtZWFjaC1icmVha3BvaW50LWluKClcIi4gR290IFwiI3skYnJlYWtwb2ludHN9XCIgKCN7dHlwZS1vZigkYnJlYWtwb2ludHMpfSkuIEV4cGVjdGVkIGEgYnJlYWtwb2ludCBuYW1lLCBhIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgXCJhdXRvXCInO1xuICB9XG5cbiAgLy8gQWRkIG9yIHJlbW92ZSB0aGUgemVybyBicmVha3BvaW50IGFjY29yZGluZyB0byBgJHplcm8tYnJlYWtwb2ludGBcbiAgQGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gdHJ1ZSB7XG4gICAgJC1saXN0OiBqb2luKCgkLXpmLXplcm8tYnJlYWtwb2ludCksIHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KSk7XG4gIH1cbiAgQGVsc2UgaWYgJHplcm8tYnJlYWtwb2ludCA9PSBmYWxzZSB7XG4gICAgJC1saXN0OiBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBJdGVyYXRlIG9uIGJyZWFrcG9pbnQocylcbiAgQGVhY2ggJGJwIGluICQtbGlzdCB7XG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiAkYnAgIWdsb2JhbDtcblxuICAgIEBpZiAoJG1lZGlhLXF1ZXJpZXMgPT0gdHJ1ZVxuICAgICAgb3IgKCRtZWRpYS1xdWVyaWVzID09ICdmb3ItbGlzdHMnIGFuZCAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdCkpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRicC12YWx1ZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgICAgQGlmICRicC12YWx1ZSAhPSBudWxsIHtcbiAgICAgICAgJG5hbWU6ICRicC12YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIE91dHB1dHMgQ1NTIGNsYXNzZXMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIGZvdW5kYXRpb24tZ3JpZChcbiAgJHJvdzogJ3JvdycsXG4gICRjb2x1bW46ICdjb2x1bW4nLFxuICAkY29sdW1uLXJvdzogJ2NvbHVtbi1yb3cnLFxuICAkZ3V0dGVyOiAnZ3V0dGVyJyxcbiAgJHB1c2g6ICdwdXNoJyxcbiAgJHB1bGw6ICdwdWxsJyxcbiAgJGNlbnRlcjogJ2NlbnRlcmVkJyxcbiAgJHVuY2VudGVyOiAndW5jZW50ZXJlZCcsXG4gICRjb2xsYXBzZTogJ2NvbGxhcHNlJyxcbiAgJHVuY29sbGFwc2U6ICd1bmNvbGxhcHNlJyxcbiAgJG9mZnNldDogJ29mZnNldCcsXG4gICRlbmQ6ICdlbmQnLFxuICAkZXhwYW5kZWQ6ICdleHBhbmRlZCcsXG4gICRibG9jazogJ2Jsb2NrJ1xuKSB7XG4gIC8vIFJvd1xuICAuI3skcm93fSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAvLyBDb2xsYXBzaW5nXG4gICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cbiAgICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCAoZnVsbC13aWR0aCkgcm93XG4gICAgJi4jeyRleHBhbmRlZH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLiN7JGV4cGFuZGVkfSkgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgIEBpZiB0eXBlLW9mKCRncmlkLWNvbHVtbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgIC8vIFN0YXRpYyAodW5yZXNwb25zaXZlKSByb3cgZ3V0dGVyc1xuICAgICAgLy9cbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGdyaWQtY29sdW1uLWd1dHRlciB7XG4gICAgICAgICYuI3skZ3V0dGVyfS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLiN7JGNvbHVtbn0ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sO1xuXG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICYuI3skZW5kfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAuI3skcm93fSAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIENvbHVtbiB3aWR0aFxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICAgIEBpZiAkaSA8ICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAgIEBpZiAkcHVzaCB7XG4gICAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAkcHVsbCB7XG4gICAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLSRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgQGlmICRvZmZzZXQge1xuICAgICAgICAuI3skLXpmLXNpemV9LSN7JG9mZnNldH0tI3skb30ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLW9mZigkbyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KCRpLCAnLiN7JGNvbHVtbn0nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7IH1cblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRleHBhbmRlZH0uI3skcm93fSAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfS4jeyRyb3d9IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkLXpmLXNpemUpOyB9XG4gICAgfVxuXG4gICAgLy8gUG9zaXRpb25pbmdcbiAgICBAaWYgJGNlbnRlciB7XG4gICAgICAuI3skLXpmLXNpemV9LSN7JGNlbnRlcn0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgICQtZ3V0dGVyLXVucG9zLXNlbGVjdG9yOiAoXG4gICAgICBpZigkdW5jZW50ZXIsICcuI3skLXpmLXNpemV9LSN7JHVuY2VudGVyfScsIG51bGwpLFxuICAgICAgaWYoJHB1c2gsICcuI3skLXpmLXNpemV9LSN7JHB1c2h9LTAnLCBudWxsKSxcbiAgICAgIGlmKCRwdWxsLCAnLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0wJywgbnVsbCksXG4gICAgKTtcbiAgICBAaWYgKCR1bmNlbnRlciBvciAkcHVzaCBvciAkcHVsbCkge1xuICAgICAgI3skLWd1dHRlci11bnBvcy1zZWxlY3Rvcn0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC11bnBvcztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBCbG9jayBncmlkIGNvbHVtbnNcbiAgLiN7JGNvbHVtbn0tI3skYmxvY2t9IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1tYXJnaW47XG4gIH1cblxuICBAaWYgJGNvbHVtbiA9PSAnY29sdW1uJyBhbmQgaGFzLXZhbHVlKCRncmlkLWNvbHVtbi1hbGlhcykge1xuICAgIC4jeyRncmlkLWNvbHVtbi1hbGlhc30ge1xuICAgICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG4gICAgICBAZXh0ZW5kIC5jb2x1bW47XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtblxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRndXR0ZXIgW2F1dG9dXG4vLy8gICBTcGFjaW5nIGJldHdlZW4gY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJGd1dHRlcnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIGd1dHRlciByZXNwb25zaXZlLCB1c2luZyB0aGUgJGd1dHRlcnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGd1dHRlciwgJGd1dHRlcnMpIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBXZWIgc3RhbmRhcmQgUGl4ZWxzIHBlciBpbmNoLiAoMWRkcHggLyAkc3RkLXdlYi1kcGkpID0gMWRwaVxuICAvLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy12YWx1ZXMtMy8jYWJzb2x1dGUtbGVuZ3Roc1xuICAkc3RkLXdlYi1kcGk6IDk2O1xuXG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgb2YgdGhlIGZvbGxvd2luZyBicmVha3BvaW50XG4gICRicC1uZXh0OiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1pbjogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1pbi13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IG51bGw7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBJZiBuYW1lZCwgbmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuICAkbmFtZTogbnVsbDtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBIaURQSSBicmVha3BvaW50XG4gICRoaWRwaTogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG5cbiAgLy8gSWYgYSBicmVha3BvaW50IG5hbWUgaXMgZ2l2ZW4sIGdldCBpdHMgdmFsdWUgZnJvbSB0aGUgJGJyZWFrcG9pbnRzLyRicmVha3BvaW50cy1oaWRwaSBtYXAuXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cy1oaWRwaSwgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cy1oaWRwaSwgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dC1udW1iZXIoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApO1xuICAgICAgJGhpZHBpOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyIGAkYnJlYWtwb2ludHNgIG9yIGAkYnJlYWtwb2ludHMtaGlkcGlgIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRuYW1lIGFuZCAkZGlyID09ICdvbmx5JyB7XG4gICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIE9ubHkgJ29ubHknIGFuZCAndXAnIGhhdmUgYSBtaW4gbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICd1cCcge1xuICAgICRicC1taW46IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gIH1cbiAgLy8gT25seSAnb25seScgYW5kICdkb3duJyBoYXZlIGEgbWF4IGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgdmFsdWUsIHVzZSBpdCBhcyBtYXggbGltaXQuXG4gICAgQGlmIG5vdCAkbmFtZSB7XG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBuYW1lZCwgdGhlIG1heCBsaW1pdCBpcyB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnQgLSAxcHguXG4gICAgQGVsc2UgaWYgJGJwLW5leHQge1xuICAgICAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAgICAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgJGJwLW5leHQgLSAoMS8kc3RkLXdlYi1kcGkpLCAtemYtYnAtdG8tZW0oJGJwLW5leHQpIC0gMC4wMDEyNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIG1pbiBhbmQgbWF4IGxpbWl0cy5cbiAgQGlmICRoaWRwaSB7XG4gICAgLy8gR2VuZXJhdGUgdmFsdWVzIGluIERQSSBpbnN0ZWFkIG9mIERQUFggZm9yIGFuIElFOS0xMS9PcGVyYSBtaW5pIGNvbXBhdGliaWxpdHkuXG4gICAgLy8gU2VlIGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgICAkYnAtbWluLWRwaTogaWYoJGJwLW1pbiwgJGJwLW1pbiAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1taW4pO1xuICAgICRicC1tYXgtZHBpOiBpZigkYnAtbWF4LCAkYnAtbWF4ICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1heCk7XG4gICAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgsICctd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8nLCAnLXdlYmtpdC1tYXgtZGV2aWNlLXBpeGVsLXJhdGlvJyksXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLWRwaSwgJGJwLW1heC1kcGksICdtaW4tcmVzb2x1dGlvbicsICdtYXgtcmVzb2x1dGlvbicpLFxuICAgICAgJywgJyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCk7XG4gIH1cbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBhbmQgYCRicmVha3BvaW50cy1oaWRwaWAgbWFwcywgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIElmIG11bHRpcGxlIHZhbHVlcyBhcmUgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBnZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciBlYWNoIG9mIHRoZW0gYXMgZGVzY3JpYmVkIGFib3ZlLlxuLy8vIFNpbmNlIHRoZSBjb250ZW50IGlzIGR1cGxpY2F0ZWQgZm9yIGVhY2ggYnJlYWtwb2ludCwgdGhpcyBtaXhpbiBzaG91bGQgb25seSBiZSB1c2VkIHdpdGggcHJvcGVydGllcyB0aGF0XG4vLy8gY2hhbmdlIGFjcm9zcyBicmVha3BvaW50cy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZXMuLi4gLSBCcmVha3BvaW50IG5hbWUgb3IgcHgvcmVtL2VtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZXMuLi4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHZhbHVlcykge1xuICAgICR2YWx1ZTogbnRoKCR2YWx1ZXMsICRpKTtcbiAgICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsIG50aCgkdmFsdWUsIDEpKTtcbiAgICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcbiAgICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAgICRkaXI6IGlmKGxlbmd0aCgkdmFsdWUpID4gMSwgbnRoKCR2YWx1ZSwgMiksIHVwKTtcblxuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAgIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAgIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICAgIC8vIGdlbmVyYXRlIHByaW50IGlmIHRoZSBicmVha3BvaW50IGFmZmVjdHMgdGhlIHByaW50LWJyZWFrcG9pbnQgKG9yIHNtYWxsZXIpLlxuICAgICAgLy8gVGhpcyBtZWFucyB0aGUgY3VycmVudCBjb25kaXRpb24gb25seSBuZWVkcyB0byBiZSBleHRlbmRlZCBzbyAnZG93bicgYWx3YXlzIGdlbmVyYXRlcyBwcmludC5cbiAgICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgKCRicCA8PSAkcGJwIG9yICRkaXIgPT0gZG93bikge1xuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBudW1iZXIgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAkbnVtYmVyIC0gTnVtYmVyIHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgbnVtYmVyIGZvbGxvd2luZyBgJG51bWJlcmAsIGlmIGAkbnVtYmVyYCB3YXMgZm91bmQuIElmIGAkbnVtYmVyYCB3YXMgbm90IGZvdW5kLCBvciBgJG51bWJlcmAgd2FzIHRoZSBiaWdnZXN0IG51bWJlciBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQtbnVtYmVyKCRtYXAsICRudW1iZXIpIHtcblxuICAkbmV4dF9udW1iZXI6IG51bGw7XG5cbiAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgIEBpZiB0eXBlLW9mKCR2KSA9PSAnbnVtYmVyJyBhbmQgJHYgPiAkbnVtYmVyIGFuZCAoJG5leHRfbnVtYmVyID09IG51bGwgb3IgJHYgPCAkbmV4dF9udW1iZXIpIHtcbiAgICAgICRuZXh0X251bWJlcjogJHY7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV4dF9udW1iZXI7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuLy8vIFJldHVybiB0aGUgYmVzdCBicmVha3BvaW50IHRvIHVzZSBhY2NvcmRpbmcgdG8gdGhlIGNhbGxpbmcgY29udGV4dC4gSXQgcmV0dXJucyBpbiBvcmRlcjpcbi8vLyAxLiB0aGUgZ2l2ZW4gYCR2YWx1ZWAgYXJndW1lbnQgaWYgaXQgaXMgbm90IG51bGwuXG4vLy8gMi4gdGhlIGdsb2JhbCBicmVha3BvaW50IGNvbnRleHQgYCQtemYtc2l6ZWAgaWYgaXQgaXMgbm90IG51bGwgKGxpa2UgaWYgY2FsbGVkIGluc2lkZSB0aGVuIGBicmVha3BvaW50KClgIG1peGluKVxuLy8vIDMuIHRoZSBnaXZlbiBgJGRlZmF1bHRgIGFyZ3VtZW50LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgaW4gcHJpb3JpdHkgaWYgbm9uLW51bGwuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGVmYXVsdCBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBieSBkZWZhdWx0IGlmIG5vIG90aGVyIHZhbHVlIGNhbiBiZSB1c2VkLlxuLy8vXG4vLy8gQHJldHVybiB7S2V5d29yZH0gVGhlIHJlc29sdmVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkdmFsdWU6IG51bGwsICRkZWZhdWx0OiBudWxsKSB7XG4gIEBpZiAoJHZhbHVlICE9IG51bGwpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuICBAZWxzZSBpZiAodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgIEByZXR1cm4gJC16Zi1zaXplO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICRkZWZhdWx0O1xuICB9XG59XG5cbi8vLyBSZXR1cm4gbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gdGhlIGdpdmVuIG1pbiBhbmQvb3IgbWF4IGxpbWl0cy5cbi8vLyBJZiBhIGxpbWl0IGlzIGVxdWFsIHRvIGBudWxsYCBvciBgMGAsIGl0IGlzIGlnbm9yZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1pbiBbMF0gLSBNaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggWzBdIC0gTWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWluLW5hbWUgWydtaW4td2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRlbGltaXRlciBbJ21heC13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gTWVkaWEgUXVlcnkgc3RyaW5nLlxuQGZ1bmN0aW9uIC16Zi1icC1qb2luKFxuICAkbWluOiAwLFxuICAkbWF4OiAwLFxuICAkbWluLW5hbWU6ICdtaW4td2lkdGgnLFxuICAkbWF4LW5hbWU6ICdtYXgtd2lkdGgnXG4pIHtcbiAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICBpZigkbWluIGFuZCAkbWluID4gMCwgJygjeyRtaW4tbmFtZX06ICN7JG1pbn0pJywgbnVsbCksXG4gICAgaWYoJG1heCBhbmQgJG1heCA+IDAsICcoI3skbWF4LW5hbWV9OiAjeyRtYXh9KScsIG51bGwpLFxuICAgICcgYW5kICcpO1xufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDE2KSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuXG4vLy8gUGFyc2UgdGhlIGdpdmVuIGAkZnJhY3Rpb25gIHRvIG51bWVyYXRvcnMgYW5kIGRlbnVtZXJhdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJGZyYWN0aW9uIC0gVmFsdWUgcmVwcmVzZW50aW5nIGEgZnJhY3Rpb24gdG8gcGFyc2UuIEl0IGNhbiBiZSBmb3JtYXR0ZWQgYXMgYDUwJWAsIGAxIG9mIDJgLCBgMS8yYCBvciBgNTBgIChubyBkZW5vbWluYXRvciB3b3VsZCBiZSByZXR1cm5lZCkuXG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBMaXN0IG9mIHBhcnNlZCB2YWx1ZXMgd2l0aCBudW1lcmF0b3IgYXQgZmlyc3QgcG9zaXRpb24gYW5kIGRlbnVtZXJhdG9yIGFzIHNlY29uZC4gVGhlc2UgdmFsdWVzIG1heSBiZSBudWxsLlxuQGZ1bmN0aW9uIHpmLXBhcnNlLWZyYWN0aW9uKCRmcmFjdGlvbikge1xuXG4gIEBpZiB0eXBlLW9mKCRmcmFjdGlvbikgPT0gJ251bWJlcicge1xuICAgIC8vIFwiNTAlXCJcbiAgICBAaWYgdW5pdCgkZnJhY3Rpb24pID09ICclJyB7XG4gICAgICBAcmV0dXJuIChzdHJpcC11bml0KCRmcmFjdGlvbiksIDEwMCk7XG4gICAgfVxuICAgIEBlbHNlIGlmICh1bml0KCRmcmFjdGlvbikgPT0gJycpIHtcbiAgICAgIC8vIFwiMC41XCJcbiAgICAgIEBpZiAkZnJhY3Rpb24gPCAxIHtcbiAgICAgICAgQHJldHVybiAoJGZyYWN0aW9uICogMTAwLCAxMDApO1xuICAgICAgfVxuICAgICAgLy8gXCI1MFwiXG4gICAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gKCRmcmFjdGlvbiwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgdHlwZS1vZigkZnJhY3Rpb24pID09ICdsaXN0JyB7XG4gICAgLy8gXCI1MCBvZiAxMDBcIiwgXCI1MC8xMDBcIi4uLlxuICAgIEBpZiBsZW5ndGgoJGZyYWN0aW9uKSA9PSAzXG4gICAgICBhbmQgdHlwZS1vZihudGgoJGZyYWN0aW9uLCAxKSA9PSAnbnVtYmVyJylcbiAgICAgIGFuZCB0eXBlLW9mKG50aCgkZnJhY3Rpb24sIDMpID09ICdudW1iZXInKSB7XG4gICAgICBAcmV0dXJuIChudGgoJGZyYWN0aW9uLCAxKSwgbnRoKCRmcmFjdGlvbiwgMykpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gKG51bGwsIG51bGwpO1xufVxuXG4vLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBgJHZhbHVlYCByZXByZXNlbnRzIGEgZnJhY3Rpb24uIFN1cHBvcnRzIGZvcm1hdHMgbGlrZSBgNTAlYCwgYDEgb2YgMmAsIGAxIHBlciAyYCBvciBgMS8yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlIC0gVmFsdWUgdG8gdGVzdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhbGxvdy1uby1kZW5vbWluYXRvciBbZmFsc2VdIC0gSWYgYHRydWVgLCBzaW1wbGUgbnVtYmVycyB3aXRob3V0IGRlbm9taW5hdG9ycyBsaWtlIGA1MGAgYXJlIHN1cHBvcnRlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IGB0cnVlYCBpZiBgJHZhbHVlYCByZXByZXNlbnRzIGEgZnJhY3Rpb24sIGBmYWxzZWAgb3RoZXJ3aXNlLlxuQGZ1bmN0aW9uIHpmLWlzLWZyYWN0aW9uKCR2YWx1ZSwgJGFsbG93LW5vLWRlbm9taW5hdG9yOiBmYWxzZSkge1xuICAkcGFyc2VkOiB6Zi1wYXJzZS1mcmFjdGlvbigkdmFsdWUpO1xuICBAcmV0dXJuIG5vdChudGgoJHBhcnNlZCwgMSkgPT0gbnVsbFxuICAgIG9yIChudGgoJHBhcnNlZCwgMikgPT0gbnVsbCBhbmQgJGFsbG93LW5vLWRlbm9taW5hdG9yID09IGZhbHNlKSk7XG59XG5cbi8vLyBDYWxjdWxhdGUgYSBwZXJjZW50YWdlIGZyb20gYSBnaXZlbiBmcmFjdGlvbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRmcmFjdGlvbiAtIFZhbHVlIHJlcHJlc2VudGluZyBhIGZyYWN0aW9uIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIHBlcmNlbnRhZ2UsIGZvcm1hdHRlZCBhcyBgNTBgIChyZWxhdGl2ZSB0byBgJGRlbm9taW5hdG9yYCksIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZGVub21pbmF0b3IgLSBEZWZhdWx0IHZhbHVlIHRvIHVzZSBhcyBkZW5vbWluYXRvciB3aGVuIGAkZnJhY3Rpb25gIHJlcHJlc2VudHMgYW4gYWJzb2x1dGUgdmFsdWUuXG5AZnVuY3Rpb24gZnJhY3Rpb24tdG8tcGVyY2VudGFnZShcbiAgJGZyYWN0aW9uLFxuICAkZGVub21pbmF0b3I6IG51bGxcbikge1xuICAkcGFyc2VkOiB6Zi1wYXJzZS1mcmFjdGlvbigkZnJhY3Rpb24pO1xuICAkcGFyc2VkLW5vbWluYXRvcjogbnRoKCRwYXJzZWQsIDEpO1xuICAkcGFyc2VkLWRlbm9taW5hdG9yOiBudGgoJHBhcnNlZCwgMik7XG5cbiAgQGlmICRwYXJzZWQtbm9taW5hdG9yID09IG51bGwge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcImZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoKVwiLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cbiAgQGlmICRwYXJzZWQtZGVub21pbmF0b3IgPT0gbnVsbCB7XG4gICAgQGlmIHR5cGUtb2YoJGRlbm9taW5hdG9yKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkcGFyc2VkLWRlbm9taW5hdG9yOiAkZGVub21pbmF0b3I7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciAnRXJyb3Igd2l0aCBcImZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoKVwiLiBBIGRlZmF1bHQgXCIkZGVub21pbmF0b3JcIiBpcyByZXF1aXJlZCB0byBzdXBwb3J0IGFic29sdXRlIHZhbHVlcyc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBwZXJjZW50YWdlKCRwYXJzZWQtbm9taW5hdG9yIC8gJHBhcnNlZC1kZW5vbWluYXRvcik7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBsaXN0IG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiAod2l0aG91dCBxdW90ZXMpIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgQHJldHVybiBmcmFjdGlvbi10by1wZXJjZW50YWdlKCRjb2x1bW5zLCAkZGVub21pbmF0b3I6ICRncmlkLWNvbHVtbi1jb3VudCk7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIFBvc2l0aW9uXG4gIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhhdXRvKTtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBJdCBjYW4gYmU6XG4vLy8gICAqIEEgbnVtYmVyOiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudFxuLy8vICAgICBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGVcbi8vLyAgICAgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LlxuLy8vICAgKiBgY2VudGVyYDogQ29sdW1uIHdpbGwgYmUgY2VudGVyZWRcbi8vLyAgICogYGF1dG9gOiBDb2x1bW4gd2lsbCBiZSBwdXNoZWQgdG8gdGhlIGxlZnQgKG9yIHRvIHRoZSByaWdodCBmb3IgdGhlIGxhc3QgY29sdW1uKS5cbkBtaXhpbiBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pIHtcbiAgLy8gQXV0byBwb3NpdGlvbmluZ1xuICBAaWYgJHBvc2l0aW9uID09IGF1dG8ge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gTGFzdCBjb2x1bW4gYWxpZ25tZW50XG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFB1c2gvcHVsbFxuICBAZWxzZSBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cblxuICAvLyBDZW50ZXIgcG9zaXRpb25pbmdcbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgXCJjZW50ZXJcIiBvciBcImF1dG9cIi4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGF1dG8pO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNvbHVtbiddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZ3V0dGVyXG4vLy8gICBUaGUgZ3V0dGVyIHRvIGFwcGx5IHRvIGNoaWxkIGVsZW1lbnRzLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gJGdyaWQtY29sdW1uLWd1dHRlciB3aWxsIHVzZSB0aGUgdmFsdWVzIGluIHRoZSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIG1hcCwgaW5jbHVkaW5nIGJyZWFrcG9pbnQgc2l6ZXMuXG4vLy8gICAtIEEgZml4ZWQgbnVtZXJpYyB2YWx1ZSB3aWxsIGFwcGx5IHRoaXMgZ3V0dGVyIHRvIGFsbCBicmVha3BvaW50cy5cbkBtaXhpbiBncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jb2x1bW4nLFxuICAkZ3V0dGVyOiBudWxsXG4pIHtcbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgxLyRuKTtcblxuICAgIC8vIElmIGEgJGd1dHRlciB2YWx1ZSBpcyBwYXNzZWRcbiAgICBAaWYoJGd1dHRlcikge1xuICAgICAgLy8gR3V0dGVyc1xuICAgICAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRndXR0ZXIge1xuICAgICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkdmFsdWUpIC8gMjtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgjeyRufW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGV4dHJhIENTUyB0byBibG9jayBncmlkIGNoaWxkcmVuIHNvIHRoZSBsYXN0IGl0ZW1zIGluIHRoZSByb3cgY2VudGVyIGF1dG9tYXRpY2FsbHkuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbHVtbnMsIG5vdCB0aGUgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXBwZWFyIGluIGVhY2ggcm93LlxuQG1peGluIGdyaWQtbGF5b3V0LWNlbnRlci1sYXN0KCRuKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRvICRuIHtcbiAgICBAaWYgJGkgPT0gMSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRufW4rMSk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gMTAwLyRuICogJGkpIC8gMiAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRufW4rMSk6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAuMDAxMjU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAuMDAxMjU7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxvYXRcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcyB7XG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsImh0bWwge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG5cbiAgICAmLmFwcC12aWV3IHtcbiAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY2VudHJlLW1lbnUge1xuICAgICAgICAgICAgJi5zdGlja3ktbmF2LS1hY3RpdmUge1xuICAgICAgICAgICAgICAgIC5jZW50cmUtbWVudV9fd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudGh1Yi1tZW51IHtcbiAgICAgICAgICAgICYuc3RpY2t5LW5hdi0tYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAuY29udGVudGh1Yi1tZW51X193cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXdzLWZsYXNoIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuYm9keSB7XG4gICAgY29sb3I6ICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNpcmN1bGFyLWJvb2s7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWluLXdpZHRoOiAzMDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBkZWZpbmUtYnJlYWtwb2ludCgnYnAtcycpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZGVmaW5lLWJyZWFrcG9pbnQoJ2JwLW0nKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBkZWZpbmUtYnJlYWtwb2ludCgnYnAtbCcpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBkZWZpbmUtYnJlYWtwb2ludCgnYnAteGwnKTtcbiAgICB9XG59XG5cbi5ub3Njcm9sbCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNyk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjZzO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDk5OTtcblxuICAgICYub3ZlcmxheS0tb3BlbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi53cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MnB4O1xuICAgIH1cbn1cblxuLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmJyZWFkY3J1bWJzIHtcbiAgICBoZWlnaHQ6IDA7XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBuZXcgY29sb3Vyc1xuXG4kY29sb3ItcmVkOiAgICAgICAgICAgICAjZmYwODBkO1xuJGNvbG9yLXJlZC1ncmFkaWVudDpcdCM5YTA0MDY7XG4kY29sb3Itd2hpdGU6ICAgICAgICAgICAjZmZmO1xuJGNvbG9yLWJsYWNrOiAgICAgICAgICAgIzAwMDtcbiRjb2xvci1ncmV5LWNvb2w6ICAgICAgICM3ZTg3ODc7XG4kY29sb3ItZ3JleS1kYXJrOiAgICAgICAjMWIyMzI2O1xuJGNvbG9yLXN0YXRpYy04MDogICAgICAgIzY2NjtcbiRjb2xvci1zdGF0aWMtZ2VuZXJhbDogICMzMzM7XG4kY29sb3Itc3RhdGljLWxpZ2h0OiAgICAjNzc3O1xuJGNvbG9yLXN0YXRpYy03MDogICAgICAgIzkzOTU5ODtcbiRjb2xvci1zdGF0aWMtNTA6ICAgICAgICNjOWNhY2I7XG4kY29sb3Itc3RhdGljLTI1OiAgICAgICAjZTRlNGU1O1xuJGNvbG9yLWZvY3VzLTE6ICAgICAgICAgI2YxZjJmNDtcbiRjb2xvci1mb2N1cy0yOiAgICAgICAgICNlN2U4ZWY7XG4kY29sb3Itc3VyZmFjZTogICAgICAgICAjZjdmOWZhO1xuJGNvbG9yLW9yYW5nZTogICAgICAgICAgI2RmNzIwODtcbiRjb2xvci1ncmVlbjogICAgICAgICAgICNiOWM3MDA7XG4kY29sb3ItYmx1ZTogICAgICAgICAgICAjM2Q5NmNhO1xuJGNvbG9yLXllbGxvdzogICAgICAgICAgI2Y4ZTIyNDtcbiRjb2xvci1wdXJwbGU6ICAgICAgICAgICNhZTRiZDA7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHByaW1hcmllcyAmIGFjdGlvbnNcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgJGNvbG9yLXJlZDtcblxuLy8gbGVnYWN5XG5cbiRzdGF0aWMtMTA6ICAgICAgICAgICAgICNmNGY0ZjQ7XG4kc2Vjb25kYXJ5LWN0YTogICAgICAgICAkY29sb3ItYmx1ZTtcbiRmb2N1cy0xOiAgICAgICAgICAgICAgICNlYWVmZmY7XG4kZm9jdXMtMjogICAgICAgICAgICAgICAjZTFlN2ZmO1xuJGZvY3VzLTM6ICAgICAgICAgICAgICAgIzcwOGZmZjtcbiRzZWNvbmRhcnktZm9jdXM6ICAgICAgICNmNWYwYzY7XG4iLCIvKlxuICogTGVnYWwgRGlzY2xhaW1lclxuICpcbiAqIFRoZXNlIEZvbnRzIGFyZSBsaWNlbnNlZCBvbmx5IGZvciB1c2Ugb24gdGhlc2UgZG9tYWlucyBhbmQgdGhlaXIgc3ViZG9tYWluczpcbiAqIEV2ZXJ5b25lYWN0aXZlLmNvbVxuICpcbiAqIEl0IGlzIGlsbGVnYWwgdG8gZG93bmxvYWQgb3IgdXNlIHRoZW0gb24gb3RoZXIgd2Vic2l0ZXMuXG4gKlxuICogV2hpbGUgdGhlIEBmb250LWZhY2Ugc3RhdGVtZW50cyBiZWxvdyBtYXkgYmUgbW9kaWZpZWQgYnkgdGhlIGNsaWVudCwgdGhpc1xuICogZGlzY2xhaW1lciBtYXkgbm90IGJlIHJlbW92ZWQuXG4gKlxuICogTGluZXRvLmNvbSwgMjAxN1xuICovXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ2lyY3VsYXIgU3RkIEJvb2snO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItYm9vay5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLWJvb2suZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItYm9vay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItYm9vay53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ2lyY3VsYXIgU3RkIE1lZGl1bSc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL2NpcmN1bGFyLXdlYi9jaXJjdWxhci1tZWRpdW0uZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL2NpcmN1bGFyLXdlYi9jaXJjdWxhci1tZWRpdW0uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9jaXJjdWxhci13ZWIvY2lyY3VsYXItbWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL2NpcmN1bGFyLXdlYi9jaXJjdWxhci1tZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0NpcmN1bGFyIFN0ZCBCb2xkJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLWJvbGQuZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL2NpcmN1bGFyLXdlYi9jaXJjdWxhci1ib2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLWJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvY2lyY3VsYXItd2ViL2NpcmN1bGFyLWJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4laDEsXG5oMSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdy1ib2xkO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgIH1cbn1cblxuJWgyLFxuaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXJsb3ctYm9sZDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtLjAzZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgfVxufVxuXG4laDMsXG5oMyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNpcmN1bGFyLW1lZGl1bTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgfVxufVxuXG4laDQsXG5oNCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNpcmN1bGFyLWJvb2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogLS4wMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICB9XG59XG5cbiVoNSxcbmg1IHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0uMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zMztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxucCB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KCk7XG59XG4iLCIkc2l6ZXM6IDI1LCA1MCwgNzU7XG5cbkBlYWNoICRzaXplIGluICRzaXplcyB7XG4gICAgJGFkanVzdDogJHNpemUgLyAxMDA7XG4gICAgJHZhbHVlOiAjeyRhZGp1c3R9cmVtO1xuICAgIC8vIG1hcmdpblxuICAgIC5tdC0jeyRzaXplfSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICR2YWx1ZTtcbiAgICB9XG4gICAgLm1yLSN7JHNpemV9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkdmFsdWU7XG4gICAgfVxuICAgIC5tYi0jeyRzaXplfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICR2YWx1ZTtcbiAgICB9XG4gICAgLm1sLSN7JHNpemV9IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICR2YWx1ZTtcbiAgICB9XG4gICAgLm14LSN7JHNpemV9IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICR2YWx1ZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkdmFsdWU7XG4gICAgfVxuICAgIC5teS0jeyRzaXplfSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICR2YWx1ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHZhbHVlO1xuICAgIH1cbiAgICAvLyBwYWRkaW5nXG4gICAgLy8gLnB0LSN7JHNpemV9IHtcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogJHZhbHVlO1xuICAgIC8vIH1cbiAgICAvLyAucHItI3skc2l6ZX0ge1xuICAgIC8vICAgICBtYXJnaW4tcmlnaHQ6ICR2YWx1ZTtcbiAgICAvLyB9XG4gICAgLy8gLnBiLSN7JHNpemV9IHtcbiAgICAvLyAgICAgbWFyZ2luLWJvdHRvbTogJHZhbHVlO1xuICAgIC8vIH1cbiAgICAvLyAucGwtI3skc2l6ZX0ge1xuICAgIC8vICAgICBtYXJnaW4tbGVmdDogJHZhbHVlO1xuICAgIC8vIH1cbiAgICAvLyAucHgtI3skc2l6ZX0ge1xuICAgIC8vICAgICBtYXJnaW4tbGVmdDogJHZhbHVlO1xuICAgIC8vICAgICBtYXJnaW4tcmlnaHQ6ICR2YWx1ZTtcbiAgICAvLyB9XG4gICAgLy8gLnB5LSN7JHNpemV9IHtcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogJHZhbHVlO1xuICAgIC8vICAgICBtYXJnaW4tYm90dG9tOiAkdmFsdWU7XG4gICAgLy8gfVxufVxuXG4uZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cblxuLmRpc2FibGVkICoge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udGV4dC1ub3dyYXAge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIuYWN0aXZpdGllcy1maWx0ZXIge1xuICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAuNztcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX3dyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi50cmFuc2l0aW9uIHtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IC40cztcbiAgICB9XG59XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fb3B0aW9ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xuICAgIH1cbn1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19vcHRpb24ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LWRhcms7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtMjU7XG5cbiAgICAgICAgLmFjdGl2aXRpZXMtZmlsdGVyX190aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktZGFyaztcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZXhwYW5kLnN2ZycpIGNlbnRlciBjZW50ZXIgLyBjb250YWluIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCwgMjgpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogMTBweCAyNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHBhbmQtd2hpdGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjVweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICB9XG5cbiAgICAmLmZpbHRlcmVkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1NXB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NoZWNrLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2aXRpZXMtZmlsdGVyX190aXRsZS0tbW9iaWxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXktZGFyaztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5maWx0ZXJlZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDI1cHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogMjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZmlsdGVyZWQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1NXB4O1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19kcm9wZG93biB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTFweDtcbiAgICB9XG5cbiAgICAmLnRyYW5zaXRpb24ge1xuICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjRzO1xuICAgIH1cblxuICAgIC5pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtMjU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwIDEwcHg7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19saXN0LXdyYXBwZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3Itc3RhdGljLTUwO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG5cbiAgICAmLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fbGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMTFweCAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjMlO1xuICAgICAgICB9XG5cbiAgICAgICAgcHJlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAgICZbdHlwZT0ncmFkaW8nXSxcbiAgICAgICAgJlt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZvcm1zX19pbnB1dC0tcmFkaW8ge1xuICAgICAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mb3Jtc19faW5wdXQtLWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzFweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNoZWNrYm94LWxpc3Qge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fbW9yZS1pbmZvIHtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgNXB4O1xuICAgIH1cbn1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCwgMjgpO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXN0YXRpYy01MDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LWZhbWlseTogJ0NpcmN1bGFyIFN0ZCBCb2xkJywgc2Fucy1zZXJpZjtcbiAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fc2VhcmNoIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3VyZmFjZTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IDFweDtcbiAgICBwYWRkaW5nOiAyNXB4IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICAgIC5hY3Rpdml0aWVzLWZpbHRlcl9fc2VhcmNoLXRpdGxlIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFjdGl2aXRpZXMtZmlsdGVyX19zZWFyY2gtdGl0bGUge1xuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4cGFuZC5zdmcnKSBjZW50ZXIgY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgfVxufVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX3NlYXJjaC1iYXIge1xuICAgIHBhZGRpbmc6IDIwcHggMCAxMHB4O1xuXG4gICAgaW5wdXQge1xuICAgICAgICAmW3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTMpIHJlbS1jYWxjKDUwKSByZW0tY2FsYygxMykgcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX3NlYXJjaC1pY29uIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgdXJsKCcuLi9pbWcvc2VhcmNoLnN2ZycpIG5vLXJlcGVhdCA5NiUgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICBib3JkZXI6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDYwcHg7XG4gICAgdG9wOiAxNHB4O1xuICAgIHdpZHRoOiA0MHB4O1xuXG4gICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgdG9wOiAtOXB4O1xuICAgIH1cbn1cblxuXG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy0yNTtcblxuICAgICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX3RpdGxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtMjU7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktZGFyaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvY2xvc2UtYmx1ZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZS1zZWFyY2gge1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hY3Rpdml0aWVzLWZpbHRlcl9fbW9iaWxlLXNlYXJjaCB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy0yNTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgaW5wdXQge1xuICAgICAgICAmW3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgdXJsKCcuLi9pbWcvc2VhcmNoLnN2ZycpIG5vLXJlcGVhdCA5NiUgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCA3MHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1NzBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCkgcmVtLWNhbGMoNjApIHJlbS1jYWxjKDEwKSByZW0tY2FsYygxNSk7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gOTBweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmFjdGl2aXRpZXMtZmlsdGVyX19tb2JpbGUtc2VhcmNoLWljb24ge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Fycm93LWxlZnQtYmx1ZS5zdmcnKSBuby1yZXBlYXQgMTRweCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgJlt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjRzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWN0aXZpdGllcy1maWx0ZXJfX21vYmlsZS1zZWFyY2gtaWNvbiB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3Itc3RhdGljLTI1O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAuNHM7XG4gICAgd2lkdGg6IDcwcHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NlYXJjaC5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjRzO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbiIsIi5iZW5lZml0cyB7XG4gICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG59XG5cbi5iZW5lZml0c19fdGl0bGUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYmVuZWZpdHNfX2xpc3Qge1xuICAgIG1hcmdpbjogMzZweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgY29sdW1uLWdhcDogMi41ZW07XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAzMnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvY2hlY2suc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI3cHg7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuIiwiICAgIC5hcnRpY2xlX19oZWFkZXIge1xuICAgIHBhZGRpbmc6IDI1cHggMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMjBweCA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgICAgIHBhZGRpbmc6IDcwcHggMjBweCA1MHB4O1xuICAgIH1cbn1cblxuLmFydGljbGVfX3RpdGxlIHtcbiAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbjogMTBweCAwIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ0KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNTIpO1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIH1cbn1cblxuLmFydGljbGVfX2luZm8ge1xuICAgIG1hcmdpbjogMTVweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMzVweDtcbiAgICB9XG59XG5cbi5hcnRpY2xlX19hdXRob3IsXG4uYXJ0aWNsZV9fZGF0ZSB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyNCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG5cbiAgICBhLFxuICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJ0aWNsZV9fbWV0YSB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgYmFja2dyb3VuZDogJHN0YXRpYy0xMDtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcnRpY2xlX19tZXRhLWlubmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLmFydGljbGVfX21ldGEtdGl0bGUge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4cGFuZC5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgIH1cblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2hpZGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmFydGljbGVfX2NhdGVnb3JpZXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMTBweCAyMHB4IDEwcHggMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBvc3QtY2F0ZWdvcmllcyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCA1cHg7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICB9XG59XG5cbi5hcnRpY2xlX19zaGFyZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cblxuLmFydGljbGVfX3NoYXJlLWl0ZW0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgIHRleHQtaW5kZW50OiAtMTAwMDBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiAyMnB4O1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB9XG5cbiAgICAmLmZiLXNoYXJlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZmFjZWJvb2stYmx1ZS5zdmcnKSBjZW50ZXIgY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgJi50dy1zaGFyZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3gtYmx1ZS5zdmcnKSBjZW50ZXIgY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgJi5lbWFpbC1zaGFyZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2VtYWlsLWJsdWUuc3ZnJykgY2VudGVyIGNlbnRlciAvIDgwJSBhdXRvIG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi5hcnRpY2xlX19jb250ZW50IHtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIHBhZGRpbmc6IDI1cHggMjBweCA0MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgyKVxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIyKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGVtIHtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgPiBwIHtcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCwgMjYpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUge1xuICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgPiB1bCxcbiAgICAmID4gb2wge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDZweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgPiBvbCB7XG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IGl0ZW07XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoaXRlbSkgJy4nO1xuICAgICAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBpdGVtO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMjdweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZm9jdXMtMTtcbiAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDgwcHgpO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbGVmdDogLTYwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDYwcHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMTIwcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZmlndXJlLFxuICAgIGltZyB7XG4gICAgICAgICYuYWxpZ25sZWZ0LFxuICAgICAgICAmLmFsaWducmlnaHQge1xuICAgICAgICAgICAgJi53cC1jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFsaWdubGVmdCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDI1cHggMjBweCAwO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IC0yNXB4IDIwcHggMDtcbiAgICAgICAgICAgICAgICByaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDIwcHggMjVweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAtMjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25jZW50ZXIsXG4gICAgICAgICYuYWxpZ25ub25lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmtlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1MHB4IGF1dG87XG5cbiAgICAgICAgICAgICAgICAmLndwLWNhcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcblxuICAgICAgICAgICAgICAgICAgICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgfVxuXG4gICAgLmlmcmFtZS12aWRlbyB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1NS4yNSU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgICAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTgpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3Itc3RhdGljLTI1O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkY29sb3Itc3RhdGljLTI1O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRib2R5IHtcbiAgICAgICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMm4gKyAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc3RhdGljLTEwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE0LCAxOCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlucHV0X193cmFwcGVyLFxuICAgIC5zZWxlY3RfX3dyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgIC5jb250YWN0LW1haW5fX21vZHVsZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9fZm9vdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHN0YXRpYy0xMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuLmFydGljbGVfX3F1b3RlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZm9jdXMtMTtcbiAgICBsZWZ0OiAtMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggNDBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDgwcHgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbGVmdDogLTYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggNjBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEyMHB4KTtcbiAgICB9XG5cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNSk7XG4gICAgfVxufVxuXG4uY3RhLW1vZHVsZSB7XG4gICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDVweCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jdGEtbW9kdWxlX19wcmltYXJ5IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWJ1dHRvbjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY3RhLW1vZHVsZV9fc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWxpbms7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jaGVja2xpc3Qge1xuICAgIG1hcmdpbjogMzVweCAwO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyLFxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy0yNTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICByaWdodDogLTE1JTtcbiAgICAgICAgICAgIHdpZHRoOiAxMTUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjIpO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jaGVjay5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGVfX3RhZ3Mge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuXG4uYXJ0aWNsZV9fdGFncy1pbm5lciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtNTA7XG4gICAgcGFkZGluZzogMTVweCAwIDIwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cbn1cblxuLmFydGljbGVfX3RhZ3MtdGFnIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDI0KTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMTBweCAxMHB4IDAgMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMTVweCAxMHB4IDAgMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmFydGljbGUtcmVsYXRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1cmZhY2U7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICBwYWRkaW5nOiA1MHB4IDIwcHggMDtcblxuICAgIGgyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5hcnRpY2xlLXJlbGF0ZWRfX2lubmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi51aS1hdXRvY29tcGxldGUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYygyMCk7XG4gICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgbWluLXdpZHRoOiA4MCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWluLXdpZHRoOiA0MDBweDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAkc3RhdGljLTEwO1xuICAgICAgICBib3JkZXItbGVmdDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC04cHg7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0aWMtMTA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICYuZm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvY3VzLTI7XG4gICAgICAgIH1cblxuICAgICAgICBhLFxuICAgICAgICBkaXYge1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAtOTk5ZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xufVxuXG4udWktc3RhdGUtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9jdXMtMjtcbn1cbiIsIi5ib3R0b20tbmF2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGljLTEwO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3gtc2hhZG93OiA5cHggNnB4IDZweCA2cHggJGNvbG9yLXN0YXRpYy03MDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGxlZnQ6IDA7XG4gICAgbWluLXdpZHRoOiAzMDBweDtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIC40cztcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmJvdHRvbS1uYXZfX2lubmVyIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYm90dG9tLW5hdl9fbGluayB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDNweCAwO1xufVxuIiwiLmJyZWFkY3J1bWIge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNXB4O1xuICAgIHRvcDogMnB4O1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBhIHtcbiAgICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmF1dGhvcixcbi5jYXRlZ29yeSxcbi5jZW50cmUtZmluZGVyLFxuLmNvbnRhY3QsXG4uZmFxcy1wYWdlLFxuLmdlbmVyaWMge1xuICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgdG9wOiA4MnB4O1xuICAgIH1cbn1cblxuLmhlcm9fX2NvbnRlbnQtLWF1dGhvcixcbi5oZXJvX19jb250ZW50LS1jYXRlZ29yeSB7XG4gICAgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIH1cbn1cblxuLy8gLmhlcm9fX2NvbnRlbnQtLWF1dGhvcixcbi8vIC5oZXJvX19jb250ZW50LS1jYXRlZ29yeSB7XG4vLyAgICAgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuLy8gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbi8vICAgICAgICAgLmJyZWFkY3J1bWIge1xuLy8gICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuLy8gICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgNXB4O1xuLy8gICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vIH1cblxuLmFydGljbGVfX2ludHJvIHtcbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG59XG5cbi5oZXJvIHtcbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuXG4gICAgICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIlYnV0dG9uLFxuLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdy1ib2xkO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wOGVtO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTEpIHJlbS1jYWxjKDE4KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMSkgcmVtLWNhbGMoMjQpO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIEBleHRlbmQgJWJ1dHRvbi0tYWN0aXZlO1xuICAgIH1cbn1cblxuLmJ1dHRvbi0tc3VidGxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC45KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3RhdGljLTUwO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogJGNvbG9yLWdyZXktZGFyaztcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMSAqIDAuNSkgcmVtLWNhbGMoMTggKiAwLjY2KTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjJyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDExICogMC41KSByZW0tY2FsYygyNCAqIDAuNjYpO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdGF0aWMtNzA7XG4gICAgfVxufVxuXG4lYnV0dG9uLS1sYXJnZSxcbi5idXR0b24tLWxhcmdlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMikgcmVtLWNhbGMoMzUpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMykgcmVtLWNhbGMoMjUpO1xuICAgIH1cbn1cblxuJWJ1dHRvbi0tYWN0aXZlLFxuLmJ1dHRvbi0tYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4lYnV0dG9uLS1kaXNhYmxlZCxcbi5idXR0b24tLWRpc2FibGVkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3RhdGljLTUwO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTUwO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbiVidXR0b24tLXByaW1lZCxcbi5idXR0b24tLXByaW1lZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4lYnV0dG9uLS1ncmV5ZWQtb3V0LFxuLmJ1dHRvbi0tZ3JleWVkLW91dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN0YXRpYy03MDtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy03MDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG4lYnV0dG9uLS1jaGFuZ2UsXG4uYnV0dG9uLS1jaGFuZ2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuJWJ1dHRvbl9fbW9yZS1pbmZvLFxuLmJ1dHRvbl9fbW9yZS1pbmZvIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoKTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4cGFuZC5zdmcnKSBjZW50ZXIgY2VudGVyIC8gMTVweCBhdXRvIG5vLXJlcGVhdDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAmLmJ1dHRvbl9fbW9yZS1pbmZvLS1leHBhbmRlZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaGlkZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjhweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ1dHRvbl9fc2F2ZS1zZWxlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgpO1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9kb3dubG9hZC1ibHVlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI4cHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG4lYnV0dG9uLWxvY2F0aW9uLFxuLmJ1dHRvbl9fbG9jYXRpb24ge1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZ2VvbG9jYXRpb24uc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzJweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC02cHg7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgIH1cbn1cblxuLmJ1dHRvbl9fbG9hZC1tb3JlIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoKTtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsYWNrO1xuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXJsb3ctYm9sZDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZG93bmxvYWQtd2hpdGUuc3ZnJyk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9kb3dubG9hZC1ibGFjay5zdmcnKSBjZW50ZXIgY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxvYWRpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvcm9sbGluZy5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmJ1dHRvbi0tc3F1YXJlIHtcbiAgICBAZXh0ZW5kICVidXR0b24tLWFjdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIHBhZGRpbmc6IDIwcHggMjRweDtcbn1cbiIsIi5jZW50cmUtYWJvdXQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHBhZGRpbmc6IDQ1cHggMjBweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICAmOm5vdCgudGFnbGluZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0byAzMHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi50YWdsaW5lIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSk7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDgwKSAwIHJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDE0MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDE4MHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMDNlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gICAgfVxufVxuIiwiLmNlbnRyZS1hY3Rpdml0aWVzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLS4wM2VtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgICB9XG59XG5cbi5jZW50cmUtYWN0aXZpdGllc19faW50cm8ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICBtYXJnaW46IDIwcHggYXV0byAzMHB4O1xuICAgIG1heC13aWR0aDogNzUwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgfVxufVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX3dyYXBwZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgfVxufVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX2xpc3RzIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luOiA1MHB4IDAgMTVweDtcbiAgICB9XG59XG5cbi5jZW50cmUtYWN0aXZpdGllc19fZmlsdGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTYsIDIyKTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDIwcHggMjBweCAyNXB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG4gICAgfVxufVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX2ZpbHRlci1vcHRpb25zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgIH1cblxuICAgIC5maWx0ZXItb3B0aW9ucyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaXJjdWxhci1ib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG59XG5cbi5jZW50cmUtYWN0aXZpdGllc19fZmlsdGVyLWNsZWFyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBjbGVhcjogaW5pdGlhbDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX25vLXJlc3VsdCB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDE1cHggMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgIH1cbn1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWl0ZW0ge1xuICAgIGJhY2tncm91bmQ6ICRzdGF0aWMtMTA7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMjVweCA0NXB4IDI1cHggMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMCAxMHB4IDIwcHg7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtaW4taGVpZ2h0OiAxOTBweDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG5cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTI1O1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5Mzk1OTg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE0LCAyMCk7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDI1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE0LCAyMCk7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LS1wb3B1bGFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWl0ZW0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNlbnRyZS1hY3Rpdml0aWVzX19saXN0LWl0ZW0tY29udGVudCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE5MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjVweCAwIDEwcHggMjVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jZW50cmUtYWN0aXZpdGllc19fc2hvdy1pbmZvIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jZW50cmUtYWN0aXZpdGllc19fbGlzdC1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2MCU7XG4gICAgfVxufVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX3Nob3ctaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3Nob3ctbW9yZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA3cHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGJvdHRvbTogN3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWFjdGl2aXRpZXNfX2xvYWQtbW9yZSB7XG4gICAgYmFja2dyb3VuZDogJHN0YXRpYy0xMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgfVxuXG4gICAgJi5zaG93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXN0YXRpYy01MDtcbiAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgIH1cbn1cblxuLmNlbnRyZS1hY3Rpdml0aWVzX19pbmZvIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3RhdGljLTEwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiIsIi5wYWdlLXRlbXBsYXRlLWNlbnRyZS1maW5kZXIge1xuICAgIC53cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19iYWNrZ3JvdW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiA3MnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fY29sdW1uIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDYwJTtcblxuICAgICYuY2VudHJlLWZpbmRlcl9fY29sdW1uLS1pbWFnZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2JnL2NlbnRyZS1maW5kZXIuanBnJykgbm8tcmVwZWF0IGNlbnRlciB0b3A7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIC8vIG1heC1oZWlnaHQ6IDk3dmg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19tYXAge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jZW50cmUtZmluZGVyX19tYXAtaW5uZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNlbnRyZS1maW5kZXJfX2NvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBtaW4taGVpZ2h0OiA4MHZoO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig5KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDApO1xuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtc2Nyb2xsLW1vcmUge1xuICAgIGhlaWdodDogMzVweDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcblxuICAgIHAge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy03MDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXJfX3NpZGViYXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXItY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQwKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg4MCk7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlci1jb250ZW50X19oZWFkZXIge1xuICAgIHBhZGRpbmc6IDE1cHggMjBweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4IDAgMDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgICYuaGlkZGVuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ2KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg2Mik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlci1jb250ZW50X19oZWFkZXItLXNlY29uZGFyeSB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1JTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMjUpO1xuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXItY29udGVudF9fZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgcGFkZGluZzogMjBweCAwIDYwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyLWNvbnRlbnRfX2xpbmsge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWxvYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLW1ldGEge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIHBhZGRpbmc6IDMwcHggMTVweCAyMHB4O1xufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hbW91bnQge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjIpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTc1cHgpO1xuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLXNoYWRvdyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICYuc2hhZG93LS10b3Age1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJGNvbG9yLXN0YXRpYy03MCAwLCByZ2JhKDAsIDAsIDAsIDApIDMwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zaGFkb3ctLWJvdHRvbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAkY29sb3Itc3RhdGljLTcwIDAsIHJnYmEoMCwgMCwgMCwgMCkgMzBweCwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1zY3JvbGwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcblxuICAgICAgICAvLyAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIC8vICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgLy8gICAgIHdpZHRoOiAwO1xuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbGlzdC1pdGVtIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGljLTEwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjApIHJlbS1jYWxjKDEyKSByZW0tY2FsYygxNik7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCkgcmVtLWNhbGMoMTgpO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdGF0aWMtMjU7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1hY3Rpb25zLS1tb2Ige1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMikgMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMikgMDtcblxuICAgICAgICAmLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtYWN0aW9ucy0tbW9iIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWFjdGlvbnNfX21ldGEge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWl0ZW0tbmFtZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjcpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1pdGVtLWRpc3RhbmNlIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoKTtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1tb3JlLFxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtaXRlbS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuXG4gICAgYSB7XG4gICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uX19tb3JlLWluZm8ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4cGFuZC1ibHVlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICB0b3A6IDE4cHg7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyNCk7XG5cbiAgICAmLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2wtLWZhY2lsaXRpZXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWNvbC0tdGltZXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig1KVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpXG4gICAgICAgIH1cblxuICAgICAgICAmLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2wtLWZhY2lsaXRpZXMge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1jb2wtLXRpbWVzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNilcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLW1vYmlsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMC41KTtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLW1hcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN0YXRpYy01MDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3Itc3RhdGljLTgwO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1hZGRyZXNzIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUpO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1kZXRhaWxzLWxpbmsge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgpO1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtbGlzdC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtbGlzdCB7XG4gICAgbWFyZ2luOiAwIDAgMCAzNXB4O1xuICAgIG1heC13aWR0aDogMjMwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWF4LXdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtZGV0YWlscy1saXN0LWl0ZW0ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogNXB4IDA7XG5cbiAgICAmOmZpcnN0LWxldHRlciB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG59XG5cbi5jZW50cmUtZmluZGVyX19yZXN1bHRzLWRldGFpbHMtdG9kYXkge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCk7XG4gICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9jbG9jay1ibHVlLnN2ZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IHRvcDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNnB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0zcHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWZpbmRlcl9fcmVzdWx0cy1sb2FkLW1vcmUge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0aWMtMTA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSkgcmVtLWNhbGMoMjApIHJlbS1jYWxjKDEwKTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNlbnRyZS1maW5kZXJfX3Jlc3VsdHMtbWVzc2FnZSB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE4LCAyNCk7XG4gICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDEwMHB4IGF1dG87XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi5jZW50cmUtaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktZGFyaztcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgICAgIG1hcmdpbi10b3A6IC02MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uY2VudHJlLWluZm9fX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgIHBhZGRpbmc6IDQwcHggMjBweCAyNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzgpO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDU2KTtcbiAgICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgIH1cbn1cblxuLmNlbnRyZS1pbmZvX19jb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG59XG5cbi5jZW50cmUtaW5mb19fY29sdW1uLXdyYXBwZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvY3VzLTE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jZW50cmUtaW5mb19fbW9iaWxlLXRpdGxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZXhwYW5kLWJsdWUuc3ZnJykgY2VudGVyIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgIH1cblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2hpZGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uY2VudHJlLWluZm9fX3NsaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmNlbnRyZS1pbmZvX19jb2x1bW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWluZm9fX2NvbHVtbiB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMCAyNHB4O1xuICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNlbnRyZS1pbmZvX19saW5rIHtcbiAgICBAZXh0ZW5kICVsaW5rO1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCk7XG4gICAgbWFyZ2luOiAwIDEycHggMTVweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDEwcHggMTJweCAwIDA7XG4gICAgfVxufVxuXG4uY2VudHJlLWluZm9fX2xpbmstY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNlbnRyZS1pbmZvX19saW5rLS1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuLmNlbnRyZS1pbmZvX19zb2NpYWwge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbi5jZW50cmUtaW5mb19fc29jaWFsLWljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDI2cHg7XG4gICAgICAgIHdpZHRoOiAyNnB4O1xuICAgIH1cblxuICAgICYuY2VudHJlLWluZm9fX3NvY2lhbC1pY29uLS1mYiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ZhY2Vib29rLXdoaXRlLnN2ZycpO1xuICAgIH1cblxuICAgICYuY2VudHJlLWluZm9fX3NvY2lhbC1pY29uLS10dyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3gtd2hpdGUuc3ZnJyk7XG4gICAgfVxuXG4gICAgJi5jZW50cmUtaW5mb19fc29jaWFsLWljb24tLWlnIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaW5zdGFncmFtLXdoaXRlLnN2ZycpO1xuICAgIH1cblxuICAgICYuY2VudHJlLWluZm9fX3NvY2lhbC1pY29uLS10dCB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3Rpa3Rvay13aGl0ZS5zdmcnKTtcbiAgICB9XG5cbiAgICAmLmNlbnRyZS1pbmZvX19zb2NpYWwtaWNvbi0teXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy95b3V0dWJlLXdoaXRlLnN2ZycpO1xuICAgIH1cbn1cblxuLmNlbnRyZS1pbmZvX19vcGVuaW5nLXRpbWVzLXRvZGF5IHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTgpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItYm9sZDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaXJjdWxhci1ib29rO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLWluZm9fX29wZW5pbmctdGltZXMtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoKTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHJpZ2h0OiAtMjVweDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZXhwYW5kLWJsdWUuc3ZnJykgY2VudGVyIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaGlkZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNlbnRyZS1pbmZvX19vcGVuaW5nLXRpbWVzLWxpc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgcGFkZGluZzogMCAwIDIwcHg7XG4gICAgd2lkdGg6IDkwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5jZW50cmUtaW5mb19fb3BlbmluZy10aW1lcy1saXN0LWl0ZW0ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDVweCAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgJiA+IHNwYW4ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxufVxuIiwiLmNlbnRyZS1tZW51IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGhlaWdodDogNjJweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuc3RpY2t5LW5hdi0tYWN0aXZlIHtcbiAgICAgICAgLmNlbnRyZS1tZW51X193cmFwcGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgwKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDJweCAtMnB4ICRjb2xvci1zdGF0aWMtNzA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogNThweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHRvcDogNzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGlkZS11cCB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNlbnRyZS1tZW51X19jb2x1bW5zIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jZW50cmUtbWVudV9fY29sdW1uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udG91Y2hldmVudHMge1xuICAgIC5jZW50cmUtbWVudV9fd3JhcHBlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAuNHM7XG4gICAgfVxufVxuXG4uY2VudHJlLW1lbnVfX3dyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0aWMtMTA7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9sZWZ0LWZhZGUucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDBweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvcmlnaHQtZmFkZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0MHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cbn1cblxuLmNlbnRyZS1tZW51X19jb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG59XG5cbi5jZW50cmUtbWVudV9fY29sdW1uIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgcGFkZGluZzogMThweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDMzLjMzJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMThweDtcbiAgICB9XG59XG5cbi5jZW50cmUtbWVudV9fbGluayB7XG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi5jZW50cmUtbWVudV9fbGluay0tZXh0ZXJuYWwge1xuICAgIC8vY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgbGVmdDogMjAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMCU7XG4gICAgfVxuXG59XG5cbi5jZW50cmUtbWVudV9fbGluay0tYW5jaG9yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiIsIi5jZW50cmUtbmV3cyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgYmFja2dyb3VuZDogICMwYTBhMGE7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAyNXB4IDIwcHggMTVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogNDVweCAwIDIwcHg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTgsIDI0KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jZW50cmUtbmV3c19fY29sdW1uLXRpdGxlIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbm9uZTtcbn1cblxuLmNlbnRyZS1uZXdzX19jb2x1bW4tbGlzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDkpO1xuXG4gICAgfVxufVxuXG4uY2VudHJlLW5ld3NfX3Bvc3Qtd3JhcHBlciB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDExKTtcbiAgICB9XG59XG5cbi5jZW50cmUtbmV3c19fcG9zdCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtODA7XG4gICAgcGFkZGluZzogMTVweCAwO1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNlbnRyZS1uZXdzX19wb3N0LXR5cGUge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxMik7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy01MDtcbiAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAkZm9udC1jaXJjdWxhci1tZWRpdW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHdpZHRoOiA0NXB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIHdpZHRoOiA2NnB4O1xuICAgIH1cblxuICAgICYuY2VudHJlLW5ld3NfX3Bvc3QtdHlwZS0tTmV3cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIH1cblxuICAgICYuY2VudHJlLW5ld3NfX3Bvc3QtdHlwZS0tRXZlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuLmNlbnRyZS1uZXdzX19wb3N0LXRpdGxlIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMCAxMnB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDc1cHgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNik7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxODZweCk7XG4gICAgfVxufVxuXG4uY2VudHJlLW5ld3NfX3Bvc3QtbGluayB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE4LCAyNik7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3aWR0aDogMjBweDtcblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jaGV2cm9uLXJpZ2h0LXdoaXRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2VudHJlLW5ld3NfX2xpbmsge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI2KTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NoZXZyb24tcmlnaHQtd2hpdGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgIH1cbn1cblxuIiwiLmNlbnRyZS10aW1ldGFibGVzIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMik7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBtYXJnaW46IDIwcHggYXV0byAzMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jZW50cmUtdGltZXRhYmxlc19fbGlua3Mge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCwgMjQpO1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiIsIi5jb250YWN0LW1haW4ge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYwKSAwIHJlbS1jYWxjKDIwKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwKSAwIHJlbS1jYWxjKDIwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwMCkgMDtcbiAgICB9XG59XG5cbi5jb250YWN0LW1haW5fX2hlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMzBweCAwIDA7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtMjU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNnB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY29udGFjdC1tYWluX19oZWFkZXItLXN1Ym1pdHRlZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ2KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg2Mik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgfVxufVxuXG4uY29udGFjdC1tYWluX19oZWFkZXItY29udGVudCB7XG4gICAgcGFkZGluZzogMzBweCAwO1xufVxuXG4uY29udGFjdC1tYWluX19kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgbWF4LXdpZHRoOiA2ODBweDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG4gICAgfVxufVxuXG4uY29udGFjdC1tYWluX19tb2R1bGUge1xuICAgIGJhY2tncm91bmQ6ICRzdGF0aWMtMTA7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHggMzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1mb2N1cy0xO1xuICAgIH1cblxuICAgICYuY29udGFjdC1tYWluX19tb2R1bGUtLWRldGFpbHMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgfVxuXG4gICAgJi5jb250YWN0LW1haW5fX21vZHVsZS0tZW5xdWlyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHggNDVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDogNzgwcHg7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG59XG5cbi5jb250YWN0LW1haW5fX2xhYmVsIHtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xufVxuXG4uY29udGFjdC1tYWluX19zdWItbGFiZWwge1xuICAgIG1hcmdpbjogMjBweCAwIC0xMHB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICB9XG59XG5cbi5wYXRjaC1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29udGFjdC1tYWluX19zZWxlY3Rze1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pbnB1dF9fd3JhcHBlci0tY2VudHJlIHtcbiAgICAubG9hZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNTVweDtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgIC5sb2FkZXJfX3NwaW5uZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjlmZjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBsZWZ0OiA1MTBweDtcbiAgICAgICAgICAgIHRvcDogOHB4O1xuXG4gICAgICAgICAgICAubG9hZGVyX19zcGlubmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbGVmdDogNDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWxlY3RfX3dyYXBwZXItLXN1YmplY3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb250YWN0LW1haW5fX3JhdGluZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWdyYXBoaWMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fcmF0aW5nLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsZXgtYmFzaXM6IDMzJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICBvcmRlcjogOTk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDQ1cHg7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgb3JkZXI6IDc7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgZmxleC1ncm93OiAyO1xuICAgICAgICAgICAgb3JkZXI6IDEwO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgICAgIG9yZGVyOiA1O1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgICAgIG9yZGVyOiA4O1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDgpIHtcbiAgICAgICAgICAgIG9yZGVyOiAzO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgIG9yZGVyOiA2O1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDEwKSB7XG4gICAgICAgICAgICBvcmRlcjogOTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgxMSkge1xuICAgICAgICAgICAgb3JkZXI6IDExO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1Bd2Z1bCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tYXdmdWwucG5nXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1CYWQge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWJhZC5wbmdcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLU9LIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1vay5wbmdcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLUdvb2Qge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWdvb2QucG5nXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1BbWF6aW5nIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1hbWF6aW5nLnBuZ1wiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fYnV0dG9uLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG4uYWdhaW4ge1xuICAgIC5jb250YWN0LW1haW5fX2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogNjBweCAwO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fdG9nZ2xlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZGFyay1ncmF5LCAwLjUpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRkYXJrLWdyYXksIDAuNSk7XG4gICAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgICBwYWRkaW5nOiAyNXB4IDAgMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4IDM1cHg7XG4gICAgfVxuXG4gICAgJjphZnRlcixcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufVxuXG4uY29udGFjdC1tYWluX19sb2dpbiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbnRhY3QtbWFpbl9fbWVzc2FnZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2F0dGVudGlvbi5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgY29sb3I6ICRjb2xvci1vcmFuZ2U7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbn1cblxuLmNvbnRhY3QtbWFpbl9fbWVzc2FnZS0tbG9nZ2VkaW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAzMHB4O1xuICAgIG1heC13aWR0aDogNzgwcHg7XG4gICAgd2lkdGg6IDkwJTtcbn1cblxuLmNvbnRhY3QtbWFpbl9fbGluayB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgfVxufVxuXG4uY29udGFjdC1tYWluX19sb2dnZWRpbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDMwcHggMDtcblxuICAgIGg0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fbG9nZ2VkaW4tbGluayB7XG4gICAgQGV4dGVuZCAlbGluaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG4uY29udGFjdC1tYWluX19mb290ZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtMjU7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAyNXB4IDE1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogMjVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmxvYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAmLmxvYWRpbmcge1xuICAgICAgICAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN0YXRpYy01MDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTUwO1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fbG9hZGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG5cbiAgICAubG9hZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgLmxvYWRlcl9fd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAubG9hZGVyX19zcGlubmVyIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFpbl9fbGltaXQge1xuICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB9XG59XG5cbi5jb250YWN0LW1haW5fX2xpbWl0LS13YXJuaW5nIHtcbiAgICBjb2xvcjogI2ViOWUzYTtcbn1cblxuLmNvbnRhY3QtbWFpbl9fbW9kdWxlLS1kZXRhaWxzIGgyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkZGFyay1ncmF5LCAwLjUpO1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xufSIsIi5jb250YWN0LXNpZGViYXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTYwKSAwIHJlbS1jYWxjKDkwKSByZW0tY2FsYygzMCk7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN0YXRpYy01MDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY291bmNpbC1sb2dvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIH1cbn1cblxuLmNvbnRhY3Qtc2lkZWJhcl9fbGlzdCB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NoZWNrLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyN3B4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY29udGFjdC0tZmVlZGJhY2ssIC5mcmVlc3dpbSB7XG4gICAgLmNvbnRhY3QtbWFpbiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYwKSAwIHJlbS1jYWxjKDIwKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoODApIDAgcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAwKSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9faGVhZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHggMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTI1O1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb250YWN0LW1haW5fX2hlYWRlci0tc3VibWl0dGVkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0Nik7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDYyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY4MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9faGVhZGVyLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9fZGVzY3JpcHRpb24ge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19tb2R1bGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc3RhdGljLTEwO1xuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDE1cHggMzVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1mb2N1cy0xO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jb250YWN0LW1haW5fX21vZHVsZS0tZGV0YWlscyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAyNXB4IDQ1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDMwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWN0LW1haW5fX2xhYmVsIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19zdWItbGFiZWwge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAtMTBweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYXRjaC1oaWRlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19zZWxlY3RzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuaW5wdXRfX3dyYXBwZXItLWNlbnRyZSB7XG4gICAgICAgIC5sb2FkZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDU1cHg7XG4gICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAubG9hZGVyX19zcGlubmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmOWZmO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUxMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogOHB4O1xuXG4gICAgICAgICAgICAgICAgLmxvYWRlcl9fc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogNDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0X193cmFwcGVyLS1zdWJqZWN0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19yYXRpbmcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5jb250YWN0LW1haW5fX3JhdGluZy1ncmFwaGljIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWN0LW1haW5fX3JhdGluZy1zZWxlY3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxleC1iYXNpczogMzMlO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBvcmRlcjogOTk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogNDVweDtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkgeyBvcmRlcjogMTsgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikgeyBvcmRlcjogNDt9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7IG9yZGVyOiA3OyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7IGZsZXgtZ3JvdzogMjsgb3JkZXI6IDEwOyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg1KSB7IG9yZGVyOiAyOyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg2KSB7IG9yZGVyOiA1OyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg3KSB7IG9yZGVyOiA4OyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg4KSB7IG9yZGVyOiAzOyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg5KSB7IG9yZGVyOiA2OyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxMCkgeyBvcmRlcjogOTsgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMTEpIHsgb3JkZXI6IDExOyB9XG5cbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1Bd2Z1bCB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWF3ZnVsLnBuZycpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1CYWQge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbi1iYWQucG5nJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLU9LIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb24tb2sucG5nJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNvbnRhY3QtbWFpbl9fcmF0aW5nLWl0ZW0tLUdvb2Qge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbi1nb29kLnBuZycpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jb250YWN0LW1haW5fX3JhdGluZy1pdGVtLS1BbWF6aW5nIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb24tYW1hemluZy5wbmcnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5jb250YWN0LW1haW5fX2J1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgICAgICBAZXh0ZW5kICVidXR0b247XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuYWdhaW4ge1xuICAgICAgICAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luOiA2MHB4IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX190b2dnbGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICBtYXJnaW46IDEuNXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMzBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweCAzNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlcixcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEycHggc29saWQgJGZvY3VzLTE7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDE1cHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6MFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9fbG9naW4ge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19tZXNzYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvYXR0ZW50aW9uLnN2ZycpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1vcmFuZ2U7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9fbWVzc2FnZS0tbG9nZ2VkaW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDMwcHg7XG4gICAgICAgIG1heC13aWR0aDogNzgwcHg7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9fbGluayB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiAyNjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWN0LW1haW5fX2xvZ2dlZGluIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtbWFpbl9fbG9nZ2VkaW4tbGluayB7XG4gICAgICAgIEBleHRlbmQgJWxpbms7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy0yNTtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMjVweCAxNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDMwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWN0LW1haW5fX2J1dHRvbiB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAubG9hZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYubG9hZGluZyB7XG4gICAgICAgICAgICAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvYWRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19sb2FkZXIge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICAubG9hZGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2FkZXJfX3dyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAubG9hZGVyX19zcGlubmVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mcmVlc3dpbV9fY29uZmlybS5jb250YWN0LW1haW5fX2xpbmsge1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgfVxufVxuIiwiLmNvbnRhY3QtbWFpbl9fY2VudHJlIHtcbiAgZGlzcGxheTogbm9uZTtcbn0iLCIuY29udGVudGh1Yi1hdXRob3JzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9jdXMtMTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMCAzMHB4O1xuICAgIH1cbn1cblxuLmNvbnRlbnRodWItYXV0aG9yc19faW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMThweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBjbGVhcjogaW5pdGlhbDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDhweDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG59XG5cbi5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1pbWFnZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uY29udGVudGh1Yi1hdXRob3JzX19hdXRob3ItbWV0YSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMjBweCAwIDA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci10aXRsZSB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNpcmN1bGFyLWJvbGQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI4KTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1hdXRob3JzX19hdXRob3ItZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIHdpZHRoOiA5MCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI4KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50aHViLWF1dGhvcnNfX2F1dGhvci1saW5rIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cbiIsIi5jb250ZW50aHViLWNhdGVnb3JpZXMge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4uY29udGVudGh1Yi1jYXRlZ29yaWVzX19pbm5lciB7XG4gICAgcGFkZGluZzogMCAxOHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5jb250ZW50aHViLWNhdGVnb3JpZXNfX2NhdGVnb3J5IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9oaWRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHBhbmQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHBhbmQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN0YXRpYy01MDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50aHViLWNhdGVnb3JpZXNfX3Bvc3Qge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgbWFyZ2luOiA1cHggMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1jYXRlZ29yaWVzX19saW5rIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cbiIsIi5jb250ZW50aHViLWZlYXR1cmVkIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9faW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cbn1cblxuLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGVzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fcm93IHtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuLmNvbnRlbnRodWItZmVhdHVyZWRfX2FydGljbGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAwIDZweDtcbiAgICAgICAgd2lkdGg6IDMzLjMzJTtcblxuICAgICAgICAmOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoM24pIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlLWltYWdlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjUlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS1tZXRhIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS10aXRsZSB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE3LCAyNCk7XG4gICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNpcmN1bGFyLWJvbGQ7XG4gICAgbWFyZ2luOiA2ICAgcHggMDtcbiAgICB3aWR0aDogOTAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50aHViLWZlYXR1cmVkX19hcnRpY2xlLWRlc2Mge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMik7XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9fYXJ0aWNsZS1saW5rIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cbiIsIi5jb250ZW50aHViLWxhdGVzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1cmZhY2U7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDAgMzBweDtcbiAgICB9XG59XG5cbi5jb250ZW50aHViLWxhdGVzdF9faW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuIiwiLmNvbnRlbnRodWItbWVudSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICBjbGVhcjogYm90aDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIHtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIH1cblxuICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLWlubmVyLW1lbnUge1xuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA5MnZoO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDogODl2aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc3RpY2t5LW5hdi0tYWN0aXZlIHtcbiAgICAgICAgLmNvbnRlbnRodWItbWVudV9fd3JhcHBlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGljLTEwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMnB4IC0ycHggJGNvbG9yLXN0YXRpYy03MDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiA2MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgdG9wOiA3MnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2xpZGUtdXAge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50aHViLW1lbnVfX2lubmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCk7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50aHViLW1lbnVfX2xpc3Qge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE4cHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50aHViLW1lbnVfX2NvbHVtbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMThweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICZbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDYwKSByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1pY29uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDJweCAtMnB4ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHRvcDogNjBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCkgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICBjbGVhcjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50aHViLW1lbnVfX2xpbmstaW5mby0tY2xvc2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLW9wdGlvbnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250ZW50aHViLW1lbnVfX2xpbmstaW5mby0tY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLWlubmVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMjUpIHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24taW5uZXItbWVudSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHZoO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvdWNoZXZlbnRzIHtcbiAgICAuY29udGVudGh1Yi1tZW51X193cmFwcGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIC40cztcbiAgICB9XG5cbiAgICAuY29udGVudGh1Yi1tZW51X19pbm5lciB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1tZW51X193cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1tZW51X19pbm5lciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1cmZhY2U7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgIH1cbn1cblxuLmNvbnRlbnRodWItbWVudV9fc2VhcmNoIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3VyZmFjZTtcbiAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAkY29sb3Itd2hpdGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogLjRzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgJlt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlIHVybCgnLi4vaW1nL3NlYXJjaC5zdmcnKSBuby1yZXBlYXQgOTYlIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDM1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCA3MHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1NzBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCkgcmVtLWNhbGMoNjApIHJlbS1jYWxjKDEwKSByZW0tY2FsYygxNSk7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNTBweCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMykgcmVtLWNhbGMoNjApIHJlbS1jYWxjKDEzKSByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmNvbnRlbnRodWItbWVudV9fc2VhcmNoLWljb24ge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Fycm93LWxlZnQtYmx1ZS5zdmcnKSBuby1yZXBlYXQgMTRweCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNXB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jbG9zZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICZbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC40cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRlbnRodWItbWVudV9fc2VhcmNoLWljb24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAuNHM7XG4gICAgd2lkdGg6IDUwcHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NlYXJjaC5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjRzO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5jb250ZW50aHViLW1lbnVfX2l0ZW1zIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbn1cblxuLmNvbnRlbnRodWItbWVudV9fbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgcGFkZGluZzogMThweCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMjhweCAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLmN1cnJlbnQtbWVudS1pdGVtIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaXJjdWxhci1ib29rO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50aHViLW1lbnVfX2NvbHVtbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZvY3VzLTI7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDE4cHggMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDQwcHggMjBweCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDI4cHggNDBweCAyOHB4IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5jb250ZW50aHViLW1lbnVfX2xpbmsge1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1tZW51X19saW5rLWluZm8ge1xuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4cGFuZC5zdmcnKSBjZW50ZXIgY2VudGVyIC8gMTVweCBhdXRvIG5vLXJlcGVhdDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTM1cHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaGlkZS5zdmcnKSBjZW50ZXIgY2VudGVyIC8gMzBweCBhdXRvIG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY29udGVudGh1Yi1tZW51X19saW5rLWluZm8tLW9wZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY29udGVudGh1Yi1tZW51X19saW5rLWluZm8tLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1tZW51X19kcm9wZG93biB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN0YXRpYy0xMDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApIHJlbS1jYWxjKDI1KTtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50aHViLW1lbnVfX2xpbmstaW5mbyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaGlkZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRlbnRodWItbWVudV9fZHJvcGRvd24taXRlbSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG59XG5cbi5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLWRlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDI0KTtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB3aWR0aDogOTAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1tZW51X19kcm9wZG93bi1vcHRpb25zIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3RhdGljLTEwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBmb3JtIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgICAmW3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDExNSkgcmVtLWNhbGMoMTApIHJlbS1jYWxjKDE1KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLWlubmVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnRodWItbWVudV9fbGluay1pbmZvLS1jbG9zZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDYycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Nsb3NlLWJsdWUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50aHViLW1lbnVfX2Ryb3Bkb3duLW9wdGlvbnMtc2VhcmNoIHtcbiAgICBtaW4taGVpZ2h0OiA2MnB4O1xuICAgIHBhZGRpbmc6IDExcHggMDtcblxuICAgIC5jb250ZW50aHViLW1lbnVfX3NlYXJjaC1pY29uIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1tZW51X19zZWFyY2gtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgQGV4dGVuZCAlYnV0dG9uLS1hY3RpdmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgdG9wOiAwcHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDIwcHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDIwcHg7XG4gICAgaGVpZ2h0OiA0MXB4O1xufVxuIiwiLmRpdmlkZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGhlaWdodDogMTEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDEzMHB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy01MDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgd2lkdGg6IDFweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNzBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB3aWR0aDogMTJweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB0b3A6IDkwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRpdmlkZXItLW1pbiB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi5mYXFzLXBhZ2Uge1xuICAgIC5nZW5lcmljLW1haW4ge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCkgMCByZW0tY2FsYyg0MCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwMCkgMCByZW0tY2FsYyg0MCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMjUpIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmFxcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICB9XG5cbiAgICAuZmFxc19faW5uZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmFxc19fY29sdW1uLXRpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDIwLCAyOCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmFxc19fcG9zdC13cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZhcXNfX3Bvc3Qge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yLXN0YXRpYy01MDtcbiAgICAgICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgfVxuXG4gICAgLmZhcXNfX3F1ZXN0aW9uIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zaG93LW1vcmUtZ3JleS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZhcXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWRhcms7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmLmZhcXMtLXZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5mYXFzX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICB9XG59XG5cbi5mYXFzX19jb2x1bW4tdGl0bGUge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCwgMjQpO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMik7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgxKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxufVxuXG4uZmFxc19fY29sdW1uLWxpc3Qge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbn1cblxuLmZhcXNfX3Bvc3Qtd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgIH1cbn1cblxuXG4uZmFxc19fcG9zdCB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci13aGl0ZTtcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjYpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZhcXNfX3F1ZXN0aW9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc2hvdy1tb3JlLXdoaXRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgIH1cblxuICAgICYuZXhwYW5kZWQgICB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZhcXNfX2Fuc3dlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cblxuLnBhZ2UtdGVtcGxhdGUtZmFxcyB7XG4gICAgLmZhcXNfX2Fuc3dlciB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmFxc19fbGluayB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNik7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jaGV2cm9uLXJpZ2h0LXdoaXRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICB9XG59XG5cbi5mYXFzX19yZXR1cm4tdG8tdG9wIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAmOnZpc2l0ZWQsIDpob3ZlciwgOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICB9XG59XG5cbi5mYXFzX19hbnN3ZXItaGVscGZ1bCB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNHM7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICBmb250LXNpemU6IDAuODVlbTtcbn1cblxuLmZhcXNfX2hlbHBmdWwtY2hvaWNlIHtcbiAgICBwYWRkaW5nOiAwLjJyZW0gMC41cmVtO1xufVxuIiwiLmNvbnRhY3QtbWFpbl9fc3VnZ2VzdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC5zdWdnZXN0X19pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaW5wdXQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbWluLXdpZHRoOiA0MDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG4gICAgLmxvYWRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5mYXFzLXN1Z2dlc3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICRjb2xvci1ncmV5LWRhcms7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgJi5mYXFzLS12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5mYXFzX19wb3N0IHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkY29sb3ItZ3JleS1kYXJrLCAwLjI1KTtcbiAgICAgIH1cbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRjb2xvci1ncmV5LWRhcmssIDAuMjUpO1xuICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWRhcms7XG4gICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgfVxuXG4gICAgLmZhcXNfX3F1ZXN0aW9uIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zaG93LW1vcmUtZ3JleS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmFxc19fYW5zd2VyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmFxc19fcG9zdC13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmFxc19fY29sdW1uLWxpc3Qge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvbnRhY3QtbWFpbl9fYW5zd2VyLXRpdGxlLFxuICAuY29udGFjdC1tYWluX19uby1yZXN1bHRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmNvbnRhY3QtbWFpbl9fbm8tcmVzdWx0cyB7XG4gICAgbWFyZ2luOiAyMHB4IDAgNXB4O1xuICB9XG5cbiAgI2xvYWQtbW9yZS1idG4ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LWNvb2w7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDVweCAxMHB4IDVweCAwO1xuICB9XG5cbiAgI3N1Ym1pdC1lbnF1aXJ5LWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDVweCAxMHB4IDVweCAwO1xuICB9XG5cbiAgI3N1Ym1pdC1zZWNvbmRhcnktYnRuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogNXB4IDEwcHggNXB4IDA7XG4gIH1cbn1cblxuLnBhZ2UtdGVtcGxhdGUtZW5xdWlyaWVzIHtcbiAgLmNvbnRhY3QtbWFpbl9fZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGNvbG9yLWdyZXktZGFyaywgMC4yNSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5jb250YWN0LW1haW5fX2J1dHRvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cbn0iLCIuZmFxc19fYW5jaG9yLWxpbmtzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE2MCkgMCByZW0tY2FsYyg5MCkgcmVtLWNhbGMoMzApO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mYXFzX19hbmNob3ItbGluayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XG4gICAgfVxuXG5cbn1cblxuLmZhcXNfX2FuY2hvci1saW5rcy1saXN0IHtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvY2hlY2suc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI3cHg7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZhcXMtcGFnZSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2VuZXJpYy1tYWluIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDcuODEyNXJlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdlbmVyaWMtbWFpbl9faGVhZGVyIHtcbiAgICAgICAgJjpub3QoLm1vYmlsZSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLm1vYmlsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5mZWF0dXJlZC1mYWNpbGl0aWVzIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgfVxuXG4gICAgJi5mZWF0dXJlZC1mYWNpbGl0aWVzLS1jZW50cmUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHRzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19pbnRybyB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXgtd2lkdGg6IDUyMHB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgdG9wOiAtMTEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiA0NXB4IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTYwcHg7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX192aXJ0dWFsLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIEBleHRlbmQgJWJ1dHRvbi0tbGFyZ2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4dGVybmFsLWxpbmstYmxhY2suc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgJGNvbG9yLXdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHRlcm5hbC1saW5rLXdoaXRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHRzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0cyB7XG4gICAgbWFyZ2luOiAwIDAgNTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgIGJvdHRvbTogLTc1cHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY29sdW1uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyNXB4IDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY29sdW1uLWltYWdlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtdGl0bGUge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWNvbHVtbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgIC5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtdGl0bGUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItYm9vaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LXRpdGxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNSU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy01MDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MCU7XG4gICAgICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDM2cHg7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNiwgMjIpO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgbWFyZ2luOiA1cHggMCAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWN0YSB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1yZWQ7XG4gICAgY29sb3I6ICRjb2xvci1yZWQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXJlZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcmVkO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgJi5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtY3RhLS1oYWxmIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1saW5rIHtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQtbGluay5yZWQge1xuICAgIGNvbG9yOiAkY29sb3ItcmVkO1xufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19faGlnaGxpZ2h0LWNvbHVtbi1pbWFnZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgICAgICBib3R0b206IC0xNDVweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1pbWFnZSB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA2MCU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni41JTtcbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGJhY2tncm91bmQ6ICRzdGF0aWMtMTA7XG4gICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDMwcHg7XG4gICAgfVxufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaXJjdWxhci1ib29rO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtbGlzdCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtNTA7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtNTA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMjBweCAwIDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAuNHM7XG5cbiAgICAmLmhpZGRlbi1jb250ZW50IHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9ncmFkaWVudC11cC5wbmcnKSBuby1yZXBlYXQgYm90dG9tO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDYwcHg7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICAuaW5uZXIge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG59XG5cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2V4dHJhcy1pdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWluLWhlaWdodDogODVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgfVxufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLXRpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NoZWNrLWJsdWUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjdweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19leHRyYXMtZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZmVhdHVyZWQtZmFjaWxpdGllc19fZXh0cmFzLW1vcmUge1xuICAgIEBleHRlbmQgJWJ1dHRvbl9fbW9yZS1pbmZvO1xuICAgIGJhY2tncm91bmQ6ICRzdGF0aWMtMTA7XG4gICAgYm90dG9tOiAtMTBweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwYWRkaW5nOiAwIDQwcHggMCAyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIHBhZGRpbmc6IDAgNjBweCAwIDQwcHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogMzVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2JyZWFrIHtcbiAgICAmLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2JyZWFrLS1kZXNrdG9wICB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZmVhdHVyZWQtZmFjaWxpdGllc19fYnJlYWstLXRhYmxldCAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgY2xlYXI6IGluaXRpYWw7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmZlZWxpbmctaW5zcGlyZWQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJGNvbG9yLXJlZC1ncmFkaWVudCwgJGJyYW5kLXByaW1hcnkpO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMzBweCAwIDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDMwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgNDBweDtcbiAgICB9XG59XG5cbi5mZWVsaW5nLWluc3BpcmVkX19pbm5lciB7XG4gICAgcGFkZGluZzogMCAxMnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgxKTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDEwcHg7XG4gICAgICAgIG1heC13aWR0aDogNDUwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZlZWxpbmctaW5zcGlyZWRfX2J1dHRvbnMge1xuICAgIG1hcmdpbjogMjBweCAwIDEwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDQwcHggMCAyMHB4O1xuICAgIH1cbn1cblxuLmZlZWxpbmctaW5zcGlyZWRfX2J1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIEBleHRlbmQgJWJ1dHRvbi0tbGFyZ2U7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1ibGFjaztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdpZHRoOiA5MCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmxhY2s7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIG1heC13aWR0aDogMjcwcHg7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzKSByZW0tY2FsYygxMCk7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgfVxufVxuIiwiLmhvbWUge1xuICAgIC5mb290ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICYuZml4ZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiA0MHZoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3RhdGljLTI1O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmZvb3Rlcl9fY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xufVxuXG4uZm9vdGVyX19tZW51cyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCA1MHB4O1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fbWVudS13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fbWVudS1hYm91dCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOSk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgyKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbiAgICAuZm9vdGVyX19tZW51LXRpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvb3Rlcl9fbWVudS1jb250YWN0IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG59XG5cbi5mb290ZXJfX21lbnUtc29jaWFsIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fbWVudS10aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIG1pbi13aWR0aDogMTI1cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDhweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vLXRvdWNoZXZlbnRzIHtcbiAgICAuZm9vdGVyX19tZW51LXRpdGxlIHtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZvY3VzLTE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3Itc3RhdGljLTUwO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fbWVudS10aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4cGFuZC5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgIH1cblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3RhdGljLTI1O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaGlkZS1ncmV5LnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtMjU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTI1O1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXJfX21lbnUtY29udGVudCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN0YXRpYy0yNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fbWVudSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBsaSB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjEpO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyX19tZW51LS1oYWxmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyX19zb2NpYWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvb3Rlcl9fc29jaWFsLWljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm8tcmVwZWF0IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICB9XG5cbiAgICAmLmZvb3Rlcl9fc29jaWFsLWljb24tLWZiIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZmFjZWJvb2stYmxhY2suc3ZnJyk7XG4gICAgfVxuXG4gICAgJi5mb290ZXJfX3NvY2lhbC1pY29uLS10dyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3gtYmxhY2suc3ZnJyk7XG4gICAgfVxuXG4gICAgJi5mb290ZXJfX3NvY2lhbC1pY29uLS1pZyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2luc3RhZ3JhbS1ibGFjay5zdmcnKTtcbiAgICB9XG5cbiAgICAmLmZvb3Rlcl9fc29jaWFsLWljb24tLXR0IHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvdGlrdG9rLWJsYWNrLnN2ZycpO1xuICAgIH1cblxuICAgICYuZm9vdGVyX19zb2NpYWwtaWNvbi0teXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy95b3V0dWJlLWJsYWNrLnN2ZycpO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fY29weXJpZ2h0IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xuICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB9XG59XG5cbi5mb290ZXJfX2NvcHlyaWdodC1jb250ZW50IHtcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig3KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTIpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXJfX2NvcHlyaWdodC1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC41cmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgd2lkdGg6IG1pbi1jb250ZW50O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIlaW5wdXQtZm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1vcmFuZ2U7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggJGNvbG9yLW9yYW5nZTtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG5pbnB1dDpub3QoLkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uKSB7XG4gICAgJlt0eXBlPSd0ZXh0J10sXG4gICAgJlt0eXBlPSdwYXNzd29yZCddLFxuICAgICZbdHlwZT0nZW1haWwnXSxcbiAgICAmW3R5cGU9J3RlbCddIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNpcmN1bGFyLWJvb2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLS4wMWVtO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMykgcmVtLWNhbGMoMjApO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIEBleHRlbmQgJWlucHV0LWZvY3VzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNjtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pbnB1dF9fc2VhcmNoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSB1cmwoJy4uL2ltZy9zZWFyY2guc3ZnJykgbm8tcmVwZWF0IDk0JSAxM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSB1cmwoJy4uL2ltZy9zZWFyY2guc3ZnJykgbm8tcmVwZWF0IDk1JSAxM3B4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSkgcmVtLWNhbGMoNTApIHJlbS1jYWxjKDE1KSByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmlucHV0X19maWx0ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgJlt0eXBlPSdyYWRpbyddLFxuICAgICZbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG1hcmdpbjogLTFweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMXB4O1xuXG4gICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMXB4IDZweCAwIDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzICsgbGFiZWwge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogYXV0byAzcHggJGNvbG9yLW9yYW5nZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9ybXNfX2lucHV0LS1jaGVja2JveCB7XG4gICAgICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9jaGVja2JveC1ibGFuay5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAtNHB4IDhweCAwIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2NoZWNrYm94LWNoZWNrZWQuc3ZnJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5mb3Jtc19faW5wdXQtLXJhZGlvIHtcbiAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3JhZGlvLWJsYW5rLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAtM3B4IDhweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9yYWRpby1jaGVja2VkLnN2ZycpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxudGV4dGFyZWEge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtODA7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaXJjdWxhci1ib29rO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgaGVpZ2h0OiAxNzBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLS4wMWVtO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzKSByZW0tY2FsYygyMCk7XG4gICAgcmVzaXplOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIEBleHRlbmQgJWlucHV0LWZvY3VzO1xuICAgIH1cbn1cblxuLnJhZGlvX193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJhZGlvX193cmFwcGVyLS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG59XG5cbi5zZWxlY3RfX3dyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHBhbmQtZ3JleS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxOHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiA5NCU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB0b3A6IDMlO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICB9XG5cbiAgICAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgICYuaW5wdXRfX3dyYXBwZXItLXZhbGlkLFxuICAgICYuaW5wdXRfX3dyYXBwZXItLWludmFsaWQge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICByaWdodDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAgICAgICAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgICAgICBsZWZ0OiA0NjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcblxuICAgICAgICAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgICAgICBsZWZ0OiA0MTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaW5wdXRfX3dyYXBwZXItLXZhbGlkLFxuICAgICAgICAmLmlucHV0X193cmFwcGVyLS1pbnZhbGlkIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIC5zZWxlY3RfX3dyYXBwZXIge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5zZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtODA7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItYm9vaztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLS4wMWVtO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzKSByZW0tY2FsYyg0MCkgcmVtLWNhbGMoMTMpIHJlbS1jYWxjKDIwKTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBAZXh0ZW5kICVpbnB1dC1mb2N1cztcbiAgICB9XG59XG5cblxuLmZvcm1fX3ZhbGlkaXR5LWljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDQlO1xuICAgIHRvcDogOHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICBsZWZ0OiA0NTBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbGVmdDogNDE1cHg7XG4gICAgICAgIHRvcDogMTJweDtcbiAgICB9XG59XG5cbi5pbnB1dF9fd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbnB1dF9fd3JhcHBlci0tdmFsaWQge1xuICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItZ3JlZW47XG5cbiAgICAgICAgJlt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgJi5pbnB1dF9fc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDg5JTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3NXB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiA4NyU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDkwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDk1JTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3ZhbGlkLnN2ZycpO1xuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxufVxuXG4uaW5wdXRfX3dyYXBwZXItLWludmFsaWQge1xuICAgIGlucHV0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itb3JhbmdlO1xuXG4gICAgICAgICZbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgICAgICYuaW5wdXRfX3NlYXJjaCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiA4OSU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNzVweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogODclO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiA5NSU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm1fX3ZhbGlkaXR5LW1lc3NhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2F0dGVudGlvbi5zdmcnKTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1vcmFuZ2U7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG59XG5cbi5mb3JtX192YWxpZGl0eS1tZXNzYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IC0yNXB4O1xuICAgIGNvbG9yOiAgI2RmNzIwODtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweFxufVxuXG4uZm9ybV9fc3ViZmllbGRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiLmZyZWVzd2ltX19sb2dpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mcmVlc3dpbV9fZWxpZ2liaWxpdHktbWVzc2FnZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogNDBweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogODAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uZnJlZXN3aW1fX2VsaWdpYmlsaXR5LW1lc3NhZ2UtdGl0bGUge1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZnJlZXN3aW1fX2RldGFpbGVkLWZvcm0ge1xuICAgIHAge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbn1cblxuLmZyZWVzd2ltX19lbGlnaWJpbGl0eS1vdGhlci1pbnB1dCB7XG4gICAgJjplbXB0eSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uZnJlZXN3aW1fX2VsaWdpYmlsaXR5LXNlY29uZGFyeS1vcHRpb25zIHtcbiAgICAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuLmZyZWVzd2ltX19zZWN0aW9ucyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uZnJlZXN3aW1fX3NlY3Rpb24ge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGZvY3VzLTE7XG4gICAgfVxuXG4gICAgJi5jb250YWN0LW1haW5fX21vZHVsZS0tZGV0YWlscyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDQwcHggMzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG5cbiAgICAmLS1hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAuZnJlZXN3aW1fX3NlY3Rpb24tdGl0bGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGZvY3VzLTI7XG4gICAgICAgIH1cblxuICAgICAgICAuZnJlZXN3aW1fX3NlY3Rpb24tYm9keSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZm9jdXMtMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXByZWZlcmVuY2VzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5mcmVlc3dpbV9fc2VjdGlvbi10aXRsZSxcbi5mcmVlc3dpbV9fc2VjdGlvbi1ib2R5IHtcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDI1cHg7XG4gICAgfVxuXG59XG5cbi5mcmVlc3dpbV9fc2VjdGlvbi10aXRsZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy0yNTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHdoaXRlO1xufVxuXG4uZnJlZXN3aW1fX3NlY3Rpb24tYm9keSB7XG4gICAgYmFja2dyb3VuZDogJHN0YXRpYy0xMDtcbiAgICBwYWRkaW5nOiAyMHB4IDM1cHggMzVweDtcblxuICAgIC5pbnB1dF9fd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIH1cblxuICAgIC5zZWxlY3RfX3dyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgIFtpZF49J3NlbGVjdC1vcHRpb24tY2hvaWNlJ10gPiAuZm9ybV9fdmFsaWRpdHktaWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgIHRvcDogLThweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtNzA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxufVxuXG4uZnJlZXN3aW1fX2Zvb3RlciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgYmFja2dyb3VuZDogJGZvY3VzLTE7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IC0xOHB4O1xuICAgIHBhZGRpbmc6IDI1cHggMTVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogLTM4cHggMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiAtMzhweCAwIDAgMzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG5cbiAgICAuY29udGFjdC1tYWluX19idXR0b24ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxufVxuXG4uZnJlZXN3aW1fX2NvbmZpcm0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG5cbiAgICAmLS1jaGVja2JveGVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLS1tYXJrZXRpbmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmxvZ2luX19mb3JtLS1jYXJkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xufVxuXG4ud3JhcHBlci1tYXJrZXRpbmdQcmVmZXJlbmNlcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi5wYWdlLXRlbXBsYXRlLWVucXVpcmllcyxcbi5wYWdlLXRlbXBsYXRlLWVucXVpcmllcy10aGFuay15b3UsXG4ucGFnZS10ZW1wbGF0ZS1mYXFzLFxuLnBhZ2UtdGVtcGxhdGUtZmVlZGJhY2ssXG4ucGFnZS10ZW1wbGF0ZS1mZWVkYmFjay10aGFuay15b3UsXG4ucGFnZS10ZW1wbGF0ZS1nZW5lcmljLFxuLnBhZ2UtdGVtcGxhdGUtZnJlZXN3aW0sXG4ucGFnZS10ZW1wbGF0ZS1zY3YsXG4uc2luZ2xlLWNlbnRyZS1zdWJwYWdlLFxuLnNpbmdsZS1wcm9tby1wYWdlLFxuLmVycm9yNDA0IHtcbiAgICAud3JhcHBlciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAkd2hpdGUgNTAlLCAkc3RhdGljLTEwIDUwJSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdlbmVyaWMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgfVxufVxuXG4uZ2VuZXJpY19fY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOSk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgwKTtcbiAgICB9XG59XG5cbi5nZW5lcmljX193cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB9XG59XG5cbi5nZW5lcmljX19zaWRlYmFyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc3RhdGljLTEwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxufVxuIiwiLmdlbmVyaWMtbWFpbiB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTAwKSAwIHJlbS1jYWxjKDQwKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyNSkgMCByZW0tY2FsYyg0MCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMjUpIDA7XG4gICAgfVxufVxuXG4uZ2VuZXJpYy1tYWluX19oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDMwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHggMzBweCAwO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTI1O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ2KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg2Mik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBtYXgtd2lkdGg6IDY4MHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCA0MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2VuZXJpYy1tYWluX19oZWFkZXItYnV0dG9ucyB7XG4gICAgbWFyZ2luOiAxMHB4IDAgO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG59XG5cbi5nZW5lcmljLW1haW5fX2J1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5nZW5lcmljLW1haW5fX2RpdmlkZXIge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNiwgMjIpO1xuICAgIG1hcmdpbjogMTVweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICB9XG59XG5cbi5nZW5lcmljLW1haW5fX2xpbmsge1xuICAgIEBleHRlbmQgJWxpbms7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE4LCAyNik7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5nZW5lcmljLW1haW5fX2NvbnRlbnQge1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIHBhZGRpbmc6IDI1cHggMjBweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDglO1xuICAgICAgICB3aWR0aDogODQlO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIyKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGVtIHtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSB7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiA+IHVsLFxuICAgICYgPiBvbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjUpO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDZweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yN3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgPiBvbCB7XG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IGl0ZW07XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihpdGVtKSAnLic7XG4gICAgICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGl0ZW07XG4gICAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yN3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgPiBibG9ja3F1b3RlIHtcbiAgICAgICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDIwLCAyOCk7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvcXVvdGUtcmVkLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgLTEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCA1MHB4O1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZmlndXJlLFxuICAgIGltZyB7XG4gICAgICAgICYuYWxpZ25sZWZ0LFxuICAgICAgICAmLmFsaWducmlnaHQge1xuICAgICAgICAgICAgJi53cC1jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFsaWdubGVmdCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDI1cHggMjBweCAwO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IC0yNXB4IDIwcHggMDtcbiAgICAgICAgICAgICAgICByaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDIwcHggMjVweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAtMjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ25jZW50ZXIsXG4gICAgICAgICYuYWxpZ25ub25lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmtlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1MHB4IGF1dG87XG5cbiAgICAgICAgICAgICAgICAmLndwLWNhcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcblxuICAgICAgICAgICAgICAgICAgICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgfVxuXG4gICAgLmlmcmFtZS12aWRlbyB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1NS4yNSU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgICAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtMjU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtMjU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgybiArIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdGF0aWMtMTA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTQsIDE4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjVweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbmZvLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBiYWNrZ3JvdW5kOiAkc3RhdGljLTEwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRzdGF0aWMtMTA7XG4gICAgbWFyZ2luOiA1cHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaW5mby1ibG9ja19faW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEzMHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzKTtcbiAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5mby1ibG9ja19fY29udGVudCB7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig5KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmluZm8tYmxvY2tfX2hlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAwIDIwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mby1ibG9ja19fbW9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmluZm8tYmxvY2tfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMik7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oaWRkZW4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pbmZvLWJsb2NrX19tb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMik7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkbmF2SGVpZ2h0U21hbGw6IDYwcHg7XG4kbmF2SGVpZ2h0TWVkaXVtOiA3MnB4O1xuJG1lbnVUaXRsZUhlaWdodFNtYWxsOiA2MHB4O1xuJG1lbnVUaXRsZUhlaWdodE1lZGl1bTogNzJweDtcblxuLmdlbmVyaWMtbW9iaWxlLW1lbnUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLnN0aWNreS1uYXYtLWFjdGl2ZSB7XG4gICAgICAgIC5nZW5lcmljLW1vYmlsZS1tZW51X193cmFwcGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0aWMtMTA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAycHggLTJweCAkY29sb3Itc3RhdGljLTcwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6ICRuYXZIZWlnaHRTbWFsbDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHRvcDogJG5hdkhlaWdodE1lZGl1bTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNsaWRlLXVwIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b3VjaGV2ZW50cyB7XG4gICAgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX3dyYXBwZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgLjRzO1xuICAgIH1cbn1cblxuLmdlbmVyaWMtbW9iaWxlLW1lbnVfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwO1xufVxuXG4uZ2VuZXJpYy1tb2JpbGUtbWVudV9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgyMiwgMzApO1xuICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHBhbmQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9oaWRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4uZ2VuZXJpYy1tb2JpbGUtbWVudV9fbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gKCN7JG5hdkhlaWdodFNtYWxsfSArICN7JG1lbnVUaXRsZUhlaWdodFNtYWxsfSkpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3aGl0ZTtcblxuICAgIC5nZW5lcmljLW1vYmlsZS1tZW51X193cmFwcGVyLnNsaWRlLXVwICYge1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbWVudVRpdGxlSGVpZ2h0U21hbGx9KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gKCN7JG5hdkhlaWdodE1lZGl1bX0gKyAjeyRtZW51VGl0bGVIZWlnaHRNZWRpdW19KSk7XG5cbiAgICAgICAgLmdlbmVyaWMtbW9iaWxlLW1lbnVfX3dyYXBwZXIuc2xpZGUtdXAgJiB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbWVudVRpdGxlSGVpZ2h0TWVkaXVtfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCwgMjQpO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSB7XG4gICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnBhZ2VfaXRlbV9oYXNfY2hpbGRyZW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGZvY3VzLTE7XG5cbiAgICAgICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9oaWRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtNzA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDIwcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jbG9zZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdGF0aWMtMTA7XG5cbiAgICAgICAgICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2V4cGFuZC5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuZ2VuZXJpYy1zaWRlYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMjUpIDAgMCByZW0tY2FsYyg1MCk7XG5cbiAgICBoNCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3Itc3RhdGljLTcwO1xuICAgICAgICBtYXJnaW46IDIwcHggMCAzMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5nZW5lcmljLXNpZGViYXJfX2xpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cbiAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0sXG4gICAgICAgICYuY3VycmVudF9wYWdlX3BhcmVudCB7XG4gICAgICAgICAgICAmLnBhZ2VfaXRlbV9oYXNfY2hpbGRyZW4ge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9oaWRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvYXJyb3ctcmlnaHQtYmx1ZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTgsIDI0KTtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmdvb2dsZS1hZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjOWNhY2I7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjOWNhY2I7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAxNHB4O1xuICAgIHBhZGRpbmc6IDE0cHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDI4cHg7XG4gICAgICAgIHBhZGRpbmc6IDI4cHggMDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAjOTU5NTk1O1xuICAgICAgICBjb250ZW50OiAnUGFydG5lciBBZHZlcnRpc2VtZW50JztcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG59XG5cbi5mZWF0dXJlZC1mYWNpbGl0aWVzX19oaWdobGlnaHQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJiArIC5nb29nbGUtYWQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtMTAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNtZW1iZXJzaGlwcyB7XG4gICAgLmdvb2dsZS1hZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWZmZjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1lbWJlcnNoaXAtYmVuZWZpdHMge1xuICAgIC5nb29nbGUtYWQge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJ0aWNsZV9fY29udGVudCB7XG4gICAgLmdvb2dsZS1hZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iZW5lZml0c19fbGlzdCB7XG4gICAgLmdvb2dsZS1hZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmNvbnRlbnRodWItY2F0ZWdvcmllcyB7XG4gICAgLmFkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgLmNvbnRlbnRodWItY2F0ZWdvcmllc19faW5uZXIge1xuICAgICAgICAgICAgLmdvb2dsZS1hZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudGh1Yi1mZWF0dXJlZF9faW5uZXIge1xuICAgIC5nb29nbGUtYWQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbn1cbiIsIi8vXG4vLyAgR3JpZCBoZWxwZXIgKHRvZ2dsZSB0aGlzIG9uIG9yIG9mZiB0byBvdmVybGF5IGEgZ3JpZClcbi8vXG4uZ3JpZC1oZWxwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBlbGVtZW50KCdpbm5lcicpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGVsZW1lbnQoJ2NvbCcpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMSk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMGY7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuaGVhZGVyIHtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIC40cztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDAwO1xuXG4gICAgJi5oaWRkZW4ge1xuICAgICAgICB0b3A6IC02MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB0b3A6IC03MnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdiB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmhlcm8ge1xuICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgkY29sb3ItYmxhY2ssIC44OCkgMCUsIHJnYmEoJGNvbG9yLXdoaXRlLCAwKSAxMDAlKTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IC44O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgbWluLWhlaWdodDogMjAwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ1MHB4O1xuICAgIH1cbn1cblxuLmhvbWUtdjItaGVyby5oZXJvOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5oZXJvLS1tZW51IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICB9XG59XG5cbi5oZXJvX19jb250ZW50IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUzMHB4O1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDYpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDUyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZXJvX19zdWJ0aXRsZSB7XG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgfVxuXG4gICAgLmhlcm9fX2xpbmsge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB9XG59XG5cbi5ob21lLXYyLWhlcm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5oZXJvX19jb250ZW50IHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg1MCk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDcwKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNzApO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg4MCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyb19fc3VidGl0bGUge1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTcsIDI0KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDIwLCAyNyk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDIyLCAzMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZ1bGwtYmcge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogLTEwMDtcblxuICAgICAgICAudmlkZW8tanMge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC52anMtY29udHJvbC1iYXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudmpzLXRlY2gge1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZXJvLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZTVlNWU1IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXJcbn1cblxuLmhlcm8tbW9iaWxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmhlcm8tZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgIHBhZGRpbmc6IDQwcHggMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgfVxuXG59XG5cbi5oZXJvX19jb250ZW50LWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3RhdGljLTUwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG1hcmdpbjogMjVweCBhdXRvIDA7XG4gICAgd2lkdGg6IDE1MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG5cbiAgICAmLmhlcm9fX2NvbnRlbnQtaW1hZ2UtLXBhcnRuZXIge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxufVxuXG4uaGVyb19fc3VidGl0bGUge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5oZXJvX19pbWFnZSB7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICB9XG59XG5cbi5oZXJvX19pbWFnZS0tc3BsaXQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbn1cblxuYS5oZXJvLWltYWdlLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG59XG4iLCIuc2xpY2stc2xpZGVyIHtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAuc2xpY2stdHJhY2ssXG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgfVxuXG4gICAgJi5zbGljay1sb2FkaW5nIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxufVxuXG4uc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi5zY3JvbGxib3hfX2Nhcm91c2VsIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1jdXJyZW50IHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbiIsIi5ob21lLXYyLWNhbGxvdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdXJmYWNlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgYS5oZXJvLWltYWdlLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgfVxufVxuXG4uaG9tZS12Mi1jYWxsb3V0X19pbm5lciB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjY1cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA3NTBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjkpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzIpO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaG9tZS12Mi1jYWxsb3V0X19hcnRpY2xlcyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG59XG5cbi5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAwIDZweDtcbiAgICAgICAgd2lkdGg6IDMzLjMzJTtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCwgLTJweCwgMTBweCwgcmdiYSgwLCAwLCAwLCAuMTUpLCB0cnVlKTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhvbWUtdjItY2FsbG91dF9fYXJ0aWNsZS1tZXRhIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLmhpZ2hsaWdodC1jdGEge1xuICAgICAgICBAZXh0ZW5kICVidXR0b247XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgbWFyZ2luOiAyNXB4IGF1dG8gMjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAmLnJlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcmVkO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcmVkO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcmVkO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1yZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAmLmhpZ2hsaWdodC1jdGEtLWhhbGYge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1jdGEge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtdGl0bGUge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNywgMjQpO1xuICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaXJjdWxhci1ib2xkO1xuICAgIG1hcmdpbjogNnB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA5MCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ob21lLXYyLWNhbGxvdXRfX2FydGljbGUtZGVzYyB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMik7XG4gICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgfVxufVxuIiwiLmhvbWUtdjItY29udGVudC1ibG9jayB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgcGFkZGluZzogNDVweCAyMHB4IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogNTBweCAyMHB4IDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA4MHB4IDIwcHggOTBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA3NTBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjkpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzIpO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDEuNjVyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oaWdobGlnaHQtY3RhIHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXJlZDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1yZWQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXJlZDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXJlZDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAgICAgJi5oaWdobGlnaHQtY3RhLS1oYWxmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcHAtc3RvcmUtYnV0dG9ucyB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTgwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5ob21lLXYyLWxhdGVzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1cmZhY2U7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgcGFkZGluZzogMzBweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgIH1cblxuICAgIC5wb3N0LWxpc3Qge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4uaG9tZS12Mi1sYXRlc3RfX2lubmVyIHtcbiAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjY1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wb3N0LWxpc3RfX2FydGljbGUtY2F0ZWdvcnkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxufVxuIiwiLmxlc3Nvbi1sZXZlbHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1mb2N1cy0xO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMzBweCAwIDQwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDE0cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDE0cHggNTBweDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0Mik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sZXNzb24tbGV2ZWxzX19pbnRybyB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYubGVzc29uLWxldmVsc19faW50cm8tLWNlbnRyZSB7XG4gICAgICAgIG1heC13aWR0aDogNTcwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDI1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sZXNzb24tbGV2ZWxzX19saXN0IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmxlc3Nvbi1sZXZlbHNfX2xldmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbGV4OiAwIDAgMjgwcHg7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMCAxMnB4IDI0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5sZXNzb24tbGV2ZWxzX19pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgaGVpZ2h0OiAxNTVweDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmxlc3Nvbi1sZXZlbHNfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5sZXNzb24tbGV2ZWxzX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNpcmN1bGFyLWJvbGQ7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubGVzc29uLWxldmVsc19fZGVzYyB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5LWNvb2w7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBtaW4taGVpZ2h0OiA4OXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMTJweCAwIDA7XG59XG5cbi5sZXNzb24tbGV2ZWxzX19saW5rIHtcbiAgICBAZXh0ZW5kICVsaW5rO1xufVxuIiwiJWxpbmsge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi5saW5rLS1leHRlcm5hbCB7XG4gICAgQGV4dGVuZCAlbGluaztcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgcGFkZGluZy1yaWdodDogMjdweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHRlcm5hbC1saW5rLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMycHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgfVxufVxuIiwiLmxvYWRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTAwO1xufVxuXG4ubG9hZGVyX19zcGlubmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZm9udC1zaXplOiA4MHB4O1xuICAgIGhlaWdodDogMWVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAxMDBweCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMWVtO1xuXG4gICAgJi5sb2FkZXJfX3NwaW5uZXItLXNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBoZWlnaHQ6IC4yZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IC4yZW07XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhIDEuMTNzIGxpbmVhciBpbmZpbml0ZSwgb3BhIDMuNjdzIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAtLjFlbTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAyNTAlO1xuXG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBhbmltYXRpb246IHJvdGEgMS44NnMgbGluZWFyIGluZmluaXRlLCBvcGEgNC4yOXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgIG1hcmdpbjogLS4xZW0gMCAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IC0xNTAlIDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YSAxLjQ1cyBsaW5lYXIgaW5maW5pdGUsIG9wYSA1LjEycyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAtLjFlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAtMTUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YSAxLjcycyBsaW5lYXIgaW5maW5pdGUsIG9wYSA1LjI1cyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHVycGxlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogLS4xZW0gMCAwO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAyNTAlIDUwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3RhIHtcbiAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuQGtleWZyYW1lcyBvcGEge1xuICAgIDEyJSB7IG9wYWNpdHk6IC44OyB9XG4gICAgMTkuNSUgeyBvcGFjaXR5OiAuODg7IH1cbiAgICAzNy4yJSB7IG9wYWNpdHk6IC42NDsgfVxuICAgIDQwLjUlIHsgb3BhY2l0eTogLjUyOyB9XG4gICAgNTIuNyUgeyBvcGFjaXR5OiAuNjk7IH1cbiAgICA2MC4yJSB7IG9wYWNpdHk6IC42OyB9XG4gICAgNjYuNiUgeyBvcGFjaXR5OiAuNTI7IH1cbiAgICA3MCUgeyBvcGFjaXR5OiAuNjM7IH1cbiAgICA3OS45JSB7IG9wYWNpdHk6IC42OyB9XG4gICAgODQuMiUgeyBvcGFjaXR5OiAuNzU7IH1cbiAgICA5MSUgeyBvcGFjaXR5OiAuODc7IH1cbn1cbiIsIi5sb2NhdGlvbi1maW5kZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTI1O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMzZweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5wdXRfX3dyYXBwZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgLmZvcm1fX3ZhbGlkaXR5LWljb24ge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgJlt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2FkZXIge1xuICAgICAgICAgICAgbGVmdDogODklO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA0cHg7XG5cbiAgICAgICAgICAgIC5sb2FkZXJfX3NwaW5uZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y5ZmY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogNTEwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiA4cHg7XG5cbiAgICAgICAgICAgICAgICAubG9hZGVyX19zcGlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxvY2F0aW9uLWZpbmRlcl9fdGl0bGUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHBhbmQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9oaWRlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi52aXNpYmxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2NhdGlvbi1maW5kZXJfX2ZpbHRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXgtd2lkdGg6IDQyNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3Nob3ctbW9yZS1yZWQuc3ZnJykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmUgICB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3Itc3RhdGljLTcwO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxvY2F0aW9uLWZpbmRlcl9fYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXRfX2ZpbHRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlucHV0X19maWx0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzNXB4O1xufVxuXG4ubG9jYXRpb24tZmluZGVyX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgpO1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgIH1cbn1cblxuLmxvY2F0aW9uLWZpbmRlcl9fYnV0dG9uLWxvY2F0aW9uIHtcbiAgICBAZXh0ZW5kICVidXR0b24tbG9jYXRpb247XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KCk7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cbn1cblxuLmxvY2F0aW9uLWZpbmRlcl9fYnV0dG9uLS1hY3RpdmUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uOiByb3RhdGluZyAuNXMgbGluZWFyIGluZmluaXRlO1xuICAgIH1cbn1cblxuLmxvY2F0aW9uLWZpbmRlcl9fYnV0dG9uLS1hY3RpdmUsXG4ubG9jYXRpb24tZmluZGVyX19idXR0b24tLWNvbXBsZXRlIHtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy03MDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cblxuQGtleWZyYW1lcyByb3RhdGluZyB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG4iLCIubWFwLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbn1cblxuLm1hcC10b2dnbGVfX3RleHQge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjQpO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwIDVweCAwIDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2xvY2F0aW9uLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgfVxufVxuXG4ubWFwLXRvZ2dsZV9fc3dpdGNoIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiA2NHB4O1xuXG4gICAgaW5wdXQge1xuICAgICAgICAmW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XG5cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMycHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ09uJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDdweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGljLTEwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzRweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHM7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN0YXRpYy03MDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC40cztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnT2ZmJztcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5tb2RhbCxcbi5tb2RhbF9fYmcge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTAwMDtcbn1cblxuLm1vZGFsX19iZyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNyk7XG59XG5cbi5tb2RhbF9fd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE2KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGljLTEwO1xuICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LWhlaWdodDogNzUlO1xuICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcGFkZGluZzogMjVweCAyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogOTAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xuICAgIH1cbn1cblxuLm1vZGFsX19jbG9zZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNnB4O1xuICAgIHRvcDogLTE2cHg7XG4gICAgd2lkdGg6IDE2cHg7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Nsb3NlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjRzO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgIH1cbn1cblxuLm1vZGFsX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDIwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDI0KTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMjBweDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsX190aW1lcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLm1vZGFsX19kYXkge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjQpO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIG1hcmdpbjogMnB4IDA7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTUwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjAwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tb2RhbF9fZGF5LW5hbWUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsX19saW5rIHtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG59XG5cbi5tb2RhbF9fbGluay0tYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXJlZDtcbiAgICBjb2xvcjogJGNvbG9yLXJlZDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1yZWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgcGFkZGluZzogNnB4IDIwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuLm1vZGFsX19wcmljZS1saXN0IHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLm1vZGFsX19wcmljZS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgfVxuXG4gICAgJi5tb2RhbF9fcHJpY2UtaGVhZGVyLS1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWxfX3ByaWNlLWNlbGwge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubW9kYWxfX3ByaWNlLXJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICB9XG5cbiAgICAmLm1vZGFsX19wcmljZS1yb3ctLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsX19wcmljZS1jZWxsIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTQsIDE5KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLXN0YXRpYy01MDtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdpZHRoOiAxNiU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgcGFkZGluZzogMjBweCAxMHB4IDIwcHggMDtcbiAgICB9XG5cbiAgICAmLm1vZGFsX19wcmljZS1jZWxsLS1maXJzdCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHdpZHRoOiAxMiU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNyU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tb2RhbF9fdGVybXMge1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLm1lbWJlcnNoaXAtYmVuZWZpdHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGF0aWMtMTA7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDAgMzBweDtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19pbm5lciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgxKTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3RhdGljLTUwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19jb2x1bW4ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgfVxuXG4gICAgLnBvc3QtbGlzdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gICAgLnBvc3QtbGlzdF9fYXJ0aWNsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0c19fbGlzdCB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiA5MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NoZWNrLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyN3B4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19idXR0b24td3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0c19fYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIDMwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0c19fdGV4dCB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAxOCk7XG4gICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCwgMjQpO1xuICAgICAgICBtYXJnaW46IDIwcHggMCAxMHB4O1xuICAgIH1cbn1cblxuLm1lbWJlcnNoaXAtYmVuZWZpdHNfX3BhcnRuZXItbGlzdCB7XG4gICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmxvYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1iZW5lZml0c19faXRlbSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICBiYWNrZ3JvdW5kOiAkc3RhdGljLTEwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtMjU7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDI1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLm1lbWJlcnNoaXAtYmVuZWZpdHNfX29mZmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRicmFuZC1wcmltYXJ5LCAkY29sb3ItcHVycGxlKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGxlZnQ6IC0xMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0b3A6IC0yMHB4O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIHotaW5kZXg6IDEwMDtcblxuICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTQsIDE0KTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX190aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3Itc3RhdGljLTI1O1xuICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgaW1nIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgbWluLWhlaWdodDogMTMwcHg7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTMwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggMjRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAyNHB4IDI0cHggMTRweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1MHB4KTtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19uYW1lIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJlbmVmaXRzX19kZXNjcmlwdGlvbiB7XG4gICAgY29sb3I6ICM1YzVjNWM7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGh5cGhlbnM6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG59XG5cbiIsIi5tZW1iZXJzaGlwLWJ1bmRsZXMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdXJmYWNlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMzBweCAwIDQwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDE0cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDE0cHggNzBweDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLS4wM2VtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX2ludHJvIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJi5tZW1iZXJzaGlwLWJ1bmRsZXNfX2ludHJvLS1jZW50cmUge1xuICAgICAgICBtYXgtd2lkdGg6IDU3MHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDI1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jdGE7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3dyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDcwcHg7XG5cbiAgICAgICAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgICBtYXJnaW46IDE1cHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogNHB4O1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDhweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGljay1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUge1xuICAgIGJhY2tncm91bmQ6ICAkY29sb3ItYmxhY2s7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHdoaXRlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgLy8gY3Vyc29yOiBncmFiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAgIG91dGxpbmU6IDA7XG4gICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiA4NiU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgICAgICBmbGV4OiAxIDEgMHB4O1xuICAgIH1cblxuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAvLyAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgIC8vICAgICB3aWR0aDogaW5oZXJpdDtcbiAgICAvLyAgICAgZmxleC1iYXNpczogZml0LWNvbnRlbnQ7XG4gICAgLy8gfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE0LCAxOCk7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS10aXRsZSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYiwgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19faW5uZXIge1xuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLXBvcHVsYXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBjb250ZW50OiAnTW9zdCBwb3B1bGFyJztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJhcmxvdy1ib2xkO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgaGVpZ2h0OiA4OHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTgpO1xuICAgICAgICBwYWRkaW5nOiAyNHB4IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRvcDogLTQ1cHg7XG4gICAgICAgIHdpZHRoOiA4OHB4O1xuICAgICAgICB6LWluZGV4OiA5O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAyN3B4IDA7XG4gICAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgICAgdG9wOiAtNzBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1wcmlvcml0eSB7XG4gICAgLy9cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG5cbiAgICAgICAgJi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLWNlbnRyZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHggMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtcHJpY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg2MCk7XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIHdpZHRoOiA4NSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICAgICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS10aW1lIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyNCk7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1zcGVjaWFsLW9mZmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1zcGVjaWFsLW9mZmVyLWhlYWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBjb2xvcjogJGNvbG9yLXJlZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtLXNwZWNpYWwtb2ZmZXItYm9keSB7XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWJsYWNrLCAxNSUpO1xufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLS1wYWlyLW1pZGRsZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tYnVuZGxlLWNlbnRyZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS0tYnVuZGxlIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTYsIDIyKTtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdGF0aWMtODA7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlcyB7XG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZXMtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgIC5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtdGltZSB7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1mb2N1cztcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1wcmljZSB7XG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXByaWNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtYmFybG93LWJvbGQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzNik7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHRyYW5zaXRpb246IGZvbnQtc2l6ZSAuNHM7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLWJ1bmRsZXNfX3R5cGUtbGluayB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX190eXBlLXNlY29uZGFyeUxpbmsge1xuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAxNXB4IGF1dG8gMHB4O1xuICAgIHdpZHRoOiA5NXB4O1xufVxuXG4ubWVtYmVyc2hpcC1idW5kbGVzX19idW5kbGUge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXgtd2lkdGg6IDg1MHB4O1xuICAgIHBhZGRpbmc6IDgwcHggNDBweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMTIwcHggMjBweCAwO1xuICAgIH1cblxuICAgICYubWVtYmVyc2hpcC1idW5kbGVzX19idW5kbGUtLWNlbnRyZSB7XG4gICAgICAgIG1heC13aWR0aDogNjcwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTYwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI4KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1lbWJlcnNoaXAtYnVuZGxlc19fdHlwZS1idW5kbGUtbGluayB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG4iLCIubWVtYmVyc2hpcC1vZmZlcnMge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xufVxuXG4ubWVtYmVyc2hpcC1vZmZlcnMtbmF2IHtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG92ZXJmbG93LXg6IGluaXRpYWw7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1vZmZlcnNfX2xhdGVzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLXdpZHRoOiA4MDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMTAwcHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgY29udGVudDogXCJMYXRlc3QgT2ZmZXJzXCI7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYmFybG93LWJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBoZWlnaHQ6IDgycHg7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gICAgICAgIHBhZGRpbmc6IDIxcHggMTdweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTtcbiAgICAgICAgd2lkdGg6IDgycHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICBoZWlnaHQ6IDgycHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIxcHggMTdweDtcbiAgICAgICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgICAgIHdpZHRoOiA4MnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1vZmZlcnNfX3RpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLW9mZmVycy1uYXYge1xuICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLm1lbWJlcnNoaXAtb2ZmZXJzLW5hdl9fb3B0aW9uIHtcbiAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMjRweCAwIDE4cHg7XG4gICAgd2lkdGg6IDI1JTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNlNDMyMjc7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNlNDMyMjc7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1vZmZlciB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkY29sb3ItcmVkLWdyYWRpZW50LCAkYnJhbmQtcHJpbWFyeSk7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDYwcHggMCAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogNjBweCAwIDQwcHg7XG4gICAgfVxufVxuXG4ubWVtYmVyc2hpcC1vZmZlci0tdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tZW1iZXJzaGlwLW9mZmVyX19pbm5lciB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMSk7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLW9mZmVyX19kZXNjcmlwdGlvbiB7XG4gICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgICAgICBtYXJnaW46IDIwcHggYXV0byAxMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLW9mZmVyX19idXR0b25zIHtcbiAgICBtYXJnaW46IDIwcHggMCAxMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDAgMjBweDtcbiAgICB9XG59XG5cbi5tZW1iZXJzaGlwLW9mZmVyX19idXR0b24ge1xuICAgIEBleHRlbmQgJWJ1dHRvbjtcbiAgICBAZXh0ZW5kICVidXR0b24tLWxhcmdlO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aWR0aDogOTAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsYWNrO1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBtYXgtd2lkdGg6IDI3MHB4O1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMykgcmVtLWNhbGMoMTApO1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgIH1cbn1cblxuLm1lbWJlcnNoaXAtb2ZmZXJfX3RleHQge1xuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDI0KTtcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG59XG4iLCIucmVjaXRlbWUge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgICBib3R0b206IDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICB6LWluZGV4OiAxMDAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogMXB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxufVxuXG4ubmF2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAwIDE1cHggMXB4IHJnYmEoMCwgMCwgMCwgLjI5KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtaW4td2lkdGg6IDMwMHB4O1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjRzO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgIH1cbn1cblxuLm5hdl9fbG9nbyB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcuLi9pbWcvZWEtbG9nby12ZXJ0aWNhbC5zdmcnKSBjZW50ZXIgY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgd2lkdGg6IDk3cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMnB4IDM2cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMjVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDUwcHg7XG4gICAgfVxufVxuXG4ubmF2X19tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCA2cHggMCAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEuNik7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ5KTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogOXB4O1xuICAgICAgICBwYWRkaW5nOiAwIDdweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhpZ2hsaWdodGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ2lyY3VsYXIgU3RkIEJvbGQnO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDExcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnJlZGxpbmsge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm5hdl9fbXlwcm9maWxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDRweCAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjRzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLmhpZ2hsaWdodGVkKSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIC40cztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXZfX21vYmlsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZvY3VzLTE7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDYwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNXM7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB3aWR0aDogODAlO1xuICAgIHotaW5kZXg6IDEwMDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB0b3A6IDcycHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwcHgsIDAsIDApO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNHM7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ubmF2X19tZW51LS1sb2dnZWRpbiB7XG4gICAgbGkge1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNTgpO1xuICAgIH1cbn1cblxuLm5hdl9fbW9iaWxlLS1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4ubmF2X19tZW51LWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWZvY3VzLTE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMTdweCA0NXB4IDE1cHggMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAyNHB4IDQ1cHggMjRweCAxNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5uYXZfX21lbnUtYnV0dG9uX190ZXh0IHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUpO1xuICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5uYXZfX21vYmlsZS1tZW51IHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMTVweCAzMHB4IDIwcHg7XG5cbiAgICBsaSB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgyMiwgNjApO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvaW1nL3Byb2ZpbGUvYXJyb3ctcmlnaHQtYmx1ZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdl9fbWVudS1idXR0b24tLWNsb3NlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLm5hdl9fbWVudS1kb3RzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDE4cHggMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxOHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAyNXB4IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAzcHg7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIC40cztcbiAgICAgICAgd2lkdGg6IDVweDtcbiAgICB9XG59XG5cbi5uYXZfX21lbnUtZG90cy0tYWx0IHtcbiAgICBtYXJnaW46IDE5cHggMDtcbiAgICByaWdodDogMTJweDtcbn1cblxuLm5hdl9fbWVudS1kb3RzLS1vcGVuIHtcbiAgICBtYXJnaW46IDMwcHggMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMzdweCAwO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBtYXJnaW46IC0ycHggYXV0byAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzO1xuICAgICAgICB3aWR0aDogMThweDtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdl9fbWVudS1kb3RzLS1vcGVuLWFsdCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgfVxufVxuXG4ubmF2X19tZW51LWNyb3NzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC02cHg7XG4gICAgdG9wOiAyMHB4O1xuXG4gICAgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmF2X19wcm9maWxlIHtcbiAgICBiYWNrZ3JvdW5kOiAkZm9jdXMtMTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogOTk5O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm94LXNoYWRvdzogLTZweCAtNXB4IDZweCA2cHggJGNvbG9yLXN0YXRpYy03MDtcbiAgICB9XG59XG5cbi5uYXZfX3Byb2ZpbGUtLW9wZW4ge1xuICAgIGhlaWdodDogMzAwcHg7XG4gICAgbWFyZ2luLXRvcDogNzJweDtcbn1cblxuLm5hdl9fcHJvZmlsZV9fY29sIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzKTtcbn1cblxuLm5hdl9fcHJvZmlsZV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDUwcHggMCAyMnB4O1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5uYXZfX3Byb2ZpbGVfX21lbnUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmF2X19sb2dvdXQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3Itc3RhdGljLTUwO1xuICAgIG1hcmdpbjogMzZweCAwIDA7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBwYWRkaW5nOiAzNnB4IDAgMDtcbn1cblxuLm5hdl9fbm90aWZ5LWJ1YmJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgbWFyZ2luOiAxcHggM3B4IDA7XG4gICAgcGFkZGluZzogMXB4IDVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5uYXZfX25vdGlmeS1idWJibGUtLWFsdCB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBwYWRkaW5nOiAwIDVweDtcbiAgICB3aWR0aDogMjJweDtcbn1cblxuLm5hdl9fbm90aWZ5LWJ1YmJsZS0tZW1wdHkge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgd2lkdGg6IDE0cHg7XG59XG4iLCIubmV3cy1mbGFzaCB7XG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMCwgMSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDIxNSwgMCwgMCwgMSkgMjklLCByZ2JhKDI1NSwgNDIsIDQ3LCAxKSA2OCUsIHJnYmEoMjU1LCAwLCAwLCAxKSAxMDAlKTtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTAwMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDcycHg7XG4gICAgfVxuXG4gICAgLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ubmV3cy1mbGFzaF9faW5uZXIge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxNSwgMjApO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5uZXdzLWZsYXNoX19wb3N0cyB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIC5uZXdzLWZsYXNoX19ibG9jayB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgIH1cbn1cblxuLm5ld3MtZmxhc2hfX2Jsb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi52aXNpYmxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4ubmV3cy1mbGFzaF9fbGluayB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9leHBhbmQtd2hpdGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmLm5ld3MtZmxhc2hfX2xpbmstLWxlc3MsXG4gICAgJi5uZXdzLWZsYXNoX19saW5rLS1oaWRlIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ob21lcGFnZS1uZXdzLWZsYXNoIHtcbiAgICAubmV3cy1mbGFzaCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnBhZ2UtaW50cm8ge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHBhZGRpbmc6IDU1cHggMjBweCAyNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAxMDBweCAyMHB4IDM1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTQwcHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTUwO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogNzUwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIGJvZHktdGV4dCgxOCk7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICBtYXJnaW46IDIwcHggYXV0byAwO1xuICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBhZ2UtaW50cm8tLWJhcmUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cblxuLnBhZ2UtaW50cm8tLWFsdCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICBwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYWdlLWludHJvX19idXR0b24ge1xuICAgIG1hcmdpbjogMTBweCAwIDMwcHg7XG59XG4iLCIucG9zdC1saXN0IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGNvbG9yLXdoaXRlO1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMTBweCAwIDMwcHg7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLnBvc3QtbGlzdF9fYXJ0aWNsZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAxMHB4IDAgMjBweDtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgJjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgICAgY2xlYXI6bGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICB9XG59XG5cbi5wb3N0LWxpc3RfX2FydGljbGUtaW1hZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuNSU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjAlO1xuICAgICAgICB3aWR0aDogMzUlO1xuICAgIH1cbn1cblxuLnBvc3QtbGlzdF9fYXJ0aWNsZS1sYWJlbCB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDEyKTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTUwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IDQ1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgd2lkdGg6IDY2cHg7XG4gICAgfVxuXG4gICAgJi5wb3N0LWxpc3RfX2FydGljbGUtbGFiZWwtLU5ld3Mge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RhdGljLTgwO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgICYucG9zdC1saXN0X19hcnRpY2xlLWxhYmVsLS1FdmVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkNDk4M2U7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG4ucG9zdC1saXN0X19hcnRpY2xlLW1ldGEge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDIwcHggMCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIHdpZHRoOiA2NSU7XG4gICAgfVxufVxuXG4ucG9zdC1saXN0X19hcnRpY2xlLWNhdGVnb3J5IHtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy1saWdodDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBvc3QtbGlzdF9fYXJ0aWNsZS10aXRsZSB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE3LCAyNCk7XG4gICAgd2lkdGg6IDkwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaXJjdWxhci1ib2xkO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wb3N0LWxpc3RfX2FydGljbGUtbGluayB7XG4gICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyMCk7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi5wb3N0LWxpc3RfX2J1dHRvbi1jb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5wb3N0LWxpc3RfX2FydGljbGUtY291bnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItYm9sZDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbn1cbiIsIi5yZWNpdGVtZS1idXR0b24ge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzO1xuICAgIHotaW5kZXg6IDkwMDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAxcHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG59XG4iLCIubm8tdG91Y2hldmVudHMge1xuICAgIC5mb290ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94X193cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIDEzNWRlZyxcbiAgICAgICAgICAgICR3aGl0ZSAwJSxcbiAgICAgICAgICAgICR3aGl0ZSAyOSUsXG4gICAgICAgICAgICAjZmVmZWZlIDMxJSxcbiAgICAgICAgICAgICNlNGU0ZTUgMTAwJVxuICAgICAgICApO1xuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgICAgICBtaW4taGVpZ2h0OiA5N3ZoO1xuICAgIH1cblxuICAgIC5zY3JvbGxib3gge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAvL3RyYW5zaXRpb246IGJhY2tncm91bmQgLjRzLCBib3JkZXIgLjRzO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXIgLjRzO1xuXG4gICAgICAgICYuc2Nyb2xsYm94LS0xIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNzR2aDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTV2aDtcblxuICAgICAgICAgICAgICAgIC5zY3JvbGxib3hfX21lZGlhIHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJ2aDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1dmg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94X19oZWFkZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA2dmg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgaGVpZ2h0OiA4dmg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94X19tZWRpYSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGxib3gtLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIDEzNWRlZyxcbiAgICAgICAgICAgICR3aGl0ZSAwJSxcbiAgICAgICAgICAgICR3aGl0ZSAyOSUsXG4gICAgICAgICAgICAjZmVmZWZlIDMxJSxcbiAgICAgICAgICAgICNlNGU0ZTUgMTAwJVxuICAgICAgICApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDc0dmg7XG4gICAgICAgICAgICAvLyBwYWRkaW5nLWJvdHRvbTogMzV2aDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXZoO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5mYXFzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LWRhcms7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuc2Nyb2xsYm94X19jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNjcm9sbGJveF9fbWVkaWEge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjZzO1xuXG4gICAgICAgICAgICAmLmhpZGRlbiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGxib3hfX2xpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGxib3gtLWNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgICAgICAgICAgICYuc2Nyb2xsYm94LS0yIHtcbiAgICAgICAgICAgICAgICB0b3A6IDc4dmg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2Nyb2xsYm94LS0zIHtcbiAgICAgICAgICAgICAgICB0b3A6IDg0dmg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2Nyb2xsYm94LS00IHtcbiAgICAgICAgICAgICAgICB0b3A6IDkwdmg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmFxcyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIHRvcDogOTZ2aDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyNTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNjcm9sbGJveF9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAmLnNjcm9sbGJveC0tMiB7XG4gICAgICAgICAgICAgICAgdG9wOiA3MnZoO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNjcm9sbGJveC0tMyB7XG4gICAgICAgICAgICAgICAgdG9wOiA4MHZoO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNjcm9sbGJveC0tNCB7XG4gICAgICAgICAgICAgICAgdG9wOiA4OHZoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZhcXMge1xuICAgICAgICAuc2Nyb2xsYm94X19oZWFkZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDR2aDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDN2aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvdWNoZXZlbnRzIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJi5maXhlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGxib3gge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgICAgICAxMzVkZWcsXG4gICAgICAgICAgICAgICAgJHdoaXRlIDAlLFxuICAgICAgICAgICAgICAgICR3aGl0ZSAyOSUsXG4gICAgICAgICAgICAgICAgI2ZlZmVmZSAzMSUsXG4gICAgICAgICAgICAgICAgI2U0ZTRlNSAxMDAlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHZoO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNjAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDg1dmg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94LS0xIHtcbiAgICAgICAgLnNjcm9sbGJveF9fbWVkaWEge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGxib3hfX21lZGlhIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgMTM1ZGVnLFxuICAgICAgICAgICAgJHdoaXRlIDAlLFxuICAgICAgICAgICAgJHdoaXRlIDI5JSxcbiAgICAgICAgICAgICNmZWZlZmUgMzElLFxuICAgICAgICAgICAgI2U0ZTRlNSAxMDAlXG4gICAgICAgICk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGxlZnQ6IDU1JTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA0NSU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBsZWZ0OiA1MyU7XG4gICAgICAgICAgICB3aWR0aDogNDclO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNjcm9sbGJveF9fbWVkaWEtLTIge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgLnNjcm9sbGJveF9fbWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubW9iaWxlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94X19tZWRpYS0tMyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDg1dmg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94X19tZWRpYS0tNCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1JTtcblxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNDIlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94X19jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNjcm9sbGJveF9faGVhZGVyIHtcbiAgICAgICAgLnNjcm9sbGJveF9fbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNjcm9sbGJveF9fY29udGVudCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogNTMlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mYXFzIHtcbiAgICAgICAgLnNjcm9sbGJveF9faGVhZGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzdmg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNjcm9sbGJveCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZzogMjBweCAwIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMjU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICYuc2Nyb2xsYm94LS0xIHtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuc2Nyb2xsYm94X19tZWRpYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgICAgICAgICAgdG8gcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIHJnYmEoJGNvbG9yLWJsYWNrLCAuODgpIDAlLFxuICAgICAgICAgICAgICAgICAgICByZ2JhKCRjb2xvci13aGl0ZSwgMCkgMTAwJVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGxib3hfX21lZGlhLS12aWRlbyB+IC5jb250YWluZXIge1xuICAgICAgICAgICAgLnNjcm9sbGJveF9fY29udGVudCxcbiAgICAgICAgICAgIC5zY3JvbGxib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGxib3hfX2NvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICR3aGl0ZSAwJSwgJHdoaXRlIDI5JSwgI2ZlZmVmZSAzMSUsICNlNGU0ZTUgMTAwJSk7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIC8vIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0JhcmxvdyBTZW1pIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjApO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg4MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2Nyb2xsYm94X19jb250ZW50LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGxib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM2O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDQwcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2Nyb2xsYm94LS0yIHtcbiAgICAgICAgJi5zY3JvbGxib3gtLXNwYWNlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHZoO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zY3JvbGxib3gtLWFjdGl2ZSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIC4zcyBsaW5lYXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgIH1cbn1cblxuLnNjcm9sbGJveC0tY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLXN0YXRpYy01MDtcbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX21lZGlhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgd2lkdGg6IDQwJTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDQzJTtcbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX21lZGlhLS12aWRlbyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNzR2aDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE1dmg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmZ1bGwtYmcge1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgLnZpZGVvLWpzIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1NnZ3O1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAvLyB0b3A6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgLnZqcy1jb250cm9sLWJhciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudmpzLXRlY2gge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTJ2aDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTV2aDtcbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX21lZGlhLS1mYWxsYmFjayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2Nyb2xsYm94X19tZWRpYS0tMiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiA2MCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGxlZnQ6IDU2JTtcbiAgICB9XG5cbiAgICAuc2Nyb2xsYm94X19tZWRpYS1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDcwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDY1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMXB4IDNweCAyMHB4IDAgJGNvbG9yLXN0YXRpYy04MDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTc1JSwgLTI1JSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDEpLFxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgyKSxcbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoNSksXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDQpLFxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg2KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg3KSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMTYlO1xuICAgICAgICAgICAgICAgIHRvcDogMzUlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC42cztcblxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDIlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxNiU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTQlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0OCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDQpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNjMlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDIwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDUpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNzQlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDgyJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDYpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMiU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogODUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb2JpbGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNjcm9sbGJveF9fbWVkaWEtLTMge1xuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX21lZGlhLS00IHtcbiAgICBpbWcge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMjVweCAwICRjb2xvci1zdGF0aWMtNTA7XG5cbiAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbGVmdDogMjAwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA4MHB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDcwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBsZWZ0OiAzMDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNjcm9sbGJveF9faW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cbn1cblxuLnNjcm9sbGJveF9fY29udGVudC13cmFwcGVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDh2aCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLnNjcm9sbGJveF9faGVhZGVyIHtcbiAgICAvLyBkaXNwbGF5OiBub25lO1xuICAgIC8vIHBhZGRpbmc6IDIuM3ZoIDA7XG4gICAgcGFkZGluZzogNDBweCAyMHB4IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMXZoIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxLjI1dmggMCAydmg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMnZoIDA7XG4gICAgfVxuXG4gICAgLnNjcm9sbGJveF9fdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NyU7XG4gICAgICAgIH1cblxuICAgICAgICBoMixcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcblxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIC8vICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgIC8vIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGxib3hfX2xpbmsge1xuICAgICAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDI4KTtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHdpZHRoOiAzMiU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE4LCAyOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NoZXZyb24tcmlnaHQtYmx1ZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2Nyb2xsYm94LS0xIHtcbiAgICAuc2Nyb2xsYm94X19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDYwcHg7XG4gICAgfVxufVxuXG4uc2Nyb2xsYm94X19jb250ZW50IHtcbiAgICAvLyBwYWRkaW5nOiAyNXB4IDIwcHggNjBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHggNjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiA1NiU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogNTUlO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGxib3hfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTgsIDI2KTtcbiAgICBjb2xvcjogJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgIG1hcmdpbjogMTBweCAwIDE1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAvLyBtYXJnaW46IC0xMHB4IGF1dG8gMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzQpO1xuICAgIH1cbn1cblxuLnNjcm9sbGJveF9fc2Vjb25kYXJ5LXRleHQge1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX2xvZ29zIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX2xvZ29zLXJvdyB7XG4gICAgaGVpZ2h0OiAxMzBweDtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG5cbiAgICAmLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwMHB4KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2Nyb2xsYm94X19sb2dvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogODAlO1xuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MDBweCkge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG59XG5cbi5zY3JvbGxib3hfX2NvbnRlbnQtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg5KSByZW0tY2FsYygxOCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyKSByZW0tY2FsYygyNCk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgfVxufVxuXG4uc2Nyb2xsYm94X19jb250ZW50LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuIiwiLnNlYXJjaC1yZXN1bHRzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBwYWRkaW5nLXRvcDogODVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA5NXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDExNXB4O1xuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzX19pbm5lciB7XG4gICAgcGFkZGluZzogMCAxMnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgxKTtcbiAgICB9XG5cbiAgICAucG9zdC1saXN0IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvci1zdGF0aWMtNTA7XG4gICAgfVxufVxuXG4uc2VhcmNoLXJlc3VsdHNfX2luZm8ge1xuICAgICYgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9keS10ZXh0KDE1LCAyNCk7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzX190aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtNTA7XG4gICAgY29sb3I6ICAkY29sb3Itc3RhdGljLWdlbmVyYWw7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICBtYXJnaW46IDEwcHggMCAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0NCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0Nik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg1Mik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzX19vcHRpb25zIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxufVxuXG4uc2VhcmNoLXJlc3VsdHNfX2NvdW50IHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICBjb2xvcjogICRjb2xvci1zdGF0aWMtZ2VuZXJhbDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzIwcHgpO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0c19fcmVwZWF0IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTUsIDIwKTtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI4KTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZvcm0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAmW3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTE1KSByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5zZWFyY2gtcmVzdWx0c19fZm9ybSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIGlucHV0IHtcbiAgICAgICAgJlt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi50b2dnbGVfX2J1dHRvbnMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZDdkN2Q7XG4gICAgYm9yZGVyOiAzcHggc29saWQgJGNvbG9yLXN0YXRpYy04MDtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDgwcHg7XG59XG5cbi50b2dnbGVfX2J1dHRvbnMtLWRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbi50b2dnbGVfX3NsaWRlciB7XG4gICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuOSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGhlaWdodDogMzRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlO1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgIH1cbn1cblxuLnRvZ2dsZV9fc2xpZGVyLS1kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRvZ2dsZV9fc2xpZGVyLS1vbmUge1xuICAgIGxlZnQ6IDA7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vaW1nL3RvZ2dsZS1sZWZ0LnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7XG4gICAgfVxufVxuXG4udG9nZ2xlX19zbGlkZXItLXR3byB7XG4gICAgbGVmdDogNDBweDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcuLi9pbWcvdG9nZ2xlLXJpZ2h0LnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7XG4gICAgfVxufVxuXG4udG9nZ2xlX19sYWJlbCB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSAsIC45KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTA7XG59XG5cbi50b2dnbGVfX29wdGlvbiB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtY2lyY3VsYXItbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgJi50b2dnbGVfX29wdGlvbi0tb25lIHtcbiAgICAgICAgbGVmdDogLTUwcHg7XG4gICAgfVxuXG4gICAgJi50b2dnbGVfX29wdGlvbi0tdHdvIHtcbiAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgIH1cblxuICAgICYudG9nZ2xlX19vcHRpb24tLWFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTcwO1xuICAgIH1cbn1cbiIsIi5wbGFucy10ZWFzZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1zdGF0aWMtMjU7XG4gICAgcGFkZGluZzogNjBweCAwIDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGxhbnMtdGVhc2VyX19pbm5lciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xufVxuXG4ucGxhbnMtdGVhc2VyX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLS4wMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuXG4ucGxhbnMtdGVhc2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQoMTgpO1xuICAgIGNvbG9yOiAkY29sb3Itc3RhdGljLTgwO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcbiAgICBtYXgtd2lkdGg6IDg0MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWN0YTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wbGFucy10ZWFzZXJfX3BsYW5zIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNDhweCAwIDA7XG59XG4iLCIucGxhbi1jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJveC1zaGFkb3c6IDFweCAxcHggNXB4IDFweCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMCAxMnB4IDI0cHg7XG4gICAgbWF4LXdpZHRoOiAyNzhweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnBsYW4tY2FyZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMjBweDtcbn1cblxuLnBsYW4tY2FyZF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbn1cblxuLnBsYW4tY2FyZF9fZGVzYyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtMjU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1zdGF0aWMtMjU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDEycHggMCAxNnB4O1xufVxuXG4ucGxhbi1jYXJkX19sZXZlbCB7XG4gICAgY29sb3I6ICRjb2xvci1zdGF0aWMtNTA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDEycHggMCAwO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAgJGNvbG9yLXN0YXRpYy1nZW5lcmFsO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY3RhO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5wbGFuLWNhcmRfX2ltZyB7XG4gICAgbWF4LWhlaWdodDogMTU1cHg7XG4gICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiLmtpb3NrLXRlbXBsYXRlIHtcbiAgICAubmF2X19tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgfVxuXG4gICAgLmlmcmFtZS1wYXJlbnQge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICBpZnJhbWUge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5raW9zay1tZW51IHtcbiAgICBmb250LWZhbWlseTogJ0JhcmxvdyBDb25kZW5zZWQnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDQwcHggMCAxMHB4O1xufVxuXG4ua2lvc2stdGVtcGxhdGUtc2luZ2xlLWtpb3NrLWlmcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5raW9zay1tZW51IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgaWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLmtpb3NrLW1lbnVfX2ludHJvIHtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgMXB4IDVweCAwIHJnYmEoMjA0LCAyMDQsIDIwNCwgMSk7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCA1cHggMCByZ2JhKDIwNCwgMjA0LCAyMDQsIDEpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDFweCA1cHggMCByZ2JhKDIwNCwgMjA0LCAyMDQsIDEpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIC5raW9za190b3BfX2xvZ28ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgdXJsKCcuLi9pbWcvZWEtbG9nby1sYW5kc2NhcGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgIHdpZHRoOiAyODBweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLmtpb3NrX3RvcF9faG9tZSxcbiAgICAua2lvc2tfdG9wX19sb2dvdXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAxNXB4KTtcbiAgICB9XG5cbiAgICAua2lvc2tfdG9wX19ob21lIHtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICAua2lvc2tfdG9wX19sb2dvdXQge1xuICAgICAgICByaWdodDogMjBweDtcbiAgICB9XG59XG5cbi5raW9za19fbGlzdCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5raW9zay1tZW51X190aWxlX3ByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDE1cHggYXV0byA0NXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdpZHRoOiA5MCU7XG5cbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDE1cHggMTJweCA0NXB4O1xuICAgICAgICB3aWR0aDogMzUlO1xuICAgIH1cbn1cblxuLmtpb3NrLW1lbnVfX3RpbGVfaW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDEycHggMjRweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDkwJTtcblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiA4cHggNXB4O1xuICAgICAgICB3aWR0aDogNDclO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiA4cHggNXB4O1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogOHB4IDVweDtcbiAgICAgICAgd2lkdGg6IDI0JTtcbiAgICB9XG59XG5cblxuLnByaW1hcnlfdGlsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDVweCAxcHggcmdiYSgwLCAwLCAwLCAuMSk7XG4gICAgbWFyZ2luOiAwIDEycHggMjRweDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxufVxuXG4uaW1hZ2VfdGlsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuXG4gICAgLnRpdGxlX2JveCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDE1cHggMTVweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA5MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHggMTVweCAwIDA7XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5ub3Nob3d0aWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ua2lvc2stbWVudV9fbGluayB7XG4gICAgQGV4dGVuZCAlbGluaztcbn1cblxuLmtpb3NrX2lmcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGJvZHkge1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwdmg7XG4gICAgfVxufVxuXG4ua2lvc2stYmFubmVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi5raW9zay1iYW5uZXJhZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgICB3aWR0aDogYXV0bztcbn1cblxuLmxpc3RfaW1hZ2VfdGlsZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXgtaGVpZ2h0OiA5MDBweDtcbiAgICB9XG59XG5cbi5sYXJnZV90aWxlcyB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmbGV4OiAwIDAgNzg5cHg7XG4gICAgfVxufVxuIiwiJHByaW1hcnktY3RhOiAkYnJhbmQtcHJpbWFyeTtcbiRzZWNvbmRhcnktY3RhOiAjM2Q5NmNhO1xuJGNvbG9yLXN1cmZhY2U6ICNlYWVmZmY7XG5cbi5jb29raWUtYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMDAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAyNHB4IDMycHggMzZweDtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMXM7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogODk5OTtcblxuICAgICYuaGlkZGVuIHtcbiAgICAgICAgYm90dG9tOiAtMTAwdmg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG59XG5cbi5jb29raWUtYmFubmVyX19pbm5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbn1cblxuLmNvb2tpZS1iYW5uZXJfX2J1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdXJmYWNlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc3VyZmFjZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY3RhICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY3RhICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uY29va2llLWJhbm5lcl9fY29sXzEge1xuICAgIHBhZGRpbmc6IDAgMjRweCAwIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5jb29raWUtYmFubmVyX19jb2xfMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLCIuc21hcnQge1xuICAgICRzcGFjZXI6IDI1cHg7XG5cbiAgICAmX19zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlciAqIDEuNTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIDIuNTtcblxuICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgIC8vXG5cbiAgICAgICAgICAgIC5zbWFydF9fd3JhcCB7XG4gICAgICAgICAgICAgICAgLy9cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX193cmFwIHtcbiAgICAgICAgLy9cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvdmVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDY2JTtcbiAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyOSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIEBleHRlbmQgLmZlYXR1cmVkLWZhY2lsaXRpZXNfX2hpZ2hsaWdodC1kZXNjcmlwdGlvbjtcbiAgICAgICAgcGFkZGluZzogJHNwYWNlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktZGFyaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ29zIHtcbiAgICAgICAgLy9cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sb2dvLXdyYXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNlciA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgLy9cbiAgICB9XG5cbiAgICAmX19wYXJhZ3JhcGgge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICAgIH1cblxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxufVxuIl19 */
