/*--------------------------------------------------------------
>>> Abstracts
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Colors
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Images
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Override before load lib styles
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Grid
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Colors
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Shadows
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Checkboxes
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Switches
----------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> Vendors & Libraries
----------------------------------------------------------------*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

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

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 10px;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #2F1787;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #180c46;
  text-decoration: underline;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #D5D5D5;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role="button"] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

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

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

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

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

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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

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

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

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

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 1025px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px;
  }
}

.row {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  -webkit-flex-basis: 0;
          flex-basis: 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
          flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.row-cols-4 > * {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 25%;
          flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 20%;
          flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 16.66667%;
          flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

.col-auto {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
          flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 8.33333%;
          flex: 0 0 8.33333%;
  max-width: 8.33333%;
}

.col-2 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 16.66667%;
          flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

.col-3 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 25%;
          flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.col-5 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 41.66667%;
          flex: 0 0 41.66667%;
  max-width: 41.66667%;
}

.col-6 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 58.33333%;
          flex: 0 0 58.33333%;
  max-width: 58.33333%;
}

.col-8 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 66.66667%;
          flex: 0 0 66.66667%;
  max-width: 66.66667%;
}

.col-9 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 75%;
          flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 83.33333%;
          flex: 0 0 83.33333%;
  max-width: 83.33333%;
}

.col-11 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 91.66667%;
          flex: 0 0 91.66667%;
  max-width: 91.66667%;
}

.col-12 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
          order: -1;
}

.order-last {
  -webkit-box-ordinal-group: 14;
  -webkit-order: 13;
          order: 13;
}

.order-0 {
  -webkit-box-ordinal-group: 1;
  -webkit-order: 0;
          order: 0;
}

.order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
          order: 1;
}

.order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
          order: 2;
}

.order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
          order: 3;
}

.order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
          order: 4;
}

.order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
          order: 5;
}

.order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
          order: 6;
}

.order-7 {
  -webkit-box-ordinal-group: 8;
  -webkit-order: 7;
          order: 7;
}

.order-8 {
  -webkit-box-ordinal-group: 9;
  -webkit-order: 8;
          order: 8;
}

.order-9 {
  -webkit-box-ordinal-group: 10;
  -webkit-order: 9;
          order: 9;
}

.order-10 {
  -webkit-box-ordinal-group: 11;
  -webkit-order: 10;
          order: 10;
}

.order-11 {
  -webkit-box-ordinal-group: 12;
  -webkit-order: 11;
          order: 11;
}

.order-12 {
  -webkit-box-ordinal-group: 13;
  -webkit-order: 12;
          order: 12;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    -webkit-flex-basis: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-sm-4 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 20%;
            flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
            order: -1;
  }
  .order-sm-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
            order: 13;
  }
  .order-sm-0 {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
            order: 0;
  }
  .order-sm-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
            order: 1;
  }
  .order-sm-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
            order: 2;
  }
  .order-sm-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
            order: 3;
  }
  .order-sm-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
            order: 4;
  }
  .order-sm-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
            order: 5;
  }
  .order-sm-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
            order: 6;
  }
  .order-sm-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
            order: 7;
  }
  .order-sm-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
            order: 8;
  }
  .order-sm-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
            order: 9;
  }
  .order-sm-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
            order: 10;
  }
  .order-sm-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
            order: 11;
  }
  .order-sm-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
            order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    -webkit-flex-basis: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-md-4 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 20%;
            flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
            order: -1;
  }
  .order-md-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
            order: 13;
  }
  .order-md-0 {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
            order: 0;
  }
  .order-md-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
            order: 1;
  }
  .order-md-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
            order: 2;
  }
  .order-md-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
            order: 3;
  }
  .order-md-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
            order: 4;
  }
  .order-md-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
            order: 5;
  }
  .order-md-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
            order: 6;
  }
  .order-md-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
            order: 7;
  }
  .order-md-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
            order: 8;
  }
  .order-md-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
            order: 9;
  }
  .order-md-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
            order: 10;
  }
  .order-md-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
            order: 11;
  }
  .order-md-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
            order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 1025px) {
  .col-lg {
    -webkit-flex-basis: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-lg-4 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 20%;
            flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
            order: -1;
  }
  .order-lg-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
            order: 13;
  }
  .order-lg-0 {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
            order: 0;
  }
  .order-lg-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
            order: 1;
  }
  .order-lg-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
            order: 2;
  }
  .order-lg-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
            order: 3;
  }
  .order-lg-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
            order: 4;
  }
  .order-lg-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
            order: 5;
  }
  .order-lg-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
            order: 6;
  }
  .order-lg-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
            order: 7;
  }
  .order-lg-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
            order: 8;
  }
  .order-lg-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
            order: 9;
  }
  .order-lg-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
            order: 10;
  }
  .order-lg-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
            order: 11;
  }
  .order-lg-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
            order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -webkit-flex-basis: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-xl-4 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 20%;
            flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xl-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xl-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xl-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xl-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xl-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xl-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xl-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
            order: -1;
  }
  .order-xl-last {
    -webkit-box-ordinal-group: 14;
    -webkit-order: 13;
            order: 13;
  }
  .order-xl-0 {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
            order: 0;
  }
  .order-xl-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
            order: 1;
  }
  .order-xl-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
            order: 2;
  }
  .order-xl-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
            order: 3;
  }
  .order-xl-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
            order: 4;
  }
  .order-xl-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
            order: 5;
  }
  .order-xl-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
            order: 6;
  }
  .order-xl-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
            order: 7;
  }
  .order-xl-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
            order: 8;
  }
  .order-xl-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
            order: 9;
  }
  .order-xl-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
            order: 10;
  }
  .order-xl-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
            order: 11;
  }
  .order-xl-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
            order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #2F1787 !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #20105b !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #6DB101 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #4e7e01 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #E81212 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #b90e0e !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #2F1787 !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #6DB101 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #E81212 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: flex !important;
}

.d-inline-flex {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: inline-flex !important;
  }
}

@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: flex !important;
  }
  .d-md-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: inline-flex !important;
  }
}

@media (min-width: 1025px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: inline-flex !important;
  }
}

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: inline-flex !important;
  }
}

@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: flex !important;
  }
  .d-print-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: inline-flex !important;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.flex-row {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
  -webkit-flex-direction: row !important;
          flex-direction: row !important;
}

.flex-column {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
  -webkit-flex-direction: column !important;
          flex-direction: column !important;
}

.flex-row-reverse {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: reverse !important;
  -webkit-flex-direction: row-reverse !important;
          flex-direction: row-reverse !important;
}

.flex-column-reverse {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: reverse !important;
  -webkit-flex-direction: column-reverse !important;
          flex-direction: column-reverse !important;
}

.flex-wrap {
  -webkit-flex-wrap: wrap !important;
          flex-wrap: wrap !important;
}

.flex-nowrap {
  -webkit-flex-wrap: nowrap !important;
          flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  -webkit-flex-wrap: wrap-reverse !important;
          flex-wrap: wrap-reverse !important;
}

.flex-fill {
  -webkit-box-flex: 1 !important;
  -webkit-flex: 1 1 auto !important;
          flex: 1 1 auto !important;
}

.flex-grow-0 {
  -webkit-box-flex: 0 !important;
  -webkit-flex-grow: 0 !important;
          flex-grow: 0 !important;
}

.flex-grow-1 {
  -webkit-box-flex: 1 !important;
  -webkit-flex-grow: 1 !important;
          flex-grow: 1 !important;
}

.flex-shrink-0 {
  -webkit-flex-shrink: 0 !important;
          flex-shrink: 0 !important;
}

.flex-shrink-1 {
  -webkit-flex-shrink: 1 !important;
          flex-shrink: 1 !important;
}

.justify-content-start {
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
          justify-content: flex-start !important;
}

.justify-content-end {
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
          justify-content: flex-end !important;
}

.justify-content-center {
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
          justify-content: center !important;
}

.justify-content-between {
  -webkit-box-pack: justify !important;
  -webkit-justify-content: space-between !important;
          justify-content: space-between !important;
}

.justify-content-around {
  -webkit-justify-content: space-around !important;
          justify-content: space-around !important;
}

.align-items-start {
  -webkit-box-align: start !important;
  -webkit-align-items: flex-start !important;
          align-items: flex-start !important;
}

.align-items-end {
  -webkit-box-align: end !important;
  -webkit-align-items: flex-end !important;
          align-items: flex-end !important;
}

.align-items-center {
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
          align-items: center !important;
}

.align-items-baseline {
  -webkit-box-align: baseline !important;
  -webkit-align-items: baseline !important;
          align-items: baseline !important;
}

.align-items-stretch {
  -webkit-box-align: stretch !important;
  -webkit-align-items: stretch !important;
          align-items: stretch !important;
}

.align-content-start {
  -webkit-align-content: flex-start !important;
          align-content: flex-start !important;
}

.align-content-end {
  -webkit-align-content: flex-end !important;
          align-content: flex-end !important;
}

.align-content-center {
  -webkit-align-content: center !important;
          align-content: center !important;
}

.align-content-between {
  -webkit-align-content: space-between !important;
          align-content: space-between !important;
}

.align-content-around {
  -webkit-align-content: space-around !important;
          align-content: space-around !important;
}

.align-content-stretch {
  -webkit-align-content: stretch !important;
          align-content: stretch !important;
}

.align-self-auto {
  -webkit-align-self: auto !important;
          align-self: auto !important;
}

.align-self-start {
  -webkit-align-self: flex-start !important;
          align-self: flex-start !important;
}

.align-self-end {
  -webkit-align-self: flex-end !important;
          align-self: flex-end !important;
}

.align-self-center {
  -webkit-align-self: center !important;
          align-self: center !important;
}

.align-self-baseline {
  -webkit-align-self: baseline !important;
          align-self: baseline !important;
}

.align-self-stretch {
  -webkit-align-self: stretch !important;
          align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-sm-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    -webkit-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    -webkit-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    -webkit-box-flex: 1 !important;
    -webkit-flex: 1 1 auto !important;
            flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    -webkit-box-flex: 0 !important;
    -webkit-flex-grow: 0 !important;
            flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    -webkit-box-flex: 1 !important;
    -webkit-flex-grow: 1 !important;
            flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    -webkit-flex-shrink: 0 !important;
            flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    -webkit-flex-shrink: 1 !important;
            flex-shrink: 1 !important;
  }
  .justify-content-sm-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
            justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
            justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
            justify-content: center !important;
  }
  .justify-content-sm-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
            justify-content: space-between !important;
  }
  .justify-content-sm-around {
    -webkit-justify-content: space-around !important;
            justify-content: space-around !important;
  }
  .align-items-sm-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
            align-items: flex-start !important;
  }
  .align-items-sm-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
            align-items: flex-end !important;
  }
  .align-items-sm-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
            align-items: center !important;
  }
  .align-items-sm-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
            align-items: baseline !important;
  }
  .align-items-sm-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
            align-items: stretch !important;
  }
  .align-content-sm-start {
    -webkit-align-content: flex-start !important;
            align-content: flex-start !important;
  }
  .align-content-sm-end {
    -webkit-align-content: flex-end !important;
            align-content: flex-end !important;
  }
  .align-content-sm-center {
    -webkit-align-content: center !important;
            align-content: center !important;
  }
  .align-content-sm-between {
    -webkit-align-content: space-between !important;
            align-content: space-between !important;
  }
  .align-content-sm-around {
    -webkit-align-content: space-around !important;
            align-content: space-around !important;
  }
  .align-content-sm-stretch {
    -webkit-align-content: stretch !important;
            align-content: stretch !important;
  }
  .align-self-sm-auto {
    -webkit-align-self: auto !important;
            align-self: auto !important;
  }
  .align-self-sm-start {
    -webkit-align-self: flex-start !important;
            align-self: flex-start !important;
  }
  .align-self-sm-end {
    -webkit-align-self: flex-end !important;
            align-self: flex-end !important;
  }
  .align-self-sm-center {
    -webkit-align-self: center !important;
            align-self: center !important;
  }
  .align-self-sm-baseline {
    -webkit-align-self: baseline !important;
            align-self: baseline !important;
  }
  .align-self-sm-stretch {
    -webkit-align-self: stretch !important;
            align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-md-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-md-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    -webkit-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    -webkit-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    -webkit-box-flex: 1 !important;
    -webkit-flex: 1 1 auto !important;
            flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    -webkit-box-flex: 0 !important;
    -webkit-flex-grow: 0 !important;
            flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    -webkit-box-flex: 1 !important;
    -webkit-flex-grow: 1 !important;
            flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    -webkit-flex-shrink: 0 !important;
            flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    -webkit-flex-shrink: 1 !important;
            flex-shrink: 1 !important;
  }
  .justify-content-md-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
            justify-content: flex-start !important;
  }
  .justify-content-md-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
            justify-content: flex-end !important;
  }
  .justify-content-md-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
            justify-content: center !important;
  }
  .justify-content-md-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
            justify-content: space-between !important;
  }
  .justify-content-md-around {
    -webkit-justify-content: space-around !important;
            justify-content: space-around !important;
  }
  .align-items-md-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
            align-items: flex-start !important;
  }
  .align-items-md-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
            align-items: flex-end !important;
  }
  .align-items-md-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
            align-items: center !important;
  }
  .align-items-md-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
            align-items: baseline !important;
  }
  .align-items-md-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
            align-items: stretch !important;
  }
  .align-content-md-start {
    -webkit-align-content: flex-start !important;
            align-content: flex-start !important;
  }
  .align-content-md-end {
    -webkit-align-content: flex-end !important;
            align-content: flex-end !important;
  }
  .align-content-md-center {
    -webkit-align-content: center !important;
            align-content: center !important;
  }
  .align-content-md-between {
    -webkit-align-content: space-between !important;
            align-content: space-between !important;
  }
  .align-content-md-around {
    -webkit-align-content: space-around !important;
            align-content: space-around !important;
  }
  .align-content-md-stretch {
    -webkit-align-content: stretch !important;
            align-content: stretch !important;
  }
  .align-self-md-auto {
    -webkit-align-self: auto !important;
            align-self: auto !important;
  }
  .align-self-md-start {
    -webkit-align-self: flex-start !important;
            align-self: flex-start !important;
  }
  .align-self-md-end {
    -webkit-align-self: flex-end !important;
            align-self: flex-end !important;
  }
  .align-self-md-center {
    -webkit-align-self: center !important;
            align-self: center !important;
  }
  .align-self-md-baseline {
    -webkit-align-self: baseline !important;
            align-self: baseline !important;
  }
  .align-self-md-stretch {
    -webkit-align-self: stretch !important;
            align-self: stretch !important;
  }
}

@media (min-width: 1025px) {
  .flex-lg-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-lg-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    -webkit-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    -webkit-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    -webkit-box-flex: 1 !important;
    -webkit-flex: 1 1 auto !important;
            flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    -webkit-box-flex: 0 !important;
    -webkit-flex-grow: 0 !important;
            flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    -webkit-box-flex: 1 !important;
    -webkit-flex-grow: 1 !important;
            flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    -webkit-flex-shrink: 0 !important;
            flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    -webkit-flex-shrink: 1 !important;
            flex-shrink: 1 !important;
  }
  .justify-content-lg-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
            justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
            justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
            justify-content: center !important;
  }
  .justify-content-lg-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
            justify-content: space-between !important;
  }
  .justify-content-lg-around {
    -webkit-justify-content: space-around !important;
            justify-content: space-around !important;
  }
  .align-items-lg-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
            align-items: flex-start !important;
  }
  .align-items-lg-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
            align-items: flex-end !important;
  }
  .align-items-lg-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
            align-items: center !important;
  }
  .align-items-lg-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
            align-items: baseline !important;
  }
  .align-items-lg-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
            align-items: stretch !important;
  }
  .align-content-lg-start {
    -webkit-align-content: flex-start !important;
            align-content: flex-start !important;
  }
  .align-content-lg-end {
    -webkit-align-content: flex-end !important;
            align-content: flex-end !important;
  }
  .align-content-lg-center {
    -webkit-align-content: center !important;
            align-content: center !important;
  }
  .align-content-lg-between {
    -webkit-align-content: space-between !important;
            align-content: space-between !important;
  }
  .align-content-lg-around {
    -webkit-align-content: space-around !important;
            align-content: space-around !important;
  }
  .align-content-lg-stretch {
    -webkit-align-content: stretch !important;
            align-content: stretch !important;
  }
  .align-self-lg-auto {
    -webkit-align-self: auto !important;
            align-self: auto !important;
  }
  .align-self-lg-start {
    -webkit-align-self: flex-start !important;
            align-self: flex-start !important;
  }
  .align-self-lg-end {
    -webkit-align-self: flex-end !important;
            align-self: flex-end !important;
  }
  .align-self-lg-center {
    -webkit-align-self: center !important;
            align-self: center !important;
  }
  .align-self-lg-baseline {
    -webkit-align-self: baseline !important;
            align-self: baseline !important;
  }
  .align-self-lg-stretch {
    -webkit-align-self: stretch !important;
            align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-xl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    -webkit-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    -webkit-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    -webkit-box-flex: 1 !important;
    -webkit-flex: 1 1 auto !important;
            flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    -webkit-box-flex: 0 !important;
    -webkit-flex-grow: 0 !important;
            flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    -webkit-box-flex: 1 !important;
    -webkit-flex-grow: 1 !important;
            flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    -webkit-flex-shrink: 0 !important;
            flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    -webkit-flex-shrink: 1 !important;
            flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
            justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
            justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
            justify-content: center !important;
  }
  .justify-content-xl-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
            justify-content: space-between !important;
  }
  .justify-content-xl-around {
    -webkit-justify-content: space-around !important;
            justify-content: space-around !important;
  }
  .align-items-xl-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
            align-items: flex-start !important;
  }
  .align-items-xl-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
            align-items: flex-end !important;
  }
  .align-items-xl-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
            align-items: center !important;
  }
  .align-items-xl-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
            align-items: baseline !important;
  }
  .align-items-xl-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
            align-items: stretch !important;
  }
  .align-content-xl-start {
    -webkit-align-content: flex-start !important;
            align-content: flex-start !important;
  }
  .align-content-xl-end {
    -webkit-align-content: flex-end !important;
            align-content: flex-end !important;
  }
  .align-content-xl-center {
    -webkit-align-content: center !important;
            align-content: center !important;
  }
  .align-content-xl-between {
    -webkit-align-content: space-between !important;
            align-content: space-between !important;
  }
  .align-content-xl-around {
    -webkit-align-content: space-around !important;
            align-content: space-around !important;
  }
  .align-content-xl-stretch {
    -webkit-align-content: stretch !important;
            align-content: stretch !important;
  }
  .align-self-xl-auto {
    -webkit-align-self: auto !important;
            align-self: auto !important;
  }
  .align-self-xl-start {
    -webkit-align-self: flex-start !important;
            align-self: flex-start !important;
  }
  .align-self-xl-end {
    -webkit-align-self: flex-end !important;
            align-self: flex-end !important;
  }
  .align-self-xl-center {
    -webkit-align-self: center !important;
            align-self: center !important;
  }
  .align-self-xl-baseline {
    -webkit-align-self: baseline !important;
            align-self: baseline !important;
  }
  .align-self-xl-stretch {
    -webkit-align-self: stretch !important;
            align-self: stretch !important;
  }
}

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

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

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

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 1025px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}

.user-select-all {
  -webkit-user-select: all !important;
     -moz-user-select: all !important;
      -ms-user-select: all !important;
          user-select: all !important;
}

.user-select-auto {
  -webkit-user-select: auto !important;
     -moz-user-select: auto !important;
      -ms-user-select: auto !important;
          user-select: auto !important;
}

.user-select-none {
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
      -ms-user-select: none !important;
          user-select: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

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

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

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

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

.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

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

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

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

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

.w-auto {
  width: auto !important;
}

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

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

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

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

.h-auto {
  height: auto !important;
}

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

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

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

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

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

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

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 5px !important;
}

.mt-1,
.my-1 {
  margin-top: 5px !important;
}

.mr-1,
.mx-1 {
  margin-right: 5px !important;
}

.mb-1,
.my-1 {
  margin-bottom: 5px !important;
}

.ml-1,
.mx-1 {
  margin-left: 5px !important;
}

.m-2 {
  margin: 10px !important;
}

.mt-2,
.my-2 {
  margin-top: 10px !important;
}

.mr-2,
.mx-2 {
  margin-right: 10px !important;
}

.mb-2,
.my-2 {
  margin-bottom: 10px !important;
}

.ml-2,
.mx-2 {
  margin-left: 10px !important;
}

.m-3 {
  margin: 20px !important;
}

.mt-3,
.my-3 {
  margin-top: 20px !important;
}

.mr-3,
.mx-3 {
  margin-right: 20px !important;
}

.mb-3,
.my-3 {
  margin-bottom: 20px !important;
}

.ml-3,
.mx-3 {
  margin-left: 20px !important;
}

.m-4 {
  margin: 30px !important;
}

.mt-4,
.my-4 {
  margin-top: 30px !important;
}

.mr-4,
.mx-4 {
  margin-right: 30px !important;
}

.mb-4,
.my-4 {
  margin-bottom: 30px !important;
}

.ml-4,
.mx-4 {
  margin-left: 30px !important;
}

.m-5 {
  margin: 60px !important;
}

.mt-5,
.my-5 {
  margin-top: 60px !important;
}

.mr-5,
.mx-5 {
  margin-right: 60px !important;
}

.mb-5,
.my-5 {
  margin-bottom: 60px !important;
}

.ml-5,
.mx-5 {
  margin-left: 60px !important;
}

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

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 5px !important;
}

.pt-1,
.py-1 {
  padding-top: 5px !important;
}

.pr-1,
.px-1 {
  padding-right: 5px !important;
}

.pb-1,
.py-1 {
  padding-bottom: 5px !important;
}

.pl-1,
.px-1 {
  padding-left: 5px !important;
}

.p-2 {
  padding: 10px !important;
}

.pt-2,
.py-2 {
  padding-top: 10px !important;
}

.pr-2,
.px-2 {
  padding-right: 10px !important;
}

.pb-2,
.py-2 {
  padding-bottom: 10px !important;
}

.pl-2,
.px-2 {
  padding-left: 10px !important;
}

.p-3 {
  padding: 20px !important;
}

.pt-3,
.py-3 {
  padding-top: 20px !important;
}

.pr-3,
.px-3 {
  padding-right: 20px !important;
}

.pb-3,
.py-3 {
  padding-bottom: 20px !important;
}

.pl-3,
.px-3 {
  padding-left: 20px !important;
}

.p-4 {
  padding: 30px !important;
}

.pt-4,
.py-4 {
  padding-top: 30px !important;
}

.pr-4,
.px-4 {
  padding-right: 30px !important;
}

.pb-4,
.py-4 {
  padding-bottom: 30px !important;
}

.pl-4,
.px-4 {
  padding-left: 30px !important;
}

.p-5 {
  padding: 60px !important;
}

.pt-5,
.py-5 {
  padding-top: 60px !important;
}

.pr-5,
.px-5 {
  padding-right: 60px !important;
}

.pb-5,
.py-5 {
  padding-bottom: 60px !important;
}

.pl-5,
.px-5 {
  padding-left: 60px !important;
}

.m-n1 {
  margin: -5px !important;
}

.mt-n1,
.my-n1 {
  margin-top: -5px !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -5px !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -5px !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -5px !important;
}

.m-n2 {
  margin: -10px !important;
}

.mt-n2,
.my-n2 {
  margin-top: -10px !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -10px !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -10px !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -10px !important;
}

.m-n3 {
  margin: -20px !important;
}

.mt-n3,
.my-n3 {
  margin-top: -20px !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -20px !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -20px !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -20px !important;
}

.m-n4 {
  margin: -30px !important;
}

.mt-n4,
.my-n4 {
  margin-top: -30px !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -30px !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -30px !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -30px !important;
}

.m-n5 {
  margin: -60px !important;
}

.mt-n5,
.my-n5 {
  margin-top: -60px !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -60px !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -60px !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -60px !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 5px !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 5px !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 5px !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 5px !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 5px !important;
  }
  .m-sm-2 {
    margin: 10px !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 10px !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 10px !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 10px !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 10px !important;
  }
  .m-sm-3 {
    margin: 20px !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 20px !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 20px !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 20px !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 20px !important;
  }
  .m-sm-4 {
    margin: 30px !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 30px !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 30px !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 30px !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 30px !important;
  }
  .m-sm-5 {
    margin: 60px !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 60px !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 60px !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 60px !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 60px !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 5px !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 5px !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 5px !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 5px !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 5px !important;
  }
  .p-sm-2 {
    padding: 10px !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 10px !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 10px !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 10px !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 10px !important;
  }
  .p-sm-3 {
    padding: 20px !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 20px !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 20px !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 20px !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 20px !important;
  }
  .p-sm-4 {
    padding: 30px !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 30px !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 30px !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 30px !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 30px !important;
  }
  .p-sm-5 {
    padding: 60px !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 60px !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 60px !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 60px !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 60px !important;
  }
  .m-sm-n1 {
    margin: -5px !important;
  }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -5px !important;
  }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -5px !important;
  }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -5px !important;
  }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -5px !important;
  }
  .m-sm-n2 {
    margin: -10px !important;
  }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -10px !important;
  }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -10px !important;
  }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -10px !important;
  }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -10px !important;
  }
  .m-sm-n3 {
    margin: -20px !important;
  }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -20px !important;
  }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -20px !important;
  }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -20px !important;
  }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -20px !important;
  }
  .m-sm-n4 {
    margin: -30px !important;
  }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -30px !important;
  }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -30px !important;
  }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -30px !important;
  }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -30px !important;
  }
  .m-sm-n5 {
    margin: -60px !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -60px !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -60px !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -60px !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -60px !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-1 {
    margin: 5px !important;
  }
  .mt-md-1,
  .my-md-1 {
    margin-top: 5px !important;
  }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 5px !important;
  }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 5px !important;
  }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 5px !important;
  }
  .m-md-2 {
    margin: 10px !important;
  }
  .mt-md-2,
  .my-md-2 {
    margin-top: 10px !important;
  }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 10px !important;
  }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 10px !important;
  }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 10px !important;
  }
  .m-md-3 {
    margin: 20px !important;
  }
  .mt-md-3,
  .my-md-3 {
    margin-top: 20px !important;
  }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 20px !important;
  }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 20px !important;
  }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 20px !important;
  }
  .m-md-4 {
    margin: 30px !important;
  }
  .mt-md-4,
  .my-md-4 {
    margin-top: 30px !important;
  }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 30px !important;
  }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 30px !important;
  }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 30px !important;
  }
  .m-md-5 {
    margin: 60px !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 60px !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 60px !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 60px !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 60px !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-1 {
    padding: 5px !important;
  }
  .pt-md-1,
  .py-md-1 {
    padding-top: 5px !important;
  }
  .pr-md-1,
  .px-md-1 {
    padding-right: 5px !important;
  }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 5px !important;
  }
  .pl-md-1,
  .px-md-1 {
    padding-left: 5px !important;
  }
  .p-md-2 {
    padding: 10px !important;
  }
  .pt-md-2,
  .py-md-2 {
    padding-top: 10px !important;
  }
  .pr-md-2,
  .px-md-2 {
    padding-right: 10px !important;
  }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 10px !important;
  }
  .pl-md-2,
  .px-md-2 {
    padding-left: 10px !important;
  }
  .p-md-3 {
    padding: 20px !important;
  }
  .pt-md-3,
  .py-md-3 {
    padding-top: 20px !important;
  }
  .pr-md-3,
  .px-md-3 {
    padding-right: 20px !important;
  }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 20px !important;
  }
  .pl-md-3,
  .px-md-3 {
    padding-left: 20px !important;
  }
  .p-md-4 {
    padding: 30px !important;
  }
  .pt-md-4,
  .py-md-4 {
    padding-top: 30px !important;
  }
  .pr-md-4,
  .px-md-4 {
    padding-right: 30px !important;
  }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 30px !important;
  }
  .pl-md-4,
  .px-md-4 {
    padding-left: 30px !important;
  }
  .p-md-5 {
    padding: 60px !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 60px !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 60px !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 60px !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 60px !important;
  }
  .m-md-n1 {
    margin: -5px !important;
  }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -5px !important;
  }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -5px !important;
  }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -5px !important;
  }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -5px !important;
  }
  .m-md-n2 {
    margin: -10px !important;
  }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -10px !important;
  }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -10px !important;
  }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -10px !important;
  }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -10px !important;
  }
  .m-md-n3 {
    margin: -20px !important;
  }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -20px !important;
  }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -20px !important;
  }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -20px !important;
  }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -20px !important;
  }
  .m-md-n4 {
    margin: -30px !important;
  }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -30px !important;
  }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -30px !important;
  }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -30px !important;
  }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -30px !important;
  }
  .m-md-n5 {
    margin: -60px !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -60px !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -60px !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -60px !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -60px !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important;
  }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 1025px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-1 {
    margin: 5px !important;
  }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 5px !important;
  }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 5px !important;
  }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 5px !important;
  }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 5px !important;
  }
  .m-lg-2 {
    margin: 10px !important;
  }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 10px !important;
  }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 10px !important;
  }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 10px !important;
  }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 10px !important;
  }
  .m-lg-3 {
    margin: 20px !important;
  }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 20px !important;
  }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 20px !important;
  }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 20px !important;
  }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 20px !important;
  }
  .m-lg-4 {
    margin: 30px !important;
  }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 30px !important;
  }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 30px !important;
  }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 30px !important;
  }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 30px !important;
  }
  .m-lg-5 {
    margin: 60px !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 60px !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 60px !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 60px !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 60px !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-1 {
    padding: 5px !important;
  }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 5px !important;
  }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 5px !important;
  }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 5px !important;
  }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 5px !important;
  }
  .p-lg-2 {
    padding: 10px !important;
  }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 10px !important;
  }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 10px !important;
  }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 10px !important;
  }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 10px !important;
  }
  .p-lg-3 {
    padding: 20px !important;
  }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 20px !important;
  }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 20px !important;
  }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 20px !important;
  }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 20px !important;
  }
  .p-lg-4 {
    padding: 30px !important;
  }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 30px !important;
  }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 30px !important;
  }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 30px !important;
  }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 30px !important;
  }
  .p-lg-5 {
    padding: 60px !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 60px !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 60px !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 60px !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 60px !important;
  }
  .m-lg-n1 {
    margin: -5px !important;
  }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -5px !important;
  }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -5px !important;
  }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -5px !important;
  }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -5px !important;
  }
  .m-lg-n2 {
    margin: -10px !important;
  }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -10px !important;
  }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -10px !important;
  }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -10px !important;
  }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -10px !important;
  }
  .m-lg-n3 {
    margin: -20px !important;
  }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -20px !important;
  }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -20px !important;
  }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -20px !important;
  }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -20px !important;
  }
  .m-lg-n4 {
    margin: -30px !important;
  }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -30px !important;
  }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -30px !important;
  }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -30px !important;
  }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -30px !important;
  }
  .m-lg-n5 {
    margin: -60px !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -60px !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -60px !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -60px !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -60px !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-1 {
    margin: 5px !important;
  }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 5px !important;
  }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 5px !important;
  }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 5px !important;
  }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 5px !important;
  }
  .m-xl-2 {
    margin: 10px !important;
  }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 10px !important;
  }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 10px !important;
  }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 10px !important;
  }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 10px !important;
  }
  .m-xl-3 {
    margin: 20px !important;
  }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 20px !important;
  }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 20px !important;
  }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 20px !important;
  }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 20px !important;
  }
  .m-xl-4 {
    margin: 30px !important;
  }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 30px !important;
  }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 30px !important;
  }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 30px !important;
  }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 30px !important;
  }
  .m-xl-5 {
    margin: 60px !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 60px !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 60px !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 60px !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 60px !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-1 {
    padding: 5px !important;
  }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 5px !important;
  }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 5px !important;
  }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 5px !important;
  }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 5px !important;
  }
  .p-xl-2 {
    padding: 10px !important;
  }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 10px !important;
  }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 10px !important;
  }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 10px !important;
  }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 10px !important;
  }
  .p-xl-3 {
    padding: 20px !important;
  }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 20px !important;
  }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 20px !important;
  }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 20px !important;
  }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 20px !important;
  }
  .p-xl-4 {
    padding: 30px !important;
  }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 30px !important;
  }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 30px !important;
  }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 30px !important;
  }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 30px !important;
  }
  .p-xl-5 {
    padding: 60px !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 60px !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 60px !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 60px !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 60px !important;
  }
  .m-xl-n1 {
    margin: -5px !important;
  }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -5px !important;
  }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -5px !important;
  }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -5px !important;
  }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -5px !important;
  }
  .m-xl-n2 {
    margin: -10px !important;
  }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -10px !important;
  }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -10px !important;
  }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -10px !important;
  }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -10px !important;
  }
  .m-xl-n3 {
    margin: -20px !important;
  }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -20px !important;
  }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -20px !important;
  }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -20px !important;
  }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -20px !important;
  }
  .m-xl-n4 {
    margin: -30px !important;
  }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -30px !important;
  }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -30px !important;
  }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -30px !important;
  }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -30px !important;
  }
  .m-xl-n5 {
    margin: -60px !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -60px !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -60px !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -60px !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -60px !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important;
  }
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

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

.text-wrap {
  white-space: normal !important;
}

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

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

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

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 1025px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}

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

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

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

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

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

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #2F1787 !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #180c46 !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #6DB101 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #3e6501 !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #E81212 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #a10c0c !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #D5D5D5 !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.form-control {
  display: block;
  width: 100%;
  height: -webkit-calc(1.5em + 0.75rem + 2px);
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    -webkit-transition: none;
    transition: none;
  }
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #613fde;
  outline: 0;
  box-shadow: none;
}

.form-control::-webkit-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: -webkit-calc(0.375rem + 1px);
  padding-top: calc(0.375rem + 1px);
  padding-bottom: -webkit-calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: -webkit-calc(0.5rem + 1px);
  padding-top: calc(0.5rem + 1px);
  padding-bottom: -webkit-calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: -webkit-calc(0.25rem + 1px);
  padding-top: calc(0.25rem + 1px);
  padding-bottom: -webkit-calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: -webkit-calc(1.5em + 0.5rem + 2px);
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: -webkit-calc(1.5em + 1rem + 2px);
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}

.form-check-input[disabled] ~ .form-check-label,
.form-check-input:disabled ~ .form-check-label {
  color: #D5D5D5;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #6DB101;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(109, 177, 1, 0.9);
  border-radius: 0.25rem;
}

.form-row > .col > .valid-tooltip,
.form-row > [class*="col-"] > .valid-tooltip {
  left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #6DB101;
  padding-right: -webkit-calc(1.5em + 0.75rem);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%236DB101' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right -webkit-calc(0.375em + 0.1875rem) center;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: -webkit-calc(0.75em + 0.375rem) -webkit-calc(0.75em + 0.375rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #6DB101;
  box-shadow: 0 0 0 0 rgba(109, 177, 1, 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: -webkit-calc(1.5em + 0.75rem);
  padding-right: calc(1.5em + 0.75rem);
  background-position: top -webkit-calc(0.375em + 0.1875rem) right -webkit-calc(0.375em + 0.1875rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #6DB101;
  padding-right: -webkit-calc(0.75em + 2.3125rem);
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%236DB101' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) -webkit-calc(0.75em + 0.375rem) no-repeat;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%236DB101' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #6DB101;
  box-shadow: 0 0 0 0 rgba(109, 177, 1, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #6DB101;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #6DB101;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #6DB101;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #8ce401;
  background-color: #8ce401;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0 rgba(109, 177, 1, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #6DB101;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #6DB101;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #6DB101;
  box-shadow: 0 0 0 0 rgba(109, 177, 1, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #E81212;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(232, 18, 18, 0.9);
  border-radius: 0.25rem;
}

.form-row > .col > .invalid-tooltip,
.form-row > [class*="col-"] > .invalid-tooltip {
  left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #E81212;
  padding-right: -webkit-calc(1.5em + 0.75rem);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E81212' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23E81212' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right -webkit-calc(0.375em + 0.1875rem) center;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: -webkit-calc(0.75em + 0.375rem) -webkit-calc(0.75em + 0.375rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #E81212;
  box-shadow: 0 0 0 0 rgba(232, 18, 18, 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: -webkit-calc(1.5em + 0.75rem);
  padding-right: calc(1.5em + 0.75rem);
  background-position: top -webkit-calc(0.375em + 0.1875rem) right -webkit-calc(0.375em + 0.1875rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #E81212;
  padding-right: -webkit-calc(0.75em + 2.3125rem);
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E81212' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23E81212' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) -webkit-calc(0.75em + 0.375rem) no-repeat;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E81212' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23E81212' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #E81212;
  box-shadow: 0 0 0 0 rgba(232, 18, 18, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #E81212;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #E81212;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #E81212;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #f03d3d;
  background-color: #f03d3d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0 rgba(232, 18, 18, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #E81212;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #E81212;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #E81212;
  box-shadow: 0 0 0 0 rgba(232, 18, 18, 0.25);
}

.form-inline {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
            justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
            justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    -webkit-flex-shrink: 0;
            flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
            justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.input-group {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
          align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
          flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group.has-validation > .form-control:nth-last-child(n + 3),
.input-group.has-validation > .custom-select:nth-last-child(n + 3),
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: -webkit-calc(1.5em + 1rem + 2px);
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: -webkit-calc(1.5em + 0.5rem + 2px);
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.modal-open {
  overflow: hidden;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}

.modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  -webkit-transform: translate(0, -50px);
          transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    -webkit-transition: none;
    transition: none;
  }
}

.modal.show .modal-dialog {
  -webkit-transform: none;
          transform: none;
}

.modal.modal-static .modal-dialog {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  max-height: -webkit-calc(100% - 1rem);
  max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: -webkit-calc(100vh - 1rem);
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  min-height: -webkit-calc(100% - 1rem);
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: -webkit-calc(100vh - 1rem);
  height: calc(100vh - 1rem);
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
  content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: -webkit-calc(0.3rem - 1px);
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: -webkit-calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
          justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: -webkit-calc(0.3rem - 1px);
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: -webkit-calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}

.modal-footer > * {
  margin: 0.25rem;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: -webkit-calc(100% - 3.5rem);
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: -webkit-calc(100vh - 3.5rem);
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: -webkit-calc(100% - 3.5rem);
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: -webkit-calc(100vh - 3.5rem);
    height: calc(100vh - 3.5rem);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 1025px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    -webkit-transition: none;
    transition: none;
  }
}

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

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #2F1787;
}

a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #20105b;
}

a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(47, 23, 135, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}

a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #6DB101;
}

a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #4e7e01;
}

a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(109, 177, 1, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}

a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}

a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}

a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #E81212;
}

a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #b90e0e;
}

a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(232, 18, 18, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}

a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}

a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  -webkit-print-color-adjust: exact;
          color-adjust: exact;
}

.custom-control-inline {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #3E3E3E;
  border-color: #2F1787;
  background-color: #FFFFFF;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: none;
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #D5D5D5;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #FFFFFF;
  border-color: #D5D5D5;
}

.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}

.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #D5D5D5 solid 1px;
}

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50% / 50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 2px;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%233E3E3E' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #2F1787;
  background-color: #2F1787;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%233E3E3E' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(47, 23, 135, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(47, 23, 135, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%233E3E3E'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(47, 23, 135, 0.5);
}

.custom-switch {
  padding-left: 3.5rem;
}

.custom-switch .custom-control-label::before {
  left: -3.5rem;
  width: 3rem;
  pointer-events: all;
  border-radius: 50px;
}

.custom-switch .custom-control-label::after {
  top: -webkit-calc(0.25rem + 2px);
  top: calc(0.25rem + 2px);
  left: -webkit-calc(-3.5rem + 2px);
  left: calc(-3.5rem + 2px);
  width: -webkit-calc(2rem - 4px);
  width: calc(2rem - 4px);
  height: -webkit-calc(2rem - 4px);
  height: calc(2rem - 4px);
  background-color: #D5D5D5;
  border-radius: 50px;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    -webkit-transition: none;
    transition: none;
  }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  -webkit-transform: translateX(2rem);
          transform: translateX(2rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(47, 23, 135, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: -webkit-calc(1.5em + 0.75rem + 2px);
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-select:focus {
  border-color: #613fde;
  outline: 0;
  box-shadow: none;
}

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}

.custom-select::-ms-expand {
  display: none;
}

.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
  height: -webkit-calc(1.5em + 0.5rem + 2px);
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: -webkit-calc(1.5em + 1rem + 2px);
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: -webkit-calc(1.5em + 0.75rem + 2px);
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: -webkit-calc(1.5em + 0.75rem + 2px);
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: #613fde;
  box-shadow: none;
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: -webkit-calc(1.5em + 0.75rem + 2px);
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: -webkit-calc(1.5em + 0.75rem);
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-range:focus {
  outline: 0;
}

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, none;
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, none;
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, none;
}

.custom-range::-moz-focus-outer {
  border: 0;
}

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #2F1787;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
          appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}

.custom-range::-webkit-slider-thumb:active {
  background-color: #856be6;
}

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #2F1787;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
       appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}

.custom-range::-moz-range-thumb:active {
  background-color: #856be6;
}

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0;
  margin-left: 0;
  background-color: #2F1787;
  border: 0;
  border-radius: 1rem;
  -ms-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    -ms-transition: none;
    transition: none;
  }
}

.custom-range::-ms-thumb:active {
  background-color: #856be6;
}

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
  cursor: default;
}

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    -webkit-transition: none;
    transition: none;
  }
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 10px;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 20px;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014\00A0";
}

/*--------------------------------------------------------------
>>> Abstracts
----------------------------------------------------------------*/
.font-weight-normal {
  font-family: "Raleway Regular", "Arial", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.font-italic {
  font-family: "Raleway Italic", "Arial", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.swal2-container .swal2-modal .swal2-content, body, .text-style, form .form-group .form-control, .small-style, form.inline-form .form-group label:not(.custom-control-label), form.inline-form .form-group .col-form-label, form.inline-form .form-group .form-label, .input-group .input-group-append .input-group-text {
  font-family: "Raleway Medium", "Arial", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.big-title-style, .form-floating-container__title, .swal2-container .swal2-modal .swal2-header .swal2-title, .title-style, form fieldset legend, .small-title-style, .swal2-container .swal2-modal .swal2-actions button, b, strong, .font-weight-bold, .button, form .form-group label:not(.custom-control-label), form .form-group .col-form-label, form .form-group .form-label, .input-group .input-group-text, .custom-control.custom-switch .custom-control-label, .modal .modal-dialog .modal-content .modal-header .modal-title, .modal .modal-dialog .modal-content button {
  font-family: "Raleway Bold", "Arial", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.swal2-container .swal2-modal .swal2-content, body, .text-style, form .form-group .form-control, .swal2-container .swal2-modal .swal2-actions button, .button, .input-group .input-group-text, .modal .modal-dialog .modal-content button {
  font-size: 15px;
  line-height: 18px;
  letter-spacing: -0.25px;
}

.big-title-style, .form-floating-container__title {
  font-size: 26px;
  line-height: 32px;
  letter-spacing: -0.5px;
}

.swal2-container .swal2-modal .swal2-header .swal2-title, .title-style, form fieldset legend {
  font-size: 22px;
  line-height: 26px;
  letter-spacing: -0.4px;
}

.small-title-style {
  font-size: 18px;
  line-height: 22px;
  letter-spacing: -0.4px;
}

.small-style {
  font-size: 12px;
  line-height: 15px;
  letter-spacing: -0.25px;
}

/*--------------------------------------------------------------
>>> Vendors after load lib styles
----------------------------------------------------------------*/
.swal2-container .swal2-modal {
  padding: 30px;
  max-width: 450px;
}

.swal2-container .swal2-modal .swal2-header {
  padding: 0;
}

.swal2-container .swal2-modal .swal2-header .swal2-title {
  color: #3E3E3E;
}

.swal2-container .swal2-modal .swal2-content {
  padding: 0;
  color: #3E3E3E;
}

.swal2-container .swal2-modal .swal2-content a {
  text-decoration: underline;
}

.swal2-container .swal2-modal .swal2-content ul {
  padding: 0 15px;
  text-align: left;
}

.swal2-container .swal2-modal .swal2-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  margin-top: 40px;
  padding: 0;
}

.swal2-container .swal2-modal .swal2-actions .swal2-confirm {
  background-color: #2F1787;
}

.swal2-container .swal2-modal .swal2-actions button {
  border-radius: 2px;
  outline: none;
  box-shadow: none;
  padding: 11px 25px;
  width: 100%;
  white-space: nowrap;
}

/*--------------------------------------------------------------
>>> Base
----------------------------------------------------------------*/
body {
  color: #3E3E3E;
}

h1, h2, h3, h4, h5, h6 {
  margin-bottom: 0;
}

a {
  color: #3E3E3E;
  -webkit-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
  text-decoration: none;
}

a:hover, a:focus {
  color: #2F1787;
  text-decoration: none;
  outline: none;
}

p:last-child {
  margin-bottom: 0;
}

.text--pending {
  color: #6c757d !important;
}

.text--running {
  color: #FF9852 !important;
}

.text--finished, .text--success {
  color: #6DB101 !important;
}

.text--failed, .text--error {
  color: #E81212 !important;
}

textarea.resize-none {
  resize: none;
}

button {
  background: none;
  border: none;
}

button:focus {
  outline: none;
}

input:focus {
  outline: none;
  box-shadow: none !important;
}

table .col-min-size {
  white-space: nowrap;
  width: 1%;
}

table .disabled {
  color: rgba(62, 62, 62, 0.5);
}

img.object-fit-cover {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

img.object-fit-contain {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  font-family: "object-fit: contain;";
}

.w-10 {
  width: 10%;
}

.w-20 {
  width: 20%;
}

.w-30 {
  width: 30%;
}

.w-40 {
  width: 40%;
}

.w-60 {
  width: 60%;
}

.w-70 {
  width: 70%;
}

.w-80 {
  width: 80%;
}

.w-90 {
  width: 90%;
}

.row--small-gutters {
  margin-left: -7.5px;
  margin-right: -7.5px;
}

.row--small-gutters > .col, .row--small-gutters > [class^="col-"], .row--small-gutters > [class*=" col-"] {
  padding-left: 7.5px;
  padding-right: 7.5px;
}

@font-face {
  font-family: "Raleway Regular";
  font-style: normal;
  font-weight: 400;
  src: url(/build/fonts/Raleway-Regular.93de9096.otf) format("opentype"), url(/build/fonts/Raleway-Regular.6c30609a.eot) format("eot"), url(/build/fonts/Raleway-Regular.40d223a0.woff2) format("woff2"), url(/build/fonts/Raleway-Regular.3e843340.woff) format("woff"), url(/build/fonts/Raleway-Regular.9ade142e.ttf) format("truetype"), url(/build/images/Raleway-Regular.7a1ed341.svg) format("svg");
}

@font-face {
  font-family: "Raleway Italic";
  font-style: italic;
  font-weight: 400;
  src: url(/build/fonts/Raleway-Italic.a1a8ce3f.otf) format("opentype"), url(/build/fonts/Raleway-Italic.73988d1d.eot) format("eot"), url(/build/fonts/Raleway-Italic.679ad6fa.woff2) format("woff2"), url(/build/fonts/Raleway-Italic.ff2a5bb9.woff) format("woff"), url(/build/fonts/Raleway-Italic.2a3303d3.ttf) format("truetype"), url(/build/images/Raleway-Italic.e984e38c.svg) format("svg");
}

@font-face {
  font-family: "Raleway Medium";
  font-style: normal;
  font-weight: 500;
  src: url(/build/fonts/Raleway-Medium.b6ed44fb.otf) format("opentype"), url(/build/fonts/Raleway-Medium.4b843ea3.eot) format("eot"), url(/build/fonts/Raleway-Medium.35e7e8e8.woff2) format("woff2"), url(/build/fonts/Raleway-Medium.1f0a6553.woff) format("woff"), url(/build/fonts/Raleway-Medium.1af9f1e9.ttf) format("truetype"), url(/build/images/Raleway-Medium.07c3c3d4.svg) format("svg");
}

@font-face {
  font-family: "Raleway Bold";
  font-style: normal;
  font-weight: 700;
  src: url(/build/fonts/Raleway-Bold.4edc2623.otf) format("opentype"), url(/build/fonts/Raleway-Bold.1bf44465.eot) format("eot"), url(/build/fonts/Raleway-Bold.fab9504d.woff2) format("woff2"), url(/build/fonts/Raleway-Bold.ab4a7c61.woff) format("woff"), url(/build/fonts/Raleway-Bold.d1a96e2a.ttf) format("truetype"), url(/build/images/Raleway-Bold.414c8f5b.svg) format("svg");
}

/*--------------------------------------------------------------
>>> Pages
----------------------------------------------------------------*/
body#user-front-reset-password-page .rules {
  margin-bottom: 20px;
  background-color: #F2F2F2;
  padding: 30px 25px;
  border-radius: 5px;
}

/*--------------------------------------------------------------
>>> Components
----------------------------------------------------------------*/
.button {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  padding: 15px 25px;
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
  letter-spacing: -0.3px;
}

.button.hidden {
  display: none;
}

.button:disabled {
  opacity: 0.6;
}

.button--bordered {
  border: 1px solid #D5D5D5;
  border-radius: 5px;
  color: #3E3E3E;
  padding: 17px 27px;
}

.button--bordered:not(:disabled):hover, .button--bordered:not(:disabled):focus {
  border-color: #2F1787;
  color: #2F1787;
}

.button--bordered svg path, .button--bordered svg polygon {
  fill: #838383;
}

.button--filled {
  border: 3px solid #2F1787;
  border-radius: 5px;
  color: #FFFFFF;
  background-color: #2F1787;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}

.button--filled:not(:disabled):hover, .button--filled:not(:disabled):focus {
  background-color: #20105b;
  border-color: #20105b;
  color: #FFFFFF;
}

.button--filled svg path, .button--filled svg polygon {
  fill: #FFFFFF;
}

.button--filled-secondary {
  border: 3px solid #838383;
  border-radius: 5px;
  color: #FFFFFF;
  background-color: #838383;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}

.button--filled-secondary:not(:disabled):hover, .button--filled-secondary:not(:disabled):focus {
  background-color: #6a6a6a;
  border-color: #6a6a6a;
  color: #FFFFFF;
}

.button--filled-secondary svg path, .button--filled-secondary svg polygon {
  fill: #FFFFFF;
}

.button--filled-inverted {
  border: 3px solid #FFFFFF;
  border-radius: 5px;
  color: #3E3E3E;
  background-color: #FFFFFF;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05) !important;
}

.button--filled-inverted:not(:disabled):hover, .button--filled-inverted:not(:disabled):focus, .button--filled-inverted:not(:disabled).active {
  background-color: #f7f7f7;
  border-color: #f7f7f7;
  color: #2F1787;
}

.button--filled-inverted:not(:disabled):hover svg path, .button--filled-inverted:not(:disabled):hover svg polygon, .button--filled-inverted:not(:disabled):focus svg path, .button--filled-inverted:not(:disabled):focus svg polygon, .button--filled-inverted:not(:disabled).active svg path, .button--filled-inverted:not(:disabled).active svg polygon {
  fill: #2F1787;
}

.button--filled-inverted svg path, .button--filled-inverted svg polygon {
  fill: #2F1787;
}

.button--icon-colored:not(:disabled):hover svg path, .button--icon-colored:not(:disabled):hover svg polygon, .button--icon-colored:not(:disabled):focus svg path, .button--icon-colored:not(:disabled):focus svg polygon {
  fill: #2F1787;
}

.button--icon-colored svg path, .button--icon-colored svg polygon {
  fill: #2F1787;
}

form.inline-form .button {
  padding: 8px 20px;
}

.button--back-link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
}

.button--back-link:not(:disabled):hover svg path, .button--back-link:not(:disabled):hover svg polygon, .button--back-link:not(:disabled):focus svg path, .button--back-link:not(:disabled):focus svg polygon {
  fill: #2F1787;
}

.button .svg-container, .button--back-link .svg-container {
  width: 20px;
  margin-right: 15px;
  height: 15px;
}

.button .svg-container svg path, .button .svg-container svg polygon, .button--back-link .svg-container svg path, .button--back-link .svg-container svg polygon {
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
}

.button--live-status {
  text-decoration: none !important;
  width: 100%;
  padding: 15px;
  background-color: #FFFFFF;
}

.button--live-status:hover, .button--live-status:focus {
  background-color: #f7f7f7;
  text-decoration: none;
}

.button--live-status--running .svg-container svg path, .button--live-status--running .svg-container svg circle {
  fill: #EB1B1B !important;
}

.button--live-status--ready .svg-container svg path {
  fill: #3FA808 !important;
}

.button--live-status--pending .svg-container svg path, .button--live-status--pending .svg-container svg polygon {
  fill: #FF9300 !important;
}

.button--live-status--finished .svg-container svg path, .button--live-status--finished .svg-container svg polygon {
  fill: #313131 !important;
}

.button--live-status .svg-container {
  width: 24px;
  height: 24px;
}

.button--live-convert-to-replay {
  text-decoration: none !important;
  width: 100%;
  padding: 15px;
  color: #0B7D9A;
  margin-top: 10px;
}

.button--live-convert-to-replay:hover, .button--live-convert-to-replay:focus {
  background-color: #f7f7f7;
  text-decoration: none;
}

.button--live-convert-to-replay .svg-container {
  width: 24px;
  height: 24px;
}

.button--live-convert-to-replay .svg-container svg path {
  fill: #0B7D9A;
}

.button--expert {
  text-decoration: none !important;
  width: 100%;
  padding: 6px;
}

.button--expert:hover, .button--expert:focus {
  background-color: #f7f7f7;
  text-decoration: none;
}

.button--expert .svg-container {
  width: 18px;
  height: 18px;
}

.button--expert .svg-container svg path {
  fill: #0B7D9A;
}

.button--expert--live-status {
  text-decoration: none !important;
  width: 100%;
  padding: 6px;
  background-color: #FFFFFF;
}

.button--expert--live-status:hover, .button--expert--live-status:focus {
  background-color: #f7f7f7;
  text-decoration: none;
}

.button--expert--live-status--running .svg-container svg path, .button--expert--live-status--running .svg-container svg circle {
  fill: #EB1B1B !important;
}

.button--expert--live-status--ready .svg-container svg path {
  fill: #3FA808 !important;
}

.button--expert--live-status--pending .svg-container svg path, .button--expert--live-status--pending .svg-container svg polygon {
  fill: #FF9300 !important;
}

.button--expert--live-status--finished .svg-container svg path, .button--expert--live-status--finished .svg-container svg polygon {
  fill: #313131 !important;
}

.button--expert--live-status .svg-container {
  width: 18px;
  height: 18px;
}

.button--expert--live-convert-to-replay {
  text-decoration: none !important;
  width: 100%;
  padding: 6px;
  color: #0B7D9A;
  margin-top: 8px;
}

.button--expert--live-convert-to-replay:hover, .button--expert--live-convert-to-replay:focus {
  background-color: #f7f7f7;
  text-decoration: none;
}

.button--expert--live-convert-to-replay .svg-container {
  width: 18px;
  height: 18px;
}

.button--expert--live-convert-to-replay .svg-container svg path {
  fill: #0B7D9A;
}

.button--bottom {
  text-decoration: none !important;
  width: 100%;
  padding: 6px;
  margin-top: 8px;
}

.button--bottom--purge {
  width: 50%;
  padding: 6px;
  margin-top: 8px;
}

.button--bottom:hover, .button--bottom:focus {
  background-color: #f7f7f7;
  text-decoration: none;
}

.button--bottom .svg-container {
  width: 18px;
  height: 18px;
}

.button .svg-container-chrono {
  width: 30px;
  margin-right: 7.5px;
  height: 50px;
  border: 1px solid #2F1787;
  border-radius: 20%;
}

.button .svg-container-chrono svg path, .button .svg-container-chrono svg polygon {
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
}

.button-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}

.button-group > .button {
  box-shadow: none;
}

.button-group > .button:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 1px solid #F2F2F2;
}

.button-group > .button:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.row-action {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  width: 45px;
  height: 45px;
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
  background-color: #FFFFFF;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  padding: 10px;
}

.row-action:not(:last-child) {
  margin-right: 5px;
}

.row-action:not(:disabled):hover, .row-action:not(:disabled):focus {
  background-color: #f7f7f7;
}

.row-action svg {
  width: 20px;
  height: 20px;
}

.row-action svg path, .row-action svg polygon, .row-action svg circle {
  fill: #2F1787;
}

form .form-group {
  margin-bottom: 20px;
}

form .form-group label:not(.custom-control-label), form .form-group .col-form-label, form .form-group .form-label {
  padding: 0;
  margin-bottom: 0.5rem;
  line-height: inherit;
}

form .form-group .form-control {
  border-radius: 5px;
  height: auto;
  padding: 10px 15px;
  border-color: #D5D5D5;
  -webkit-transition: border-color 200ms ease-in-out;
  transition: border-color 200ms ease-in-out;
}

form .form-group .form-control:not(.is-invalid):focus {
  border-color: #2F1787;
}

form .form-group .form-control:-webkit-autofill, form .form-group .form-control:-webkit-autofill:focus, form .form-group .form-control:-webkit-autofill:hover, form .form-group .form-control:-webkit-autofill:active {
  -webkit-transition: border-color 200ms ease-in-out, background-color 5000s ease-in-out;
  transition: border-color 200ms ease-in-out, background-color 5000s ease-in-out;
  -webkit-text-fill-color: #3E3E3E;
  color: #3E3E3E;
}

form .form-group .form-control::-webkit-input-placeholder {
  font-style: italic;
  color: rgba(62, 62, 62, 0.5);
}

form .form-group .form-control::-moz-placeholder {
  font-style: italic;
  color: rgba(62, 62, 62, 0.5);
}

form .form-group .form-control:-ms-input-placeholder {
  font-style: italic;
  color: rgba(62, 62, 62, 0.5);
}

form .form-group .form-control::-ms-input-placeholder {
  font-style: italic;
  color: rgba(62, 62, 62, 0.5);
}

form .form-group .form-control::placeholder {
  font-style: italic;
  color: rgba(62, 62, 62, 0.5);
}

form .form-group .form-control.is-invalid {
  border-color: #E81212;
}

form .form-group input[type='color'].form-control {
  height: 40px;
}

form fieldset:not(:last-child) {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #D5D5D5;
}

form fieldset legend {
  margin-bottom: 20px;
}

*:-webkit-autofill, *:-webkit-autofill:focus, *:-webkit-autofill:hover, *:-webkit-autofill:active {
  -webkit-transition: background-color 5000s ease-in-out;
  transition: background-color 5000s ease-in-out;
}

/* clears the 'X' from Internet Explorer */
input[type=search]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

input[type=search]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

/* clears the 'X' from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

.input-group .input-group-append .input-group-text {
  background-color: transparent;
}

.input-group .input-group-append .input-group-text svg path, .input-group .input-group-append .input-group-text svg polygon {
  fill: #2F1787;
}

.input-group.is-invalid .input-group-text, .input-group.is-invalid .form-control {
  border-color: #DC3545 !important;
}

.input-group:not(.is-invalid):focus-within .input-group-text {
  border-color: #2F1787;
}

.input-group.no-border .input-group-text {
  background-color: transparent;
}

.input-group.no-border .input-group-prepend .input-group-text {
  border-right: 0;
}

.input-group.no-border .input-group-append .input-group-text {
  border-left: 0;
}

.input-group.no-border .form-control {
  border-left: 0 !important;
  padding-left: 0 !important;
}

.input-group.copy-to-clipboard .form-control {
  border-right: none;
}

.input-group.copy-to-clipboard .input-group-text {
  background-color: #e9ecef;
  border-left: none;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
          align-items: flex-start;
}

.input-group .input-group-text {
  border-radius: 3px;
  border-color: #D5D5D5;
  background-color: #F2F2F2;
  -webkit-transition: border-color 200ms ease-in-out;
  transition: border-color 200ms ease-in-out;
}

.input-group .input-group-text[data-component="password-visibility-toggle"] {
  cursor: pointer;
}

.input-group .input-group-text[data-component="password-visibility-toggle"][data-password-visible="true"] svg path, .input-group .input-group-text[data-component="password-visibility-toggle"]:hover svg path {
  fill: #2F1787 !important;
}

.input-group .input-group-text[data-component="password-visibility-toggle"] svg path {
  -webkit-transition: all 200ms ease-in-out;
  transition: all 200ms ease-in-out;
  fill: #838383 !important;
}

.input-group .input-group-text svg {
  width: 20px;
  max-height: 30px;
}

.input-group .input-group-text svg path {
  fill: #838383;
}

.form-floating-container {
  background-color: #FFFFFF;
  border-radius: 10px;
  width: 445px;
  max-width: 100%;
  margin: 0 20px;
}

.form-floating-container__header {
  padding: 40px 60px 30px;
  border-bottom: 1px solid #D5D5D5;
}

.form-floating-container__body {
  padding: 30px 60px;
}

.form-floating-container__logo {
  max-width: 100%;
  display: block;
  margin: 0 auto 30px;
}

.form-floating-container__title {
  text-align: center;
}

.form-floating-container__description {
  margin-bottom: 25px;
}

.form-floating-container .contains-form-group {
  margin-bottom: -5px;
}

.form-floating-container .form-group {
  margin-bottom: 5px;
}

.form-floating-container .form-group .input-group {
  border-radius: 3px;
}

.form-floating-container .form-group .input-group:focus-within .input-group-text, .form-floating-container .form-group .input-group:focus-within input.form-control {
  border-color: #2F1787;
}

.form-floating-container .form-group .input-group .input-group-prepend {
  margin-right: 0;
}

.form-floating-container .form-group .input-group .input-group-text {
  border-color: #D5D5D5;
  -webkit-transition: border-color 200ms ease-in-out;
  transition: border-color 200ms ease-in-out;
}

.form-floating-container .form-group .input-group .input-group-text svg path {
  fill: #2F1787;
}

.form-floating-container .form-group input.form-control {
  background-color: transparent;
  padding: 13px 15px;
  border-color: #D5D5D5;
  -webkit-transition: border-color 200ms ease-in-out;
  transition: border-color 200ms ease-in-out;
}

.form-floating-container .form-group input.form-control:-webkit-autofill, .form-floating-container .form-group input.form-control:-webkit-autofill:focus, .form-floating-container .form-group input.form-control:-webkit-autofill:hover, .form-floating-container .form-group input.form-control:-webkit-autofill:active {
  -webkit-transition: border-color 200ms ease-in-out, background-color 5000s ease-in-out;
  transition: border-color 200ms ease-in-out, background-color 5000s ease-in-out;
  -webkit-text-fill-color: #3E3E3E;
  color: #3E3E3E;
}

.form-floating-container .form-group input.form-control::-webkit-input-placeholder {
  color: #D5D5D5;
  -webkit-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
}

.form-floating-container .form-group input.form-control::-moz-placeholder {
  color: #D5D5D5;
  -moz-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
}

.form-floating-container .form-group input.form-control:-ms-input-placeholder {
  color: #D5D5D5;
  -ms-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
}

.form-floating-container .form-group input.form-control::-ms-input-placeholder {
  color: #D5D5D5;
  -ms-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
}

.form-floating-container .form-group input.form-control::placeholder {
  color: #D5D5D5;
  -webkit-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
}

.form-floating-container .form-group input.form-control:focus {
  border-color: #2F1787;
}

.form-floating-container .form-group input.form-control:focus::-webkit-input-placeholder {
  color: #838383;
}

.form-floating-container .form-group input.form-control:focus::-moz-placeholder {
  color: #838383;
}

.form-floating-container .form-group input.form-control:focus:-ms-input-placeholder {
  color: #838383;
}

.form-floating-container .form-group input.form-control:focus::-ms-input-placeholder {
  color: #838383;
}

.form-floating-container .form-group input.form-control:focus::placeholder {
  color: #838383;
}

.form-floating-container .alert:not(:last-child) {
  margin: 0 0 10px;
}

.form-floating-container a:not(.button) {
  color: #838383;
  text-decoration: underline;
}

.form-floating-container a:not(.button):not(:disabled):hover, .form-floating-container a:not(.button):not(:disabled):focus {
  color: #2F1787;
}

.form-floating-container .button {
  min-height: 60px;
}

.custom-control {
  min-height: auto;
}

.custom-control.custom-control-inline {
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
}

.custom-control .custom-control-input {
  width: 1rem;
  height: 1rem;
}

.custom-control .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #E81212 !important;
  background-color: #FFFFFF;
}

.custom-control .custom-control-label::before, .custom-control .custom-control-label::after {
  top: 0;
}

.custom-control.custom-switch .custom-control-label {
  height: 2rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  padding-left: 10px;
}

.custom-control.custom-switch .custom-control-label::before {
  cursor: pointer;
  height: 2rem;
  border-color: #676767;
  background-color: #676767;
  border-width: 2px;
}

.custom-control.custom-switch .custom-control-label::after {
  cursor: pointer;
  top: 2px !important;
  background-color: #FFFFFF;
}

.custom-control.custom-switch .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #3FA808;
  background-color: #3FA808;
}

.custom-control.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  -webkit-transform: translateX(1rem);
          transform: translateX(1rem);
}

.custom-control.custom-switch .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #676767;
}

.modal.active {
  display: block;
}

.modal .modal-dialog {
  padding: 30px;
}

.modal .modal-dialog .modal-content {
  border: none;
  border-radius: 5px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}

.modal .modal-dialog .modal-content .modal-header {
  position: relative;
  display: block;
  padding: 20px;
  border-color: #D5D5D5;
}

.modal .modal-dialog .modal-content .modal-header .modal-title {
  font-size: 16px;
  line-height: 19px;
  letter-spacing: -0.3px;
  color: #3E3E3E;
}

.modal .modal-dialog .modal-content .modal-header .close {
  position: absolute;
  right: 25px;
  bottom: 20px;
}

.modal .modal-dialog .modal-content .modal-header .close .svg-container {
  width: 25px;
  height: 25px;
}

.modal .modal-dialog .modal-content .modal-header .close .svg-container svg path:first-of-type {
  fill: none;
}

.modal .modal-dialog .modal-content .modal-header .close .svg-container svg path {
  fill: #2F1787;
}

.modal .modal-dialog .modal-content .modal-body {
  padding: 20px;
}

.modal .modal-dialog .modal-content button {
  border-radius: 2px;
  outline: none;
  box-shadow: none;
  padding: 11px 25px;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vbWFpbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9jb21tb24vc2Fzcy9hYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9jb21tb24vc2Fzcy92ZW5kb3JzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvYWJzdHJhY3RzL19wbGFjZWhvbGRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvdmVuZG9ycy9zd2FsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL2NvbW1vbi9zYXNzL2Jhc2UvX2NvbW1vbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9jb21tb24vc2Fzcy9hYnN0cmFjdHMvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9jb21tb24vc2Fzcy9iYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vL3BhZ2VzL3VzZXIvcmVzZXRfcGFzc3dvcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL2NvbW1vbi9zYXNzL2NvbXBvbmVudHMvX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvY29tcG9uZW50cy9faW5wdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvY29tcG9uZW50cy9faW5wdXRfZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvY29tcG9uZW50cy9fZm9ybV9mbG9hdGluZ19jb250YWluZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvY29tcG9uZW50cy9fY3VzdG9tX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vY29tbW9uL3Nhc3MvY29tcG9uZW50cy9fbW9kYWwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7aUVBQWlFO0FDRmpFOztpRURLaUU7QUNRakU7O2lFRExpRTtBQUVqRTs7aUVBQ2lFO0FFWGpFOztpRUZjaUU7QUVBakU7O2lFRkdpRTtBRU9qRTs7aUVGSmlFO0FFY2pFOztpRUZYaUU7QUV3QmpFOztpRUZyQmlFO0FBVmpFOztpRUFhaUU7QUdYakU7OztFQUdFLHNCQUFzQjtBSGF4Qjs7QUdWQTtFQUNFLHVCQUF1QjtFQUN2QixpQkFBaUI7RUFDakIsOEJBQThCO0VBQzlCLDZDQ1hhO0FKd0JmOztBR1BBO0VBQ0UsY0FBYztBSFVoQjs7QUdBQTtFQUNFLFNBQVM7RUFDVCxxTkNxT29PO0VDckpoTyxlQXRDWTtFRnhDaEIsZ0JDOE8rQjtFRDdP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RVJ5c0M5QztBQUNGOztBVy92Q0E7RUFBcUIsbUNBQW1DO0FYbXdDeEQ7O0FXbHdDQTtFQUFxQiw4QkFBOEI7QVhzd0NuRDs7QVdyd0NBO0VBQXFCLGlDQUFpQztBWHl3Q3REOztBV3h3Q0E7RUFBcUIsaUNBQWlDO0FYNHdDdEQ7O0FXM3dDQTtFQUFxQixzQ0FBc0M7QVgrd0MzRDs7QVc5d0NBO0VBQXFCLG1DQUFtQztBWGt4Q3hEOztBWXB4Q0U7RUFDRSxvQ0FBbUM7QVp1eEN2Qzs7QU03d0NFOzs7RU1MSSxvQ0FBZ0Q7QVp3eEN0RDs7QVk5eENFO0VBQ0Usb0NBQW1DO0FaaXlDdkM7O0FNdnhDRTs7O0VNTEksb0NBQWdEO0Faa3lDdEQ7O0FZeHlDRTtFQUNFLG9DQUFtQztBWjJ5Q3ZDOztBTWp5Q0U7OztFTUxJLG9DQUFnRDtBWjR5Q3REOztBWWx6Q0U7RUFDRSxvQ0FBbUM7QVpxekN2Qzs7QU0zeUNFOzs7RU1MSSxvQ0FBZ0Q7QVpzekN0RDs7QVk1ekNFO0VBQ0Usb0NBQW1DO0FaK3pDdkM7O0FNcnpDRTs7O0VNTEksb0NBQWdEO0FaZzBDdEQ7O0FZdDBDRTtFQUNFLG9DQUFtQztBWnkwQ3ZDOztBTS96Q0U7OztFTUxJLG9DQUFnRDtBWjAwQ3REOztBWWgxQ0U7RUFDRSxvQ0FBbUM7QVptMUN2Qzs7QU16MENFOzs7RU1MSSxvQ0FBZ0Q7QVpvMUN0RDs7QVkxMUNFO0VBQ0Usb0NBQW1DO0FaNjFDdkM7O0FNbjFDRTs7O0VNTEksb0NBQWdEO0FaODFDdEQ7O0FhNzFDQTtFQUNFLGlDQUFtQztBYmcyQ3JDOztBYTcxQ0E7RUFDRSx3Q0FBd0M7QWJnMkMxQzs7QWMzMkNBO0VBQWtCLG9DQUFvRDtBZCsyQ3RFOztBYzkyQ0E7RUFBa0Isd0NBQXdEO0FkazNDMUU7O0FjajNDQTtFQUFrQiwwQ0FBMEQ7QWRxM0M1RTs7QWNwM0NBO0VBQWtCLDJDQUEyRDtBZHczQzdFOztBY3YzQ0E7RUFBa0IseUNBQXlEO0FkMjNDM0U7O0FjejNDQTtFQUFtQixvQkFBb0I7QWQ2M0N2Qzs7QWM1M0NBO0VBQW1CLHdCQUF3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Qi83RUk7RUFBdUIsdUJBQTRCO0ExQm04RXZEOztBMEIvN0VBO0VBQVUsMEJBQTBCO0ExQm04RXBDOztBMEJsOEVBO0VBQVUsMkJBQTJCO0ExQnM4RXJDOztBMEJsOEVBO0VBQWMsMkJBQTJCO0ExQnM4RXpDOztBMEJyOEVBO0VBQWMsNEJBQTRCO0ExQnk4RTFDOztBMEJ2OEVBO0VBQVUsdUJBQXVCO0ExQjI4RWpDOztBMEIxOEVBO0VBQVUsd0JBQXdCO0ExQjg4RWxDOztBMkJ2OUVRO0VBQWdDLG9CQUE0QjtBM0IyOUVwRTs7QTJCMTlFUTs7RUFFRSx3QkFBb0M7QTNCNjlFOUM7O0EyQjM5RVE7O0VBRUUsMEJBQXdDO0EzQjg5RWxEOztBMkI1OUVROztFQUVFLDJCQUEwQztBM0IrOUVwRDs7QTJCNzlFUTs7RUFFRSx5QkFBc0M7QTNCZytFaEQ7O0EyQi8rRVE7RUFBZ0Msc0JBQTRCO0EzQm0vRXBFOztBMkJsL0VROztFQUVFLDBCQUFvQztBM0JxL0U5Qzs7QTJCbi9FUTs7RUFFRSw0QkFBd0M7QTNCcy9FbEQ7O0EyQnAvRVE7O0VBRUUsNkJBQTBDO0EzQnUvRXBEOztBMkJyL0VROztFQUVFLDJCQUFzQztBM0J3L0VoRDs7QTJCdmdGUTtFQUFnQyx1QkFBNEI7QTNCMmdGcEU7O0EyQjFnRlE7O0VBRUUsMkJBQW9DO0EzQjZnRjlDOztBMkIzZ0ZROztFQUVFLDZCQUF3QztBM0I4Z0ZsRDs7QTJCNWdGUTs7RUFFRSw4QkFBMEM7QTNCK2dGcEQ7O0EyQjdnRlE7O0VBRUUsNEJBQXNDO0EzQmdoRmhEOztBMkIvaEZRO0VBQWdDLHVCQUE0QjtBM0JtaUZwRTs7QTJCbGlGUTs7RUFFRSwyQkFBb0M7QTNCcWlGOUM7O0EyQm5pRlE7O0VBRUUsNkJBQXdDO0EzQnNpRmxEOztBMkJwaUZROztFQUVFLDhCQUEwQztBM0J1aUZwRDs7QTJCcmlGUTs7RUFFRSw0QkFBc0M7QTNCd2lGaEQ7O0EyQnZqRlE7RUFBZ0MsdUJBQTRCO0EzQjJqRnBFOztBMkIxakZROztFQUVFLDJCQUFvQztBM0I2akY5Qzs7QTJCM2pGUTs7RUFFRSw2QkFBd0M7QTNCOGpGbEQ7O0EyQjVqRlE7O0VBRUUsOEJBQTBDO0EzQitqRnBEOztBMkI3akZROztFQUVFLDRCQUFzQztBM0Jna0ZoRDs7QTJCL2tGUTtFQUFnQyx1QkFBNEI7QTNCbWxGcEU7O0EyQmxsRlE7O0VBRUUsMkJBQW9DO0EzQnFsRjlDOztBMkJubEZROztFQUVFLDZCQUF3QztBM0JzbEZsRDs7QTJCcGxGUTs7RUFFRSw4QkFBMEM7QTNCdWxGcEQ7O0EyQnJsRlE7O0VBRUUsNEJBQXNDO0EzQndsRmhEOztBMkJ2bUZRO0VBQWdDLHFCQUE0QjtBM0IybUZwRTs7QTJCMW1GUTs7RUFFRSx5QkFBb0M7QTNCNm1GOUM7O0EyQjNtRlE7O0VBRUUsMkJBQXdDO0EzQjhtRmxEOztBMkI1bUZROztFQUVFLDRCQUEwQztBM0IrbUZwRDs7QTJCN21GUTs7RUFFRSwwQkFBc0M7QTNCZ25GaEQ7O0EyQi9uRlE7RUFBZ0MsdUJBQTRCO0EzQm1vRnBFOztBMkJsb0ZROztFQUVFLDJCQUFvQztBM0Jxb0Y5Qzs7QTJCbm9GUTs7RUFFRSw2QkFBd0M7QTNCc29GbEQ7O0EyQnBvRlE7O0VBRUUsOEJBQTBDO0EzQnVvRnBEOztBMkJyb0ZROztFQUVFLDRCQUFzQztBM0J3b0ZoRDs7QTJCdnBGUTtFQUFnQyx3QkFBNEI7QTNCMnBGcEU7O0EyQjFwRlE7O0VBRUUsNEJBQW9DO0EzQjZwRjlDOztBMkIzcEZROztFQUVFLDhCQUF3QztBM0I4cEZsRDs7QTJCNXBGUTs7RUFFRSwrQkFBMEM7QTNCK3BGcEQ7O0EyQjdwRlE7O0VBRUUsNkJBQXNDO0EzQmdxRmhEOztBMkIvcUZRO0VBQWdDLHdCQUE0QjtBM0JtckZwRTs7QTJCbHJGUTs7RUFFRSw0QkFBb0M7QTNCcXJGOUM7O0EyQm5yRlE7O0VBRUUsOEJBQXdDO0EzQnNyRmxEOztBMkJwckZROztFQUVFLCtCQUEwQztBM0J1ckZwRDs7QTJCcnJGUTs7RUFFRSw2QkFBc0M7QTNCd3JGaEQ7O0EyQnZzRlE7RUFBZ0Msd0JBQTRCO0EzQjJzRnBFOztBMkIxc0ZROztFQUVFLDRCQUFvQztBM0I2c0Y5Qzs7QTJCM3NGUTs7RUFFRSw4QkFBd0M7QTNCOHNGbEQ7O0EyQjVzRlE7O0VBRUUsK0JBQTBDO0EzQitzRnBEOztBMkI3c0ZROztFQUVFLDZCQUFzQztBM0JndEZoRDs7QTJCL3RGUTtFQUFnQyx3QkFBNEI7QTNCbXVGcEU7O0EyQmx1RlE7O0VBRUUsNEJBQW9DO0EzQnF1RjlDOztBMkJudUZROztFQUVFLDhCQUF3QztBM0JzdUZsRDs7QTJCcHVGUTs7RUFFRSwrQkFBMEM7QTNCdXVGcEQ7O0EyQnJ1RlE7O0VBRUUsNkJBQXNDO0EzQnd1RmhEOztBMkJodUZRO0VBQXdCLHVCQUEyQjtBM0JvdUYzRDs7QTJCbnVGUTs7RUFFRSwyQkFBK0I7QTNCc3VGekM7O0EyQnB1RlE7O0VBRUUsNkJBQWlDO0EzQnV1RjNDOztBMkJydUZROztFQUVFLDhCQUFrQztBM0J3dUY1Qzs7QTJCdHVGUTs7RUFFRSw0QkFBZ0M7QTNCeXVGMUM7O0EyQnh2RlE7RUFBd0Isd0JBQTJCO0EzQjR2RjNEOztBMkIzdkZROztFQUVFLDRCQUErQjtBM0I4dkZ6Qzs7QTJCNXZGUTs7RUFFRSw4QkFBaUM7QTNCK3ZGM0M7O0EyQjd2RlE7O0VBRUUsK0JBQWtDO0EzQmd3RjVDOztBMkI5dkZROztFQUVFLDZCQUFnQztBM0Jpd0YxQzs7QTJCaHhGUTtFQUF3Qix3QkFBMkI7QTNCb3hGM0Q7O0EyQm54RlE7O0VBRUUsNEJBQStCO0EzQnN4RnpDOztBMkJweEZROztFQUVFLDhCQUFpQztBM0J1eEYzQzs7QTJCcnhGUTs7RUFFRSwrQkFBa0M7QTNCd3hGNUM7O0EyQnR4RlE7O0VBRUUsNkJBQWdDO0EzQnl4RjFDOztBMkJ4eUZRO0VBQXdCLHdCQUEyQjtBM0I0eUYzRDs7QTJCM3lGUTs7RUFFRSw0QkFBK0I7QTNCOHlGekM7O0EyQjV5RlE7O0VBRUUsOEJBQWlDO0EzQit5RjNDOztBMkI3eUZROztFQUVFLCtCQUFrQztBM0JnekY1Qzs7QTJCOXlGUTs7RUFFRSw2QkFBZ0M7QTNCaXpGMUM7O0EyQmgwRlE7RUFBd0Isd0JBQTJCO0EzQm8wRjNEOztBMkJuMEZROztFQUVFLDRCQUErQjtBM0JzMEZ6Qzs7QTJCcDBGUTs7RUFFRSw4QkFBaUM7QTNCdTBGM0M7O0EyQnIwRlE7O0VBRUUsK0JBQWtDO0EzQncwRjVDOztBMkJ0MEZROztFQUVFLDZCQUFnQztBM0J5MEYxQzs7QTJCbjBGSTtFQUFtQix1QkFBdUI7QTNCdTBGOUM7O0EyQnQwRkk7O0VBRUUsMkJBQTJCO0EzQnkwRmpDOztBMkJ2MEZJOztFQUVFLDZCQUE2QjtBM0IwMEZuQzs7QTJCeDBGSTs7RUFFRSw4QkFBOEI7QTNCMjBGcEM7O0EyQnowRkk7O0VBRUUsNEJBQTRCO0EzQjQwRmxDOztBU3IxRkk7RWtCbERJO0lBQWdDLG9CQUE0QjtFM0I0NEZsRTtFMkIzNEZNOztJQUVFLHdCQUFvQztFM0I2NEY1QztFMkIzNEZNOztJQUVFLDBCQUF3QztFM0I2NEZoRDtFMkIzNEZNOztJQUVFLDJCQUEwQztFM0I2NEZsRDtFMkIzNEZNOztJQUVFLHlCQUFzQztFM0I2NEY5QztFMkI1NUZNO0lBQWdDLHNCQUE0QjtFM0IrNUZsRTtFMkI5NUZNOztJQUVFLDBCQUFvQztFM0JnNkY1QztFMkI5NUZNOztJQUVFLDRCQUF3QztFM0JnNkZoRDtFMkI5NUZNOztJQUVFLDZCQUEwQztFM0JnNkZsRDtFMkI5NUZNOztJQUVFLDJCQUFzQztFM0JnNkY5QztFMkIvNkZNO0lBQWdDLHVCQUE0QjtFM0JrN0ZsRTtFMkJqN0ZNOztJQUVFLDJCQUFvQztFM0JtN0Y1QztFMkJqN0ZNOztJQUVFLDZCQUF3QztFM0JtN0ZoRDtFMkJqN0ZNOztJQUVFLDhCQUEwQztFM0JtN0ZsRDtFMkJqN0ZNOztJQUVFLDRCQUFzQztFM0JtN0Y5QztFMkJsOEZNO0lBQWdDLHVCQUE0QjtFM0JxOEZsRTtFMkJwOEZNOztJQUVFLDJCQUFvQztFM0JzOEY1QztFMkJwOEZNOztJQUVFLDZCQUF3QztFM0JzOEZoRDtFMkJwOEZNOztJQUVFLDhCQUEwQztFM0JzOEZsRDtFMkJwOEZNOztJQUVFLDRCQUFzQztFM0JzOEY5QztFMkJyOUZNO0lBQWdDLHVCQUE0QjtFM0J3OUZsRTtFMkJ2OUZNOztJQUVFLDJCQUFvQztFM0J5OUY1QztFMkJ2OUZNOztJQUVFLDZCQUF3QztFM0J5OUZoRDtFMkJ2OUZNOztJQUVFLDhCQUEwQztFM0J5OUZsRDtFMkJ2OUZNOztJQUVFLDRCQUFzQztFM0J5OUY5QztFMkJ4K0ZNO0lBQWdDLHVCQUE0QjtFM0IyK0ZsRTtFMkIxK0ZNOztJQUVFLDJCQUFvQztFM0I0K0Y1QztFMkIxK0ZNOztJQUVFLDZCQUF3QztFM0I0K0ZoRDtFMkIxK0ZNOztJQUVFLDhCQUEwQztFM0I0K0ZsRDtFMkIxK0ZNOztJQUVFLDRCQUFzQztFM0I0K0Y5QztFMkIzL0ZNO0lBQWdDLHFCQUE0QjtFM0I4L0ZsRTtFMkI3L0ZNOztJQUVFLHlCQUFvQztFM0IrL0Y1QztFMkI3L0ZNOztJQUVFLDJCQUF3QztFM0IrL0ZoRDtFMkI3L0ZNOztJQUVFLDRCQUEwQztFM0IrL0ZsRDtFMkI3L0ZNOztJQUVFLDBCQUFzQztFM0IrL0Y5QztFMkI5Z0dNO0lBQWdDLHVCQUE0QjtFM0JpaEdsRTtFMkJoaEdNOztJQUVFLDJCQUFvQztFM0JraEc1QztFMkJoaEdNOztJQUVFLDZCQUF3QztFM0JraEdoRDtFMkJoaEdNOztJQUVFLDhCQUEwQztFM0JraEdsRDtFMkJoaEdNOztJQUVFLDRCQUFzQztFM0JraEc5QztFMkJqaUdNO0lBQWdDLHdCQUE0QjtFM0JvaUdsRTtFMkJuaUdNOztJQUVFLDRCQUFvQztFM0JxaUc1QztFMkJuaUdNOztJQUVFLDhCQUF3QztFM0JxaUdoRDtFMkJuaUdNOztJQUVFLCtCQUEwQztFM0JxaUdsRDtFMkJuaUdNOztJQUVFLDZCQUFzQztFM0JxaUc5QztFMkJwakdNO0lBQWdDLHdCQUE0QjtFM0J1akdsRTtFMkJ0akdNOztJQUVFLDRCQUFvQztFM0J3akc1QztFMkJ0akdNOztJQUVFLDhCQUF3QztFM0J3akdoRDtFMkJ0akdNOztJQUVFLCtCQUEwQztFM0J3akdsRDtFMkJ0akdNOztJQUVFLDZCQUFzQztFM0J3akc5QztFMkJ2a0dNO0lBQWdDLHdCQUE0QjtFM0Iwa0dsRTtFMkJ6a0dNOztJQUVFLDRCQUFvQztFM0Iya0c1QztFMkJ6a0dNOztJQUVFLDhCQUF3QztFM0Iya0doRDtFMkJ6a0dNOztJQUVFLCtCQUEwQztFM0Iya0dsRDtFMkJ6a0dNOztJQUVFLDZCQUFzQztFM0Iya0c5QztFMkIxbEdNO0lBQWdDLHdCQUE0QjtFM0I2bEdsRTtFMkI1bEdNOztJQUVFLDRCQUFvQztFM0I4bEc1QztFMkI1bEdNOztJQUVFLDhCQUF3QztFM0I4bEdoRDtFMkI1bEdNOztJQUVFLCtCQUEwQztFM0I4bEdsRDtFMkI1bEdNOztJQUVFLDZCQUFzQztFM0I4bEc5QztFMkJ0bEdNO0lBQXdCLHVCQUEyQjtFM0J5bEd6RDtFMkJ4bEdNOztJQUVFLDJCQUErQjtFM0IwbEd2QztFMkJ4bEdNOztJQUVFLDZCQUFpQztFM0IwbEd6QztFMkJ4bEdNOztJQUVFLDhCQUFrQztFM0IwbEcxQztFMkJ4bEdNOztJQUVFLDRCQUFnQztFM0IwbEd4QztFMkJ6bUdNO0lBQXdCLHdCQUEyQjtFM0I0bUd6RDtFMkIzbUdNOztJQUVFLDRCQUErQjtFM0I2bUd2QztFMkIzbUdNOztJQUVFLDhCQUFpQztFM0I2bUd6QztFMkIzbUdNOztJQUVFLCtCQUFrQztFM0I2bUcxQztFMkIzbUdNOztJQUVFLDZCQUFnQztFM0I2bUd4QztFMkI1bkdNO0lBQXdCLHdCQUEyQjtFM0Irbkd6RDtFMkI5bkdNOztJQUVFLDRCQUErQjtFM0Jnb0d2QztFMkI5bkdNOztJQUVFLDhCQUFpQztFM0Jnb0d6QztFMkI5bkdNOztJQUVFLCtCQUFrQztFM0Jnb0cxQztFMkI5bkdNOztJQUVFLDZCQUFnQztFM0Jnb0d4QztFMkIvb0dNO0lBQXdCLHdCQUEyQjtFM0JrcEd6RDtFMkJqcEdNOztJQUVFLDRCQUErQjtFM0JtcEd2QztFMkJqcEdNOztJQUVFLDhCQUFpQztFM0JtcEd6QztFMkJqcEdNOztJQUVFLCtCQUFrQztFM0JtcEcxQztFMkJqcEdNOztJQUVFLDZCQUFnQztFM0JtcEd4QztFMkJscUdNO0lBQXdCLHdCQUEyQjtFM0JxcUd6RDtFMkJwcUdNOztJQUVFLDRCQUErQjtFM0JzcUd2QztFMkJwcUdNOztJQUVFLDhCQUFpQztFM0JzcUd6QztFMkJwcUdNOztJQUVFLCtCQUFrQztFM0JzcUcxQztFMkJwcUdNOztJQUVFLDZCQUFnQztFM0JzcUd4QztFMkJocUdFO0lBQW1CLHVCQUF1QjtFM0JtcUc1QztFMkJscUdFOztJQUVFLDJCQUEyQjtFM0JvcUcvQjtFMkJscUdFOztJQUVFLDZCQUE2QjtFM0JvcUdqQztFMkJscUdFOztJQUVFLDhCQUE4QjtFM0JvcUdsQztFMkJscUdFOztJQUVFLDRCQUE0QjtFM0JvcUdoQztBQUNGOztBUzlxR0k7RWtCbERJO0lBQWdDLG9CQUE0QjtFM0JxdUdsRTtFMkJwdUdNOztJQUVFLHdCQUFvQztFM0JzdUc1QztFMkJwdUdNOztJQUVFLDBCQUF3QztFM0JzdUdoRDtFMkJwdUdNOztJQUVFLDJCQUEwQztFM0JzdUdsRDtFMkJwdUdNOztJQUVFLHlCQUFzQztFM0JzdUc5QztFMkJydkdNO0lBQWdDLHNCQUE0QjtFM0J3dkdsRTtFMkJ2dkdNOztJQUVFLDBCQUFvQztFM0J5dkc1QztFMkJ2dkdNOztJQUVFLDRCQUF3QztFM0J5dkdoRDtFMkJ2dkdNOztJQUVFLDZCQUEwQztFM0J5dkdsRDtFMkJ2dkdNOztJQUVFLDJCQUFzQztFM0J5dkc5QztFMkJ4d0dNO0lBQWdDLHVCQUE0QjtFM0Iyd0dsRTtFMkIxd0dNOztJQUVFLDJCQUFvQztFM0I0d0c1QztFMkIxd0dNOztJQUVFLDZCQUF3QztFM0I0d0doRDtFMkIxd0dNOztJQUVFLDhCQUEwQztFM0I0d0dsRDtFMkIxd0dNOztJQUVFLDRCQUFzQztFM0I0d0c5QztFMkIzeEdNO0lBQWdDLHVCQUE0QjtFM0I4eEdsRTtFMkI3eEdNOztJQUVFLDJCQUFvQztFM0IreEc1QztFMkI3eEdNOztJQUVFLDZCQUF3QztFM0IreEdoRDtFMkI3eEdNOztJQUVFLDhCQUEwQztFM0IreEdsRDtFMkI3eEdNOztJQUVFLDRCQUFzQztFM0IreEc5QztFMkI5eUdNO0lBQWdDLHVCQUE0QjtFM0JpekdsRTtFMkJoekdNOztJQUVFLDJCQUFvQztFM0Jrekc1QztFMkJoekdNOztJQUVFLDZCQUF3QztFM0JrekdoRDtFMkJoekdNOztJQUVFLDhCQUEwQztFM0JrekdsRDtFMkJoekdNOztJQUVFLDRCQUFzQztFM0Jrekc5QztFMkJqMEdNO0lBQWdDLHVCQUE0QjtFM0JvMEdsRTtFMkJuMEdNOztJQUVFLDJCQUFvQztFM0JxMEc1QztFMkJuMEdNOztJQUVFLDZCQUF3QztFM0JxMEdoRDtFMkJuMEdNOztJQUVFLDhCQUEwQztFM0JxMEdsRDtFMkJuMEdNOztJQUVFLDRCQUFzQztFM0JxMEc5QztFMkJwMUdNO0lBQWdDLHFCQUE0QjtFM0J1MUdsRTtFMkJ0MUdNOztJQUVFLHlCQUFvQztFM0J3MUc1QztFMkJ0MUdNOztJQUVFLDJCQUF3QztFM0J3MUdoRDtFMkJ0MUdNOztJQUVFLDRCQUEwQztFM0J3MUdsRDtFMkJ0MUdNOztJQUVFLDBCQUFzQztFM0J3MUc5QztFMkJ2MkdNO0lBQWdDLHVCQUE0QjtFM0IwMkdsRTtFMkJ6MkdNOztJQUVFLDJCQUFvQztFM0IyMkc1QztFMkJ6MkdNOztJQUVFLDZCQUF3QztFM0IyMkdoRDtFMkJ6MkdNOztJQUVFLDhCQUEwQztFM0IyMkdsRDtFMkJ6MkdNOztJQUVFLDRCQUFzQztFM0IyMkc5QztFMkIxM0dNO0lBQWdDLHdCQUE0QjtFM0I2M0dsRTtFMkI1M0dNOztJQUVFLDRCQUFvQztFM0I4M0c1QztFMkI1M0dNOztJQUVFLDhCQUF3QztFM0I4M0doRDtFMkI1M0dNOztJQUVFLCtCQUEwQztFM0I4M0dsRDtFMkI1M0dNOztJQUVFLDZCQUFzQztFM0I4M0c5QztFMkI3NEdNO0lBQWdDLHdCQUE0QjtFM0JnNUdsRTtFMkIvNEdNOztJQUVFLDRCQUFvQztFM0JpNUc1QztFMkIvNEdNOztJQUVFLDhCQUF3QztFM0JpNUdoRDtFMkIvNEdNOztJQUVFLCtCQUEwQztFM0JpNUdsRDtFMkIvNEdNOztJQUVFLDZCQUFzQztFM0JpNUc5QztFMkJoNkdNO0lBQWdDLHdCQUE0QjtFM0JtNkdsRTtFMkJsNkdNOztJQUVFLDRCQUFvQztFM0JvNkc1QztFMkJsNkdNOztJQUVFLDhCQUF3QztFM0JvNkdoRDtFMkJsNkdNOztJQUVFLCtCQUEwQztFM0JvNkdsRDtFMkJsNkdNOztJQUVFLDZCQUFzQztFM0JvNkc5QztFMkJuN0dNO0lBQWdDLHdCQUE0QjtFM0JzN0dsRTtFMkJyN0dNOztJQUVFLDRCQUFvQztFM0J1N0c1QztFMkJyN0dNOztJQUVFLDhCQUF3QztFM0J1N0doRDtFMkJyN0dNOztJQUVFLCtCQUEwQztFM0J1N0dsRDtFMkJyN0dNOztJQUVFLDZCQUFzQztFM0J1N0c5QztFMkIvNkdNO0lBQXdCLHVCQUEyQjtFM0JrN0d6RDtFMkJqN0dNOztJQUVFLDJCQUErQjtFM0JtN0d2QztFMkJqN0dNOztJQUVFLDZCQUFpQztFM0JtN0d6QztFMkJqN0dNOztJQUVFLDhCQUFrQztFM0JtN0cxQztFMkJqN0dNOztJQUVFLDRCQUFnQztFM0JtN0d4QztFMkJsOEdNO0lBQXdCLHdCQUEyQjtFM0JxOEd6RDtFMkJwOEdNOztJQUVFLDRCQUErQjtFM0JzOEd2QztFMkJwOEdNOztJQUVFLDhCQUFpQztFM0JzOEd6QztFMkJwOEdNOztJQUVFLCtCQUFrQztFM0JzOEcxQztFMkJwOEdNOztJQUVFLDZCQUFnQztFM0JzOEd4QztFMkJyOUdNO0lBQXdCLHdCQUEyQjtFM0J3OUd6RDtFMkJ2OUdNOztJQUVFLDRCQUErQjtFM0J5OUd2QztFMkJ2OUdNOztJQUVFLDhCQUFpQztFM0J5OUd6QztFMkJ2OUdNOztJQUVFLCtCQUFrQztFM0J5OUcxQztFMkJ2OUdNOztJQUVFLDZCQUFnQztFM0J5OUd4QztFMkJ4K0dNO0lBQXdCLHdCQUEyQjtFM0IyK0d6RDtFMkIxK0dNOztJQUVFLDRCQUErQjtFM0I0K0d2QztFMkIxK0dNOztJQUVFLDhCQUFpQztFM0I0K0d6QztFMkIxK0dNOztJQUVFLCtCQUFrQztFM0I0K0cxQztFMkIxK0dNOztJQUVFLDZCQUFnQztFM0I0K0d4QztFMkIzL0dNO0lBQXdCLHdCQUEyQjtFM0I4L0d6RDtFMkI3L0dNOztJQUVFLDRCQUErQjtFM0IrL0d2QztFMkI3L0dNOztJQUVFLDhCQUFpQztFM0IrL0d6QztFMkI3L0dNOztJQUVFLCtCQUFrQztFM0IrL0cxQztFMkI3L0dNOztJQUVFLDZCQUFnQztFM0IrL0d4QztFMkJ6L0dFO0lBQW1CLHVCQUF1QjtFM0I0L0c1QztFMkIzL0dFOztJQUVFLDJCQUEyQjtFM0I2L0cvQjtFMkIzL0dFOztJQUVFLDZCQUE2QjtFM0I2L0dqQztFMkIzL0dFOztJQUVFLDhCQUE4QjtFM0I2L0dsQztFMkIzL0dFOztJQUVFLDRCQUE0QjtFM0I2L0doQztBQUNGOztBU3ZnSEk7RWtCbERJO0lBQWdDLG9CQUE0QjtFM0I4akhsRTtFMkI3akhNOztJQUVFLHdCQUFvQztFM0Irakg1QztFMkI3akhNOztJQUVFLDBCQUF3QztFM0IrakhoRDtFMkI3akhNOztJQUVFLDJCQUEwQztFM0IrakhsRDtFMkI3akhNOztJQUVFLHlCQUFzQztFM0Irakg5QztFMkI5a0hNO0lBQWdDLHNCQUE0QjtFM0JpbEhsRTtFMkJobEhNOztJQUVFLDBCQUFvQztFM0JrbEg1QztFMkJobEhNOztJQUVFLDRCQUF3QztFM0JrbEhoRDtFMkJobEhNOztJQUVFLDZCQUEwQztFM0JrbEhsRDtFMkJobEhNOztJQUVFLDJCQUFzQztFM0JrbEg5QztFMkJqbUhNO0lBQWdDLHVCQUE0QjtFM0JvbUhsRTtFMkJubUhNOztJQUVFLDJCQUFvQztFM0JxbUg1QztFMkJubUhNOztJQUVFLDZCQUF3QztFM0JxbUhoRDtFMkJubUhNOztJQUVFLDhCQUEwQztFM0JxbUhsRDtFMkJubUhNOztJQUVFLDRCQUFzQztFM0JxbUg5QztFMkJwbkhNO0lBQWdDLHVCQUE0QjtFM0J1bkhsRTtFMkJ0bkhNOztJQUVFLDJCQUFvQztFM0J3bkg1QztFMkJ0bkhNOztJQUVFLDZCQUF3QztFM0J3bkhoRDtFMkJ0bkhNOztJQUVFLDhCQUEwQztFM0J3bkhsRDtFMkJ0bkhNOztJQUVFLDRCQUFzQztFM0J3bkg5QztFMkJ2b0hNO0lBQWdDLHVCQUE0QjtFM0Iwb0hsRTtFMkJ6b0hNOztJQUVFLDJCQUFvQztFM0Iyb0g1QztFMkJ6b0hNOztJQUVFLDZCQUF3QztFM0Iyb0hoRDtFMkJ6b0hNOztJQUVFLDhCQUEwQztFM0Iyb0hsRDtFMkJ6b0hNOztJQUVFLDRCQUFzQztFM0Iyb0g5QztFMkIxcEhNO0lBQWdDLHVCQUE0QjtFM0I2cEhsRTtFMkI1cEhNOztJQUVFLDJCQUFvQztFM0I4cEg1QztFMkI1cEhNOztJQUVFLDZCQUF3QztFM0I4cEhoRDtFMkI1cEhNOztJQUVFLDhCQUEwQztFM0I4cEhsRDtFMkI1cEhNOztJQUVFLDRCQUFzQztFM0I4cEg5QztFMkI3cUhNO0lBQWdDLHFCQUE0QjtFM0JnckhsRTtFMkIvcUhNOztJQUVFLHlCQUFvQztFM0Jpckg1QztFMkIvcUhNOztJQUVFLDJCQUF3QztFM0JpckhoRDtFMkIvcUhNOztJQUVFLDRCQUEwQztFM0JpckhsRDtFMkIvcUhNOztJQUVFLDBCQUFzQztFM0Jpckg5QztFMkJoc0hNO0lBQWdDLHVCQUE0QjtFM0Jtc0hsRTtFMkJsc0hNOztJQUVFLDJCQUFvQztFM0Jvc0g1QztFMkJsc0hNOztJQUVFLDZCQUF3QztFM0Jvc0hoRDtFMkJsc0hNOztJQUVFLDhCQUEwQztFM0Jvc0hsRDtFMkJsc0hNOztJQUVFLDRCQUFzQztFM0Jvc0g5QztFMkJudEhNO0lBQWdDLHdCQUE0QjtFM0JzdEhsRTtFMkJydEhNOztJQUVFLDRCQUFvQztFM0J1dEg1QztFMkJydEhNOztJQUVFLDhCQUF3QztFM0J1dEhoRDtFMkJydEhNOztJQUVFLCtCQUEwQztFM0J1dEhsRDtFMkJydEhNOztJQUVFLDZCQUFzQztFM0J1dEg5QztFMkJ0dUhNO0lBQWdDLHdCQUE0QjtFM0J5dUhsRTtFMkJ4dUhNOztJQUVFLDRCQUFvQztFM0IwdUg1QztFMkJ4dUhNOztJQUVFLDhCQUF3QztFM0IwdUhoRDtFMkJ4dUhNOztJQUVFLCtCQUEwQztFM0IwdUhsRDtFMkJ4dUhNOztJQUVFLDZCQUFzQztFM0IwdUg5QztFMkJ6dkhNO0lBQWdDLHdCQUE0QjtFM0I0dkhsRTtFMkIzdkhNOztJQUVFLDRCQUFvQztFM0I2dkg1QztFMkIzdkhNOztJQUVFLDhCQUF3QztFM0I2dkhoRDtFMkIzdkhNOztJQUVFLCtCQUEwQztFM0I2dkhsRDtFMkIzdkhNOztJQUVFLDZCQUFzQztFM0I2dkg5QztFMkI1d0hNO0lBQWdDLHdCQUE0QjtFM0Ird0hsRTtFMkI5d0hNOztJQUVFLDRCQUFvQztFM0JneEg1QztFMkI5d0hNOztJQUVFLDhCQUF3QztFM0JneEhoRDtFMkI5d0hNOztJQUVFLCtCQUEwQztFM0JneEhsRDtFMkI5d0hNOztJQUVFLDZCQUFzQztFM0JneEg5QztFMkJ4d0hNO0lBQXdCLHVCQUEyQjtFM0Iyd0h6RDtFMkIxd0hNOztJQUVFLDJCQUErQjtFM0I0d0h2QztFMkIxd0hNOztJQUVFLDZCQUFpQztFM0I0d0h6QztFMkIxd0hNOztJQUVFLDhCQUFrQztFM0I0d0gxQztFMkIxd0hNOztJQUVFLDRCQUFnQztFM0I0d0h4QztFMkIzeEhNO0lBQXdCLHdCQUEyQjtFM0I4eEh6RDtFMkI3eEhNOztJQUVFLDRCQUErQjtFM0IreEh2QztFMkI3eEhNOztJQUVFLDhCQUFpQztFM0IreEh6QztFMkI3eEhNOztJQUVFLCtCQUFrQztFM0IreEgxQztFMkI3eEhNOztJQUVFLDZCQUFnQztFM0IreEh4QztFMkI5eUhNO0lBQXdCLHdCQUEyQjtFM0Jpekh6RDtFMkJoekhNOztJQUVFLDRCQUErQjtFM0Jrekh2QztFMkJoekhNOztJQUVFLDhCQUFpQztFM0Jrekh6QztFMkJoekhNOztJQUVFLCtCQUFrQztFM0JrekgxQztFMkJoekhNOztJQUVFLDZCQUFnQztFM0Jrekh4QztFMkJqMEhNO0lBQXdCLHdCQUEyQjtFM0JvMEh6RDtFMkJuMEhNOztJQUVFLDRCQUErQjtFM0JxMEh2QztFMkJuMEhNOztJQUVFLDhCQUFpQztFM0JxMEh6QztFMkJuMEhNOztJQUVFLCtCQUFrQztFM0JxMEgxQztFMkJuMEhNOztJQUVFLDZCQUFnQztFM0JxMEh4QztFMkJwMUhNO0lBQXdCLHdCQUEyQjtFM0J1MUh6RDtFMkJ0MUhNOztJQUVFLDRCQUErQjtFM0J3MUh2QztFMkJ0MUhNOztJQUVFLDhCQUFpQztFM0J3MUh6QztFMkJ0MUhNOztJQUVFLCtCQUFrQztFM0J3MUgxQztFMkJ0MUhNOztJQUVFLDZCQUFnQztFM0J3MUh4QztFMkJsMUhFO0lBQW1CLHVCQUF1QjtFM0JxMUg1QztFMkJwMUhFOztJQUVFLDJCQUEyQjtFM0JzMUgvQjtFMkJwMUhFOztJQUVFLDZCQUE2QjtFM0JzMUhqQztFMkJwMUhFOztJQUVFLDhCQUE4QjtFM0JzMUhsQztFMkJwMUhFOztJQUVFLDRCQUE0QjtFM0JzMUhoQztBQUNGOztBU2gySEk7RWtCbERJO0lBQWdDLG9CQUE0QjtFM0J1NUhsRTtFMkJ0NUhNOztJQUVFLHdCQUFvQztFM0J3NUg1QztFMkJ0NUhNOztJQUVFLDBCQUF3QztFM0J3NUhoRDtFMkJ0NUhNOztJQUVFLDJCQUEwQztFM0J3NUhsRDtFMkJ0NUhNOztJQUVFLHlCQUFzQztFM0J3NUg5QztFMkJ2NkhNO0lBQWdDLHNCQUE0QjtFM0IwNkhsRTtFMkJ6NkhNOztJQUVFLDBCQUFvQztFM0IyNkg1QztFMkJ6NkhNOztJQUVFLDRCQUF3QztFM0IyNkhoRDtFMkJ6NkhNOztJQUVFLDZCQUEwQztFM0IyNkhsRDtFMkJ6NkhNOztJQUVFLDJCQUFzQztFM0IyNkg5QztFMkIxN0hNO0lBQWdDLHVCQUE0QjtFM0I2N0hsRTtFMkI1N0hNOztJQUVFLDJCQUFvQztFM0I4N0g1QztFMkI1N0hNOztJQUVFLDZCQUF3QztFM0I4N0hoRDtFMkI1N0hNOztJQUVFLDhCQUEwQztFM0I4N0hsRDtFMkI1N0hNOztJQUVFLDRCQUFzQztFM0I4N0g5QztFMkI3OEhNO0lBQWdDLHVCQUE0QjtFM0JnOUhsRTtFMkIvOEhNOztJQUVFLDJCQUFvQztFM0JpOUg1QztFMkIvOEhNOztJQUVFLDZCQUF3QztFM0JpOUhoRDtFMkIvOEhNOztJQUVFLDhCQUEwQztFM0JpOUhsRDtFMkIvOEhNOztJQUVFLDRCQUFzQztFM0JpOUg5QztFMkJoK0hNO0lBQWdDLHVCQUE0QjtFM0JtK0hsRTtFMkJsK0hNOztJQUVFLDJCQUFvQztFM0JvK0g1QztFMkJsK0hNOztJQUVFLDZCQUF3QztFM0JvK0hoRDtFMkJsK0hNOztJQUVFLDhCQUEwQztFM0JvK0hsRDtFMkJsK0hNOztJQUVFLDRCQUFzQztFM0JvK0g5QztFMkJuL0hNO0lBQWdDLHVCQUE0QjtFM0JzL0hsRTtFMkJyL0hNOztJQUVFLDJCQUFvQztFM0J1L0g1QztFMkJyL0hNOztJQUVFLDZCQUF3QztFM0J1L0hoRDtFMkJyL0hNOztJQUVFLDhCQUEwQztFM0J1L0hsRDtFMkJyL0hNOztJQUVFLDRCQUFzQztFM0J1L0g5QztFMkJ0Z0lNO0lBQWdDLHFCQUE0QjtFM0J5Z0lsRTtFMkJ4Z0lNOztJQUVFLHlCQUFvQztFM0IwZ0k1QztFMkJ4Z0lNOztJQUVFLDJCQUF3QztFM0IwZ0loRDtFMkJ4Z0lNOztJQUVFLDRCQUEwQztFM0IwZ0lsRDtFMkJ4Z0lNOztJQUVFLDBCQUFzQztFM0IwZ0k5QztFMkJ6aElNO0lBQWdDLHVCQUE0QjtFM0I0aElsRTtFMkIzaElNOztJQUVFLDJCQUFvQztFM0I2aEk1QztFMkIzaElNOztJQUVFLDZCQUF3QztFM0I2aEloRDtFMkIzaElNOztJQUVFLDhCQUEwQztFM0I2aElsRDtFMkIzaElNOztJQUVFLDRCQUFzQztFM0I2aEk5QztFMkI1aUlNO0lBQWdDLHdCQUE0QjtFM0IraUlsRTtFMkI5aUlNOztJQUVFLDRCQUFvQztFM0Jnakk1QztFMkI5aUlNOztJQUVFLDhCQUF3QztFM0JnakloRDtFMkI5aUlNOztJQUVFLCtCQUEwQztFM0JnaklsRDtFMkI5aUlNOztJQUVFLDZCQUFzQztFM0Jnakk5QztFMkIvaklNO0lBQWdDLHdCQUE0QjtFM0Jra0lsRTtFMkJqa0lNOztJQUVFLDRCQUFvQztFM0Jta0k1QztFMkJqa0lNOztJQUVFLDhCQUF3QztFM0Jta0loRDtFMkJqa0lNOztJQUVFLCtCQUEwQztFM0Jta0lsRDtFMkJqa0lNOztJQUVFLDZCQUFzQztFM0Jta0k5QztFMkJsbElNO0lBQWdDLHdCQUE0QjtFM0JxbElsRTtFMkJwbElNOztJQUVFLDRCQUFvQztFM0JzbEk1QztFMkJwbElNOztJQUVFLDhCQUF3QztFM0JzbEloRDtFMkJwbElNOztJQUVFLCtCQUEwQztFM0JzbElsRDtFMkJwbElNOztJQUVFLDZCQUFzQztFM0JzbEk5QztFMkJybUlNO0lBQWdDLHdCQUE0QjtFM0J3bUlsRTtFMkJ2bUlNOztJQUVFLDRCQUFvQztFM0J5bUk1QztFMkJ2bUlNOztJQUVFLDhCQUF3QztFM0J5bUloRDtFMkJ2bUlNOztJQUVFLCtCQUEwQztFM0J5bUlsRDtFMkJ2bUlNOztJQUVFLDZCQUFzQztFM0J5bUk5QztFMkJqbUlNO0lBQXdCLHVCQUEyQjtFM0JvbUl6RDtFMkJubUlNOztJQUVFLDJCQUErQjtFM0JxbUl2QztFMkJubUlNOztJQUVFLDZCQUFpQztFM0JxbUl6QztFMkJubUlNOztJQUVFLDhCQUFrQztFM0JxbUkxQztFMkJubUlNOztJQUVFLDRCQUFnQztFM0JxbUl4QztFMkJwbklNO0lBQXdCLHdCQUEyQjtFM0J1bkl6RDtFMkJ0bklNOztJQUVFLDRCQUErQjtFM0J3bkl2QztFMkJ0bklNOztJQUVFLDhCQUFpQztFM0J3bkl6QztFMkJ0bklNOztJQUVFLCtCQUFrQztFM0J3bkkxQztFMkJ0bklNOztJQUVFLDZCQUFnQztFM0J3bkl4QztFMkJ2b0lNO0lBQXdCLHdCQUEyQjtFM0Iwb0l6RDtFMkJ6b0lNOztJQUVFLDRCQUErQjtFM0Iyb0l2QztFMkJ6b0lNOztJQUVFLDhCQUFpQztFM0Iyb0l6QztFMkJ6b0lNOztJQUVFLCtCQUFrQztFM0Iyb0kxQztFMkJ6b0lNOztJQUVFLDZCQUFnQztFM0Iyb0l4QztFMkIxcElNO0lBQXdCLHdCQUEyQjtFM0I2cEl6RDtFMkI1cElNOztJQUVFLDRCQUErQjtFM0I4cEl2QztFMkI1cElNOztJQUVFLDhCQUFpQztFM0I4cEl6QztFMkI1cElNOztJQUVFLCtCQUFrQztFM0I4cEkxQztFMkI1cElNOztJQUVFLDZCQUFnQztFM0I4cEl4QztFMkI3cUlNO0lBQXdCLHdCQUEyQjtFM0Jnckl6RDtFMkIvcUlNOztJQUVFLDRCQUErQjtFM0Jpckl2QztFMkIvcUlNOztJQUVFLDhCQUFpQztFM0Jpckl6QztFMkIvcUlNOztJQUVFLCtCQUFrQztFM0JpckkxQztFMkIvcUlNOztJQUVFLDZCQUFnQztFM0Jpckl4QztFMkIzcUlFO0lBQW1CLHVCQUF1QjtFM0I4cUk1QztFMkI3cUlFOztJQUVFLDJCQUEyQjtFM0IrcUkvQjtFMkI3cUlFOztJQUVFLDZCQUE2QjtFM0IrcUlqQztFMkI3cUlFOztJQUVFLDhCQUE4QjtFM0IrcUlsQztFMkI3cUlFOztJQUVFLDRCQUE0QjtFM0IrcUloQztBQUNGOztBNEJqdklBO0VBRUksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBRVYsb0JBQW9CO0VBQ3BCLFdBQVc7RUFFWCxrQ0FBa0M7QTVCaXZJdEM7O0E2QjN2SUE7RUFBa0IsNEdBQThDO0E3Qit2SWhFOztBNkIzdklBO0VBQWlCLDhCQUE4QjtBN0IrdkkvQzs7QTZCOXZJQTtFQUFpQiw4QkFBOEI7QTdCa3dJL0M7O0E2Qmp3SUE7RUFBaUIsOEJBQThCO0E3QnF3SS9DOztBNkJwd0lBO0VDVEUsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixtQkFBbUI7QTlCaXhJckI7O0E2Qmx3SUk7RUFBd0IsMkJBQTJCO0E3QnN3SXZEOztBNkJyd0lJO0VBQXdCLDRCQUE0QjtBN0J5d0l4RDs7QTZCeHdJSTtFQUF3Qiw2QkFBNkI7QTdCNHdJekQ7O0FTdnVJSTtFb0J2Q0E7SUFBd0IsMkJBQTJCO0U3Qm14SXJEO0U2Qmx4SUU7SUFBd0IsNEJBQTRCO0U3QnF4SXREO0U2QnB4SUU7SUFBd0IsNkJBQTZCO0U3QnV4SXZEO0FBQ0Y7O0FTbnZJSTtFb0J2Q0E7SUFBd0IsMkJBQTJCO0U3Qit4SXJEO0U2Qjl4SUU7SUFBd0IsNEJBQTRCO0U3Qml5SXREO0U2Qmh5SUU7SUFBd0IsNkJBQTZCO0U3Qm15SXZEO0FBQ0Y7O0FTL3ZJSTtFb0J2Q0E7SUFBd0IsMkJBQTJCO0U3QjJ5SXJEO0U2QjF5SUU7SUFBd0IsNEJBQTRCO0U3QjZ5SXREO0U2QjV5SUU7SUFBd0IsNkJBQTZCO0U3Qit5SXZEO0FBQ0Y7O0FTM3dJSTtFb0J2Q0E7SUFBd0IsMkJBQTJCO0U3QnV6SXJEO0U2QnR6SUU7SUFBd0IsNEJBQTRCO0U3Qnl6SXREO0U2Qnh6SUU7SUFBd0IsNkJBQTZCO0U3QjJ6SXZEO0FBQ0Y7O0E2QnR6SUE7RUFBbUIsb0NBQW9DO0E3QjB6SXZEOztBNkJ6eklBO0VBQW1CLG9DQUFvQztBN0I2ekl2RDs7QTZCNXpJQTtFQUFtQixxQ0FBcUM7QTdCZzBJeEQ7O0E2QjV6SUE7RUFBdUIsMkJBQTBDO0E3QmcwSWpFOztBNkIveklBO0VBQXVCLCtCQUE0QztBN0JtMEluRTs7QTZCbDBJQTtFQUF1QiwyQkFBMkM7QTdCczBJbEU7O0E2QnIwSUE7RUFBdUIsMkJBQXlDO0E3QnkwSWhFOztBNkJ4MElBO0VBQXVCLDhCQUEyQztBN0I0MElsRTs7QTZCMzBJQTtFQUF1Qiw2QkFBNkI7QTdCKzBJcEQ7O0E2QjMwSUE7RUFBYyxzQkFBd0I7QTdCKzBJdEM7O0ErQnQzSUU7RUFDRSx5QkFBd0I7QS9CeTNJNUI7O0FNLzJJRTtFeUJMTSx5QkFBMEU7QS9CdzNJbEY7O0ErQjkzSUU7RUFDRSx5QkFBd0I7QS9CaTRJNUI7O0FNdjNJRTtFeUJMTSx5QkFBMEU7QS9CZzRJbEY7O0ErQnQ0SUU7RUFDRSx5QkFBd0I7QS9CeTRJNUI7O0FNLzNJRTtFeUJMTSx5QkFBMEU7QS9CdzRJbEY7O0ErQjk0SUU7RUFDRSx5QkFBd0I7QS9CaTVJNUI7O0FNdjRJRTtFeUJMTSx5QkFBMEU7QS9CZzVJbEY7O0ErQnQ1SUU7RUFDRSx5QkFBd0I7QS9CeTVJNUI7O0FNLzRJRTtFeUJMTSx5QkFBMEU7QS9CdzVJbEY7O0ErQjk1SUU7RUFDRSx5QkFBd0I7QS9CaTZJNUI7O0FNdjVJRTtFeUJMTSx5QkFBMEU7QS9CZzZJbEY7O0ErQnQ2SUU7RUFDRSx5QkFBd0I7QS9CeTZJNUI7O0FNLzVJRTtFeUJMTSx5QkFBMEU7QS9CdzZJbEY7O0ErQjk2SUU7RUFDRSx5QkFBd0I7QS9CaTdJNUI7O0FNdjZJRTtFeUJMTSx5QkFBMEU7QS9CZzdJbEY7O0E2Qno0SUE7RUFBYSx5QkFBNkI7QTdCNjRJMUM7O0E2QjU0SUE7RUFBYyx5QkFBNkI7QTdCZzVJM0M7O0E2Qjk0SUE7RUFBaUIsb0NBQWtDO0E3Qms1SW5EOztBNkJqNUlBO0VBQWlCLDBDQUFrQztBN0JxNUluRDs7QTZCajVJQTtFR3ZERSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsU0FBUztBaEM0OElYOztBNkJyNUlBO0VBQXdCLGdDQUFnQztBN0J5NUl4RDs7QTZCdjVJQTtFQUNFLGlDQUFpQztFQUNqQyxnQ0FBZ0M7QTdCMDVJbEM7O0E2QnI1SUE7RUFBYyx5QkFBeUI7QTdCeTVJdkM7O0FpQzE5SUE7RUFDRSw4QkFBOEI7QWpDNjlJaEM7O0FpQzE5SUE7RUFDRSw2QkFBNkI7QWpDNjlJL0I7O0FrQ2wrSUE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLDJDQ2lIOEQ7RURqSDlELG1DQ2lIOEQ7RURoSDlELHlCOUJ5WGtDO0VDcFE5QixlQXRDWTtFNkI1RWhCLGdCOUJrUitCO0U4QmpSL0IsZ0I5QnNSK0I7RThCclIvQixjOUJEZ0I7RThCRWhCLHNCOUJUYTtFOEJVYiw0QkFBNEI7RUFDNUIseUI5QlBnQjtFZ0NPZCxzQmhDNk5nQztFaUMvTjlCLGdGakN1ZTRGO0VpQ3ZlNUYsd0VqQ3VlNEY7QUppZ0lsRzs7QXFDcCtJTTtFSGROO0lHZVEsd0JBQWdCO0lBQWhCLGdCQUFnQjtFckN3K0l0QjtBQUNGOztBa0N4L0lBO0VBc0JJLDZCQUE2QjtFQUM3QixTQUFTO0FsQ3MrSWI7O0FrQzcvSUE7RUE0Qkksa0JBQWtCO0VBQ2xCLDBCOUJyQmM7QUowL0lsQjs7QXNDMy9JRTtFQUNFLGNsQ0FjO0VrQ0NkLHNCbENSVztFa0NTWCxxQmxDcWRzRTtFa0NwZHRFLFVBQVU7RUFLUixnQnBDUXVCO0FGay9JN0I7O0FrQzFnSkE7RUFxQ0ksYzlCOUJjO0U4QmdDZCxVQUFVO0FsQ3crSWQ7O0FrQy9nSkE7RUFxQ0ksYzlCOUJjO0U4QmdDZCxVQUFVO0FsQ3crSWQ7O0FrQy9nSkE7RUFxQ0ksYzlCOUJjO0U4QmdDZCxVQUFVO0FsQ3crSWQ7O0FrQy9nSkE7RUFxQ0ksYzlCOUJjO0U4QmdDZCxVQUFVO0FsQ3crSWQ7O0FrQy9nSkE7RUFxQ0ksYzlCOUJjO0U4QmdDZCxVQUFVO0FsQ3crSWQ7O0FrQy9nSkE7RUFpREkseUI5QjlDYztFOEJnRGQsVUFBVTtBbENpK0lkOztBa0M3OUlBOzs7O0VBS0ksd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0I7QWxDKzlJcEI7O0FrQzM5SUE7RUFPSSxjOUIvRGM7RThCZ0VkLHNCOUJ2RVc7QUoraEpmOztBa0NuOUlBOztFQUVFLGNBQWM7RUFDZCxXQUFXO0FsQ3M5SWI7O0FrQzU4SUE7RUFDRSx5Q0N5QjhEO0VEekI5RCxpQ0N5QjhEO0VEeEI5RCw0Q0N3QjhEO0VEeEI5RCxvQ0N3QjhEO0VEdkI5RCxnQkFBZ0I7RTdCM0JkLGtCQUFXO0U2QjZCYixnQjlCK0wrQjtBSmd4SWpDOztBa0M1OElBO0VBQ0UsdUNDaUI4RDtFRGpCOUQsK0JDaUI4RDtFRGhCOUQsMENDZ0I4RDtFRGhCOUQsa0NDZ0I4RDtFOUJLMUQsa0JBdENZO0U2Qm1CaEIsZ0I5QjZIK0I7QUprMUlqQzs7QWtDNThJQTtFQUNFLHdDQ1U4RDtFRFY5RCxnQ0NVOEQ7RURUOUQsMkNDUzhEO0VEVDlELG1DQ1M4RDtFOUJLMUQsbUJBdENZO0U2QjBCaEIsZ0I5QnVIK0I7QUp3MUlqQzs7QWtDdDhJQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUJBQTJCO0VBQzNCLGdCQUFnQjtFN0JEWixlQXRDWTtFNkJ5Q2hCLGdCOUJrSytCO0U4QmpLL0IsYzlCbkhnQjtFOEJvSGhCLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsbUJBQW1DO0FsQ3k4SXJDOztBa0NuOUlBO0VBY0ksZ0JBQWdCO0VBQ2hCLGVBQWU7QWxDeThJbkI7O0FrQzc3SUE7RUFDRSwwQ0M5QjhEO0VEOEI5RCxrQ0M5QjhEO0VEK0I5RCx1QjlCb1BpQztFQzlRN0IsbUJBdENZO0U2QmtFaEIsZ0I5QitFK0I7RWdDeE43QixxQmhDK04rQjtBSjIySW5DOztBa0M3N0lBO0VBQ0Usd0NDdEM4RDtFRHNDOUQsZ0NDdEM4RDtFRHVDOUQsb0I5QmlQZ0M7RUNuUjVCLGtCQXRDWTtFNkIwRWhCLGdCOUJzRStCO0VnQ3ZON0IscUJoQzhOK0I7QUpvM0luQzs7QWtDNTdJQTtFQUdJLFlBQVk7QWxDNjdJaEI7O0FrQ3o3SUE7RUFDRSxZQUFZO0FsQzQ3SWQ7O0FrQ3A3SUE7RUFDRSxtQjlCMFUwQztBSjZtSTVDOztBa0NwN0lBO0VBQ0UsY0FBYztFQUNkLG1COUIyVDRDO0FKNG5JOUM7O0FrQy82SUE7RUFDRSxvQkFBYTtFQUFiLHFCQUFhO0VBQWIsYUFBYTtFQUNiLHVCQUFlO1VBQWYsZUFBZTtFQUNmLGtCQUEwQztFQUMxQyxpQkFBeUM7QWxDazdJM0M7O0FrQ3Q3SUE7O0VBUUksa0JBQTBDO0VBQzFDLGlCQUF5QztBbENtN0k3Qzs7QWtDMTZJQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QscUI5QmdTNkM7QUo2b0kvQzs7QWtDMTZJQTtFQUNFLGtCQUFrQjtFQUNsQixrQjlCNFIyQztFOEIzUjNDLHFCOUIwUjZDO0FKbXBJL0M7O0FrQ2g3SUE7O0VBUUksY2pDL040QjtBRDRvSmhDOztBa0N6NklBO0VBQ0UsZ0JBQWdCO0FsQzQ2SWxCOztBa0N6NklBO0VBQ0UsMkJBQW9CO0VBQXBCLDRCQUFvQjtFQUFwQixvQkFBb0I7RUFDcEIseUJBQW1CO0VBQW5CLDJCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLHFCOUI2UTRDO0FKK3BJOUM7O0FrQ2g3SUE7RUFRSSxnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLHVCOUJ3UTRDO0U4QnZRNUMsY0FBYztBbEM0NklsQjs7QXNDem5KRTtFQUNFLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJsQzBjMEM7RUNqYjFDLGNBQVc7RWlDdkJYLGNwQzdCVztBRnlwSmY7O0FzQ3puSkU7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QmxDb3lCcUM7RWtDbnlCckMsaUJBQWlCO0VqQ21FZixtQkF0Q1k7RWlDM0JkLGdCbENzTzZCO0VrQ3JPN0IsV2xDeERXO0VrQ3lEWCx3Q3BDNUNXO0VrQ0ZYLHNCaEM2TmdDO0FKODhJcEM7O0FzQ3huSkk7O0VBRUUsU0FBaUM7QXRDMm5KdkM7O0FzQ2xxSkk7Ozs7RUE4Q0UsY0FBYztBdEMybkpwQjs7QXNDenFKSTtFQW9ERSxxQnBDaEVTO0VvQ21FUCw0Q0htQ3dEO0VHbkN4RCxvQ0htQ3dEO0VHbEN4RCxpUkgzQjBFO0VHNEIxRSw0QkFBNEI7RUFDNUIsbUVBQTZEO0VBQTdELDJEQUE2RDtFQUM3RCxnRkgrQndEO0VHL0J4RCxnRUgrQndEO0FuQ3dsSmhFOztBc0NsckpJO0VBK0RJLHFCcEMzRU87RW9DNEVQLDJDcEM1RU87QUZtc0pmOztBc0N2ckpJO0VBeUVJLDRDSGlCd0Q7RUdqQnhELG9DSGlCd0Q7RUdoQnhELGtHSGdCd0Q7RUdoQnhELGtGSGdCd0Q7QW5Da21KaEU7O0FzQzVySkk7RUFpRkUscUJwQzdGUztFb0NnR1AsK0NITXdEO0VHTnhELHVDSE13RDtFR0x4RCwrakJBQThKO0VBQTlKLHVqQkFBOEo7QXRDNm1KdEs7O0FzQ2xzSkk7RUF5RkkscUJwQ3JHTztFb0NzR1AsMkNwQ3RHTztBRm10SmY7O0FzQ3ZzSkk7RUFrR0ksY3BDOUdPO0FGdXRKZjs7QXNDM3NKSTs7O0VBdUdJLGNBQWM7QXRDMG1KdEI7O0FzQ2p0Skk7RUErR0ksY3BDM0hPO0FGaXVKZjs7QXNDcnRKSTtFQWtITSxxQnBDOUhLO0FGcXVKZjs7QXNDenRKSTtFQXdITSxxQkFBa0M7RUNsSnhDLHlCRG1KK0M7QXRDcW1KbkQ7O0FzQzl0Skk7RUErSE0sMkNwQzNJSztBRjh1SmY7O0FzQ2x1Skk7RUFtSU0scUJwQy9JSztBRmt2SmY7O0FzQ3R1Skk7RUE2SUkscUJwQ3pKTztBRnN2SmY7O0FzQzF1Skk7RUFrSk0scUJwQzlKSztFb0MrSkwsMkNwQy9KSztBRjJ2SmY7O0FzQ251SkU7RUFDRSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CbEMwYzBDO0VDamIxQyxjQUFXO0VpQ3ZCWCxjcEM5QlM7QUZvd0piOztBc0NudUpFO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJsQ295QnFDO0VrQ255QnJDLGlCQUFpQjtFakNtRWYsbUJBdENZO0VpQzNCZCxnQmxDc082QjtFa0NyTzdCLFdsQ3hEVztFa0N5RFgsd0NwQzdDUztFa0NEVCxzQmhDNk5nQztBSndqSnBDOztBc0NsdUpJOztFQUVFLFNBQWlDO0F0Q3F1SnZDOztBc0M1d0pJOzs7O0VBOENFLGNBQWM7QXRDcXVKcEI7O0FzQ254Skk7RUFvREUscUJwQ2pFTztFb0NvRUwsNENIbUN3RDtFR25DeEQsb0NIbUN3RDtFR2xDeEQsNFVIM0IwRTtFRzRCMUUsNEJBQTRCO0VBQzVCLG1FQUE2RDtFQUE3RCwyREFBNkQ7RUFDN0QsZ0ZIK0J3RDtFRy9CeEQsZ0VIK0J3RDtBbkNrc0poRTs7QXNDNXhKSTtFQStESSxxQnBDNUVLO0VvQzZFTCwyQ3BDN0VLO0FGOHlKYjs7QXNDanlKSTtFQXlFSSw0Q0hpQndEO0VHakJ4RCxvQ0hpQndEO0VHaEJ4RCxrR0hnQndEO0VHaEJ4RCxrRkhnQndEO0FuQzRzSmhFOztBc0N0eUpJO0VBaUZFLHFCcEM5Rk87RW9DaUdMLCtDSE13RDtFR054RCx1Q0hNd0Q7RUdMeEQsMG5CQUE4SjtFQUE5SixrbkJBQThKO0F0Q3V0SnRLOztBc0M1eUpJO0VBeUZJLHFCcEN0R0s7RW9DdUdMLDJDcEN2R0s7QUY4ekpiOztBc0NqekpJO0VBa0dJLGNwQy9HSztBRmswSmI7O0FzQ3J6Skk7OztFQXVHSSxjQUFj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SSwwQkltQ2dDO0VKbENoQyw2QklrQ2dDO0F4QzA3SnBDOztBd0M5NkpBOztFQUVFLG9CQUFhO0VBQWIscUJBQWE7RUFBYixhQUFhO0F4Q2k3SmY7O0F3Q243SkE7O0VBUUksa0JBQWtCO0VBQ2xCLFVBQVU7QXhDZzdKZDs7QXdDejdKQTs7RUFZTSxVQUFVO0F4Q2s3SmhCOztBd0M5N0pBOzs7Ozs7OztFQW9CSSxpQnBDdUk2QjtBSjh5SmpDOztBd0NqN0pBO0VBQXVCLGtCcENtSVU7QUprekpqQzs7QXdDcDdKQTtFQUFzQixpQnBDa0lXO0FKc3pKakM7O0F3Q2g3SkE7RUFDRSxvQkFBYTtFQUFiLHFCQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtFQUFuQiwyQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLHlCcEM4UWtDO0VvQzdRbEMsZ0JBQWdCO0VuQ1NaLGVBdENZO0VtQytCaEIsZ0JwQ3VLK0I7RW9DdEsvQixnQnBDMksrQjtFb0MxSy9CLGNwQzVHZ0I7RW9DNkdoQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHlCcENwSGdCO0VvQ3FIaEIseUJwQ25IZ0I7RWdDT2Qsc0JoQzZOZ0M7QUptMEpwQzs7QXdDaDhKQTs7RUFrQkksYUFBYTtBeENtN0pqQjs7QXdDejZKQTs7RUFFRSx3Q0x0QjhEO0VLc0I5RCxnQ0x0QjhEO0FuQ2s4SmhFOztBd0N6NkpBOzs7Ozs7RUFNRSxvQnBDeVBnQztFQ25SNUIsa0JBdENZO0VtQ2tFaEIsZ0JwQzhFK0I7RWdDdk43QixxQmhDOE4rQjtBSncxSm5DOztBd0N6NkpBOztFQUVFLDBDTHZDOEQ7RUt1QzlELGtDTHZDOEQ7QW5DbTlKaEU7O0F3Q3o2SkE7Ozs7OztFQU1FLHVCcENtT2lDO0VDOVE3QixtQkF0Q1k7RW1DbUZoQixnQnBDOEQrQjtFZ0N4TjdCLHFCaEMrTitCO0FKdzJKbkM7O0F3Q3o2SkE7O0VBRUUsc0JBQTBFO0F4QzQ2SjVFOztBd0NqNkpBOzs7Ozs7OztFSjNKSSwwQkltSzRCO0VKbEs1Qiw2QklrSzRCO0F4Q3E2SmhDOztBd0NsNkpBOzs7Ozs7RUp4SkkseUJJOEoyQjtFSjdKM0IsNEJJNkoyQjtBeENzNkovQjs7QXlDOW1LQTtFQUVFLGdCQUFnQjtBekNnbktsQjs7QXlDbG5LQTtFQUtJLGtCQUFrQjtFQUNsQixnQkFBZ0I7QXpDaW5LcEI7O0F5QzVtS0E7RUFDRSxlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxhckMycEJzQztFcUMxcEJ0QyxhQUFhO0VBQ2IsV0FBVztFQUNYLFlBQVk7RUFDWixnQkFBZ0I7RUFHaEIsVUFBVTtBekM2bUtaOztBeUN0bUtBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxjckMrNEJ1QztFcUM3NEJ2QyxvQkFBb0I7QXpDd21LdEI7O0F5Q3JtS0U7RUozQkksbURqQ284Qm9EO0VpQ3A4QnBELDJDakNvOEJvRDtFaUNwOEJwRCxtQ2pDbzhCb0Q7RWlDcDhCcEQsb0VqQ284Qm9EO0VxQ3Y2QnRELHNDckNxNkJtRDtVcUNyNkJuRCw4QnJDcTZCbUQ7QUptc0l2RDs7QXFDam9LTTtFSXVCSjtJSnRCTSx3QkFBZ0I7SUFBaEIsZ0JBQWdCO0VyQ3FvS3RCO0FBQ0Y7O0F5QzVtS0U7RUFDRSx1QnJDbTZCb0M7VXFDbjZCcEMsZXJDbTZCb0M7QUo0c0l4Qzs7QXlDM21LRTtFQUNFLDhCckNnNkIyQztVcUNoNkIzQyxzQnJDZzZCMkM7QUo4c0kvQzs7QXlDMW1LQTtFQUNFLG9CQUFhO0VBQWIscUJBQWE7RUFBYixhQUFhO0VBQ2IscUNObUY4RDtFTW5GOUQsNkJObUY4RDtBbkMwaEtoRTs7QXlDL21LQTtFQUtJLHNDTmdGNEQ7RU1oRjVELDhCTmdGNEQ7RU0vRTVELGdCQUFnQjtBekM4bUtwQjs7QXlDcG5LQTs7RUFXSSxzQkFBYztVQUFkLGNBQWM7QXpDOG1LbEI7O0F5Q3puS0E7RUFlSSxnQkFBZ0I7QXpDOG1LcEI7O0F5QzFtS0E7RUFDRSxvQkFBYTtFQUFiLHFCQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtFQUFuQiwyQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLHFDTitEOEQ7RU0vRDlELDZCTitEOEQ7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LHFCQUFxQjtFQUNyQixxQnRDMDVCc0M7RUN6MUJwQyxjQUFXO0VxQy9EYixnQnRDdVIrQjtFc0N0Ui9CLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHdCQUF3QjtFTkt0QixzQmhDNk5nQztFaUMvTjlCLDZJakNnYjZJO0VpQ2hiN0kscUlqQ2diNkk7QUprNUpuSjs7QXFDOXpLTTtFS2ZOO0lMZ0JRLHdCQUFnQjtJQUFoQixnQkFBZ0I7RXJDazBLdEI7QUFDRjs7QU14MEtFO0VvQ0dJLHFCQUFxQjtBMUN5MEszQjs7QTBDdjFLQTtFQW9CSSxhQUFhO0ExQ3UwS2pCOztBMENsMEtBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7QTFDcTBLWDs7QTBDOXpLQTtFQUNFLG9CdEMrM0JzQztFc0M5M0J0QyxtQnRDODNCc0M7RWdDcjVCcEMsb0JoQ3c1QnFDO0FKaThJekM7O0EwQ3p6S0U7RUNqREEsV3ZDTWE7RXVDTGIseUIxQ0dzQjtBRDIyS3hCOztBTWgyS0U7RXFDVkksV3ZDQ1M7RXVDQVQseUJBQWtDO0EzQzgyS3hDOztBMkNqM0tVO0VBUUosVUFBVTtFQUNWLCtDMUNSa0I7QURxM0t4Qjs7QTBDeDBLRTtFQ2pEQSxXdkNNYTtFdUNMYix5QnZDV2dCO0FKazNLbEI7O0FNLzJLRTtFcUNWSSxXdkNDUztFdUNBVCx5QkFBa0M7QTNDNjNLeEM7O0EyQ2g0S1U7RUFRSixVQUFVO0VBQ1YsaUR2Q0FZO0FKNDNLbEI7O0EwQ3YxS0U7RUNqREEsV3ZDTWE7RXVDTGIseUJ6Q2tCYTtBRjAzS2Y7O0FNOTNLRTtFcUNWSSxXdkNDUztFdUNBVCx5QkFBa0M7QTNDNDRLeEM7O0EyQy80S1U7RUFRSixVQUFVO0VBQ1YsK0N6Q09TO0FGbzRLZjs7QTBDdDJLRTtFQ2pEQSxXdkNNYTtFdUNMYix5QnZDMENlO0FKaTNLakI7O0FNNzRLRTtFcUNWSSxXdkNDUztFdUNBVCx5QkFBa0M7QTNDMjVLeEM7O0EyQzk1S1U7RUFRSixVQUFVO0VBQ1YsZ0R2QytCVztBSjIzS2pCOztBMENyM0tFO0VDakRBLGN2Q2VnQjtFdUNkaEIseUJ2Q3VDZTtBSm00S2pCOztBTTU1S0U7RXFDVkksY3ZDVVk7RXVDVFoseUJBQWtDO0EzQzA2S3hDOztBMkM3NktVO0VBUUosVUFBVTtFQUNWLCtDdkM0Qlc7QUo2NEtqQjs7QTBDcDRLRTtFQ2pEQSxXdkNNYTtFdUNMYix5QnpDaUJXO0FGdzZLYjs7QU0zNktFO0VxQ1ZJLFd2Q0NTO0V1Q0FULHlCQUFrQztBM0N5N0t4Qzs7QTJDNTdLVTtFQVFKLFVBQVU7RUFDViwrQ3pDTU87QUZrN0tiOztBMENuNUtFO0VDakRBLGN2Q2VnQjtFdUNkaEIseUJ2Q01nQjtBSms4S2xCOztBTTE3S0U7RXFDVkksY3ZDVVk7RXVDVFoseUJBQWtDO0EzQ3c4S3hDOztBMkMzOEtVO0VBUUosVUFBVTtFQUNWLGlEdkNMWTtBSjQ4S2xCOztBMENsNktFO0VDakRBLFd2Q01hO0V1Q0xiLHlCdkNhZ0I7QUowOEtsQjs7QU16OEtFO0VxQ1ZJLFd2Q0NTO0V1Q0FULHlCQUFrQztBM0N1OUt4Qzs7QTJDMTlLVTtFQVFKLFVBQVU7RUFDViw4Q3ZDRVk7QUpvOUtsQjs7QTRDMTlLQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsY0FBYztFQUNkLGtCQUErQztFQUMvQyxvQkFBcUU7RUFDckUsaUNBQW1CO1VBQW5CLG1CQUFtQjtBNUM2OUtyQjs7QTRDMTlLQTtFQUNFLDJCQUFvQjtFQUFwQiw0QkFBb0I7RUFBcEIsb0JBQW9CO0VBQ3BCLGtCeEN3ZjBDO0FKcStKNUM7O0E0QzE5S0E7RUFDRSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLFdBQVc7RUFDWCxXeENvZjBDO0V3Q25mMUMsZUFBa0Y7RUFDbEYsVUFBVTtBNUM2OUtaOztBNENuK0tBO0VBU0ksYzNDdkJ1QjtFMkN3QnZCLHFCM0M1Qm9CO0VzQ0NwQix5QnRDSWdDO0FEcy9LcEM7O0E0Q3orS0E7RUFvQk0sZ0IxQ1gwQztBRm8rS2hEOztBNEM3K0tBO0VBeUJJLHFCM0N6QzRCO0FEaWdMaEM7O0E0Q2ovS0E7RUE2QkksV3hDN0NXO0V3QzhDWCx5QjNDM0NnQztFMkM0Q2hDLHFCM0MvQzRCO0FEdWdMaEM7O0E0Q3YvS0E7RUF1Q00sY3hDakRZO0FKcWdMbEI7O0E0QzMvS0E7RUEwQ1EseUJ4Q3hEVTtBSjZnTGxCOztBNEMzOEtBO0VBQ0Usa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUVoQixtQkFBbUI7QTVDNjhLckI7O0E0Q2o5S0E7RUFTSSxrQkFBa0I7RUFDbEIsWUFBK0U7RUFDL0UsYUFBK0Q7RUFDL0QsY0FBYztFQUNkLFd4Q3Vid0M7RXdDdGJ4QyxZeENzYndDO0V3Q3JieEMsb0JBQW9CO0VBQ3BCLFdBQVc7RUFDWCxzQnhDckZXO0V3Q3NGWCx5QnhDK0k2QjtBSjZ6S2pDOztBNEM5OUtBO0VBd0JJLGtCQUFrQjtFQUNsQixZQUErRTtFQUMvRSxhQUErRDtFQUMvRCxjQUFjO0VBQ2QsV3hDd2F3QztFd0N2YXhDLFl4Q3Vhd0M7RXdDdGF4QyxXQUFXO0VBQ1gsbUNBQWdFO0E1QzA4S3BFOztBNENqOEtBO0VSakdJLGtCbENvQnlDO0FGa2hMN0M7O0E0Q3I4S0E7RUFPTSxxT1Q3RDRFO0FuQysvS2xGOztBNEN6OEtBO0VBYU0scUIzQzNIa0I7RXNDQ3BCLHlCdENEb0I7QUQ0akx4Qjs7QTRDOThLQTtFQWtCTSxrTFR4RTRFO0FuQ3dnTGxGOztBNENsOUtBO0VMN0dJLHdDdENEb0I7QURva0x4Qjs7QTRDdDlLQTtFTDdHSSx3Q3RDRG9CO0FEd2tMeEI7O0E0Q3Q3S0E7RUFHSSxrQnhDeVorQztBSjhoS25EOztBNEMxN0tBO0VBUU0saUxUbEc0RTtBbkN3aExsRjs7QTRDOTdLQTtFTGpKSSx3Q3RDRG9CO0FEb2xMeEI7O0E0QzE2S0E7RUFDRSxvQkFBMkQ7QTVDNjZLN0Q7O0E0Qzk2S0E7RUFLTSxhQUFxRDtFQUNyRCxXMUNsSW9CO0UwQ21JcEIsbUJBQW1CO0VBRW5CLG1CMUNwSXNDO0FGZ2pMNUM7O0E0Q3I3S0E7RUFhTSxnQ1RsRTBEO0VTa0UxRCx3QlRsRTBEO0VTbUUxRCxpQ1RuRTBEO0VTbUUxRCx5QlRuRTBEO0VTb0UxRCwrQjFDekl5QztFMEN5SXpDLHVCMUN6SXlDO0UwQzBJekMsZ0MxQzFJeUM7RTBDMEl6Qyx3QjFDMUl5QztFMEMySXpDLHlCM0N6TDBCO0UyQzJMMUIsbUIxQzlJc0M7RW1DcEN0Qyx5SmpDeWYrSDtFaUN6Zi9ILGlKakN5ZitIO0VpQ3pmL0gseUlqQ3lmK0g7RWlDemYvSCw4S2pDeWYrSDtBSnFtS3JJOztBcUMxbExNO0VPMkpOO0lQMUpRLHdCQUFnQjtJQUFoQixnQkFBZ0I7RXJDOGxMdEI7QUFDRjs7QTRDcjhLQTtFQTBCTSxzQnhDbE1TO0V3Q21NVCxtQ0FBNEU7VUFBNUUsMkJBQTRFO0E1Qys2S2xGOztBNEMxOEtBO0VMektJLHdDdENEb0I7QUR3bkx4Qjs7QTRDajZLQTtFQUNFLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsMkNUckc4RDtFU3FHOUQsbUNUckc4RDtFU3NHOUQsMEN4Q21La0M7RUNwUTlCLGVBdENZO0V1QzBJaEIsZ0J4QzREK0I7RXdDM0QvQixnQnhDZ0UrQjtFd0MvRC9CLGN4Q3ZOZ0I7RXdDd05oQixzQkFBc0I7RUFDdEIsdU94Q2tXK0k7RXdDalcvSSx5QnhDN05nQjtFZ0NPZCxzQmhDNk5nQztFd0NKbEMsd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0I7QTVDazZLbEI7O0E0Q2o3S0E7RUFrQkkscUJ4Q3VQc0U7RXdDdFB0RSxVQUFVO0VBS1IsZ0IxQ3JOK0I7QUZvbkxyQzs7QTRDdjdLQTtFQWlDTSxjeEMvT1k7RXdDZ1BaLHNCeEN2UFM7QUppcExmOztBNEM1N0tBO0VBd0NJLFlBQVk7RUFDWixzQnhDOEhnQztFd0M3SGhDLHNCQUFzQjtBNUN3NUsxQjs7QTRDbDhLQTtFQThDSSxjeEM3UGM7RXdDOFBkLHlCeENsUWM7QUowcExsQjs7QTRDdjhLQTtFQW9ESSxhQUFhO0E1Q3U1S2pCOztBNEMzOEtBO0VBeURJLGtCQUFrQjtFQUNsQiwwQnhDeFFjO0FKOHBMbEI7O0E0Q2w1S0E7RUFDRSwwQ1RqSzhEO0VTaUs5RCxrQ1RqSzhEO0VTa0s5RCxvQnhDZ0hrQztFd0MvR2xDLHVCeEMrR2tDO0V3QzlHbEMsb0J4QytHaUM7RUM5UTdCLG1CQXRDWTtBTDJsTGxCOztBNENsNUtBO0VBQ0Usd0NUeks4RDtFU3lLOUQsZ0NUeks4RDtFUzBLOUQsbUJ4QzZHaUM7RXdDNUdqQyxzQnhDNEdpQztFd0MzR2pDLGtCeEM0R2dDO0VDblI1QixrQkF0Q1k7QUxtbUxsQjs7QTRDNzRLQTtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsV0FBVztFQUNYLDJDVHpMOEQ7RVN5TDlELG1DVHpMOEQ7RVMwTDlELGdCQUFnQjtBNUNnNUtsQjs7QTRDNzRLQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLDJDVGpNOEQ7RVNpTTlELG1DVGpNOEQ7RVNrTTlELFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsVUFBVTtBNUNnNUtaOztBNEN2NUtBO0VBVUkscUJ4Q29Lc0U7RXdDbkt0RSxnQjFDcFN5QjtBRnFyTDdCOztBNEM1NUtBOztFQWlCSSx5QnhDL1RjO0FKK3NMbEI7O0E0Q2o2S0E7RUFzQk0saUJ4QzJUUTtBSm9sS2Q7O0E0Q3I2S0E7RUEyQkksMEJBQTBCO0E1Qzg0SzlCOztBNEMxNEtBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLFVBQVU7RUFDViwyQ1RsTzhEO0VTa085RCxtQ1RsTzhEO0VTbU85RCx5QnhDc0NrQztFd0NyQ2xDLGdCQUFnQjtFQUVoQixnQnhDakUrQjtFd0NrRS9CLGdCeEM3RCtCO0V3QzhEL0IsY3hDcFZnQjtFd0NxVmhCLHNCeEM1VmE7RXdDNlZiLHlCeEN6VmdCO0VnQ09kLHNCaEM2TmdDO0FKa2dMcEM7O0E0QzM1S0E7RUFtQkksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULFVBQVU7RUFDVixjQUFjO0VBQ2QscUNUclA0RDtFU3FQNUQsNkJUclA0RDtFU3NQNUQseUJ4Q21CZ0M7RXdDbEJoQyxnQnhDN0U2QjtFd0M4RTdCLGN4Q3BXYztFd0NxV2QsaUJBQWlCO0VMN1dqQix5Qm5DR2M7RXdDNFdkLG9CQUFvQjtFUm5XcEIsa0NRb1dnRjtBNUM0NEtwRjs7QTRDbDRLQTtFQUNFLFdBQVc7RUFDWCxZVDNRMkI7RVM0UTNCLFVBQVU7RUFDViw2QkFBNkI7RUFDN0Isd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0I7QTVDcTRLbEI7O0E0QzE0S0E7RUFRSSxVQUFVO0E1Q3M0S2Q7O0E0Qzk0S0E7RUFZOEIsZ0MxQzlXRDtBRm92TDdCOztBNENsNUtBO0VBYThCLGdDMUMvV0Q7QUZ3dkw3Qjs7QTRDdDVLQTtFQWM4QixnQzFDaFhEO0FGNHZMN0I7O0E0QzE1S0E7RUFrQkksU0FBUztBNUM0NEtiOztBNEM5NUtBO0VBc0JJLFd4Q21ONkM7RXdDbE43QyxZeENrTjZDO0V3Q2pON0Msb0JBQXlFO0VMbFp6RSx5QnRDRG9CO0UyQ3FacEIsU3hDa04wQztFZ0MxbEIxQyxtQmhDMmxCNkM7RWlDN2xCM0Msb0hqQ3lmK0g7RWlDemYvSCw0R2pDeWYrSDtFd0MzR2pJLHdCQUFnQjtVQUFoQixnQkFBZ0I7QTVDMjRLcEI7O0FxQ3J4TE07RU80V047SVAzV1Esd0JBQWdCO0lBQWhCLGdCQUFnQjtFckN5eEx0QjtBQUNGOztBNEMvNktBO0VMMVhJLHlCbkMybUIyRTtBSmtzSy9FOztBNENuN0tBO0VBc0NJLFd4QzRMb0M7RXdDM0xwQyxjeEM0THFDO0V3QzNMckMsa0JBQWtCO0VBQ2xCLGV4QzJMdUM7RXdDMUx2Qyx5QnhDaGFjO0V3Q2lhZCx5QkFBeUI7RVJ6WnpCLG1CaENvbEJvQztBSnV0S3hDOztBNEM3N0tBO0VBaURJLFd4Q3dMNkM7RXdDdkw3QyxZeEN1TDZDO0VtQ25tQjdDLHlCdENEb0I7RTJDK2FwQixTeEN3TDBDO0VnQzFsQjFDLG1CaEMybEI2QztFaUM3bEIzQyxpSGpDeWYrSDtFaUN6Zi9ILDRHakN5ZitIO0V3Q2pGakkscUJBQWdCO09BQWhCLGdCQUFnQjtBNUMrNEtwQjs7QXFDbnpMTTtFTzRXTjtJUDNXUSxxQkFBZ0I7SUFBaEIsZ0JBQWdCO0VyQ3V6THRCO0FBQ0Y7O0E0Qzc4S0E7RUwxWEkseUJuQzJtQjJFO0FKZ3VLL0U7O0E0Q2o5S0E7RUFnRUksV3hDa0tvQztFd0NqS3BDLGN4Q2tLcUM7RXdDaktyQyxrQkFBa0I7RUFDbEIsZXhDaUt1QztFd0NoS3ZDLHlCeEMxYmM7RXdDMmJkLHlCQUF5QjtFUm5iekIsbUJoQ29sQm9DO0FKcXZLeEM7O0E0QzM5S0E7RUEyRUksV3hDOEo2QztFd0M3SjdDLFl4QzZKNkM7RXdDNUo3QyxhQUFhO0VBQ2IsZTFDamJpQjtFMENrYmpCLGMxQ2xiaUI7RXFDdkJqQix5QnRDRG9CO0UyQzRjcEIsU3hDMkowQztFZ0MxbEIxQyxtQmhDMmxCNkM7RWlDN2xCM0MsZ0hqQ3lmK0g7RWlDemYvSCw0R2pDeWYrSDtFd0NwRGpJLGdCQUFnQjtBNUNtNUtwQjs7QXFDcDFMTTtFTzRXTjtJUDNXUSxvQkFBZ0I7SUFBaEIsZ0JBQWdCO0VyQ3cxTHRCO0FBQ0Y7O0E0QzkrS0E7RUwxWEkseUJuQzJtQjJFO0FKaXdLL0U7O0E0Q2wvS0E7RUE2RkksV3hDcUlvQztFd0NwSXBDLGN4Q3FJcUM7RXdDcElyQyxrQkFBa0I7RUFDbEIsZXhDb0l1QztFd0NuSXZDLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsb0JBQTRDO0E1Q3k1S2hEOztBNEM1L0tBO0VBd0dJLHlCeEM5ZGM7RWdDUWQsbUJoQ29sQm9DO0FKMnhLeEM7O0E0Q2pnTEE7RUE2R0ksa0JBQWtCO0VBQ2xCLHlCeENwZWM7RWdDUWQsbUJoQ29sQm9DO0FKaXlLeEM7O0E0Q3ZnTEE7RUFvSE0seUJ4Q3hlWTtBSiszTGxCOztBNEMzZ0xBO0VBd0hNLGVBQWU7QTVDdTVLckI7O0E0Qy9nTEE7RUE0SE0seUJ4Q2hmWTtBSnU0TGxCOztBNENuaExBO0VBZ0lNLGVBQWU7QTVDdTVLckI7O0E0Q3ZoTEE7RUFvSU0seUJ4Q3hmWTtBSis0TGxCOztBNENsNUtBOzs7RVB6Zk0sb0hqQ3lmK0g7RWlDemYvSCw0R2pDeWYrSDtBSnc1S3JJOztBcUM3NExNO0VPcWZOOzs7SVBwZlEsd0JBQWdCO0lBQWhCLGdCQUFnQjtFckNtNUx0QjtBQUNGOztBNkNuNkxBOztFQUVFLG1CekNxU3VDO0V5Q25TdkMsZ0J6Q3FTK0I7RXlDcFMvQixnQnpDcVMrQjtBSmdvTGpDOztBNkNqNkxBO0V4Q2dITSxpQkF0Q1k7QUwyMUxsQjs7QTZDcDZMQTtFeEMrR00sZUF0Q1k7QUwrMUxsQjs7QTZDdjZMQTtFeEM4R00sa0JBdENZO0FMbTJMbEI7O0E2QzE2TEE7RXhDNkdNLGlCQXRDWTtBTHUyTGxCOztBNkM3NkxBO0V4QzRHTSxrQkF0Q1k7QUwyMkxsQjs7QTZDaDdMQTtFeEMyR00sZUF0Q1k7QUwrMkxsQjs7QTZDbDdMQTtFeEN5R00sa0JBdENZO0V3Q2pFaEIsZ0J6Q3VTK0I7QUo4b0xqQzs7QTZDajdMQTtFeENtR00sZUF0Q1k7RXdDM0RoQixnQnpDMFIrQjtFeUN6Ui9CLGdCekNpUitCO0FKbXFMakM7O0E2Q2w3TEE7RXhDOEZNLGlCQXRDWTtFd0N0RGhCLGdCekNzUitCO0V5Q3JSL0IsZ0J6QzRRK0I7QUp5cUxqQzs7QTZDbjdMQTtFeEN5Rk0saUJBdENZO0V3Q2pEaEIsZ0J6Q2tSK0I7RXlDalIvQixnQnpDdVErQjtBSitxTGpDOztBNkNwN0xBO0V4Q29GTSxpQkF0Q1k7RXdDNUNoQixnQnpDOFErQjtFeUM3US9CLGdCekNrUStCO0FKcXJMakM7O0FHMTVMQTtFMENwQkUsZ0IzQ25EVztFMkNvRFgsbUIzQ3BEVztFMkNxRFgsU0FBUztFQUNULHdDekN6Q2E7QUoyOUxmOztBNkMxNkxBOztFeENNSSxjQUFXO0V3Q0hiLGdCekMwTitCO0FKbXRMakM7O0E2QzE2TEE7O0VBRUUsY3pDa1FnQztFeUNqUWhDLHlCekMwUW1DO0FKbXFMckM7O0E2Q3I2TEE7RUMvRUUsZUFBZTtFQUNmLGdCQUFnQjtBOUN3L0xsQjs7QTZDcjZMQTtFQ3BGRSxlQUFlO0VBQ2YsZ0JBQWdCO0E5QzYvTGxCOztBNkN2NkxBO0VBQ0UscUJBQXFCO0E3QzA2THZCOztBNkMzNkxBO0VBSUksb0J6Q29QK0I7QUp1ckxuQzs7QTZDajZMQTtFeENqQ0ksY0FBVztFd0NtQ2Is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RUFDWCxZQUFZO0VBQ1osc0JBSnVCO0tBSXZCLG1CQUp1QjtFQUt2QixtQ0FBcUM7QWpEcW1NN0M7O0FpRHZsTUk7RUFDSSxVQVZHO0FqRG9tTVg7O0FpRDNsTUk7RUFDSSxVQVRHO0FqRHVtTVg7O0FpRC9sTUk7RUFDSSxVQVJHO0FqRDBtTVg7O0FpRG5tTUk7RUFDSSxVQVBHO0FqRDZtTVg7O0FpRHZtTUk7RUFDSSxVQU5HO0FqRGduTVg7O0FpRDNtTUk7RUFDSSxVQUxHO0FqRG1uTVg7O0FpRC9tTUk7RUFDSSxVQUpHO0FqRHNuTVg7O0FpRG5uTUk7RUFDSSxVQUhHO0FqRHluTVg7O0FpRGhuTUk7RUN2R0EsbUJEd0c4QjtFQ3ZHOUIsb0JEdUc4QjtBakRvbk1sQzs7QWtEbHVNSTtFQVVJLG1CRG9HMEI7RUNuRzFCLG9CRG1HMEI7QWpEeW5NbEM7O0FrRHJ2TUk7RUFDSSw4QkNsQjRCO0VEbUI1QixrQkNuQmdGO0VEb0JoRixnQkNwQndFO0VEcUJ4RSwwVkFQMkU7QWxEK3ZNbkY7O0FrRDV2TUk7RUFDSSw2QkNqQjJCO0VEa0IzQixrQkNsQjhFO0VEbUI5RSxnQkNuQnNFO0VEb0J0RSw0VkFQMkU7QWxEc3dNbkY7O0FrRG53TUk7RUFDSSw2QkNoQjJCO0VEaUIzQixrQkNqQjhFO0VEa0I5RSxnQkNsQnNFO0VEbUJ0RSxnV0FQMkU7QWxENndNbkY7O0FrRDF3TUk7RUFDSSwyQkNmeUI7RURnQnpCLGtCQ2hCMEU7RURpQjFFLGdCQ2pCa0U7RURrQmxFLGdXQVAyRTtBbERveE1uRjs7QUFodk1BOztpRUFvdk1pRTtBb0R4eU1qRTtFQUVRLG1CQUFtQjtFQUNuQix5Qm5ESzBCO0VtREoxQixrQkFBa0I7RUFDbEIsa0JBQWtCO0FwRHl5TTFCOztBQXB2TUE7O2lFQXd2TWlFO0FxRGx6TWpFO0VBR0ksb0JBQWE7RUFBYixxQkFBYTtFQUFiLGFBQWE7RUFDYix3QkFBdUI7RUFBdkIsK0JBQXVCO1VBQXZCLHVCQUF1QjtFQUN2Qix5QkFBbUI7RUFBbkIsMkJBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIseUNBQWlDO0VBQWpDLGlDQUFpQztFQUNqQyxzQkFBc0I7QXJEa3pNMUI7O0FxRDF6TUE7RUFXUSxhQUFhO0FyRG16TXJCOztBcUQ5ek1BO0VBZVEsWUFBWTtBckRtek1wQjs7QXFEaHpNSTtFQUNJLHlCcERad0I7RW9EYXhCLGtCQUFrQjtFQUNsQixjcERabUI7RW9EYW5CLGtCQUFrQjtBckRtek0xQjs7QXFEdnpNSztFQU9PLHFCcERwQlk7RW9EcUJaLGNwRHJCWTtBRHkwTXhCOztBcUQ1ek1LO0VBYVcsYXBEekJVO0FENDBNMUI7O0FxRDl5TUk7RUFDSSx5QnBEaENnQjtFb0RpQ2hCLGtCQUFrQjtFQUNsQixjcEQ3QjRCO0VvRDhCNUIseUJwRG5DZ0I7RW9Eb0NoQix5Q0FBeUM7QXJEaXpNakQ7O0FxRHR6TUs7RUFRTyx5QkFBMEQ7RUFDMUQscUJBQXNEO0VBQ3RELGNwRHBDd0I7QURzMU1wQzs7QXFENXpNSztFQWVXLGFwRHpDb0I7QUQwMU1wQzs7QXFENXlNSTtFQUNJLHlCcERuRGtCO0VvRG9EbEIsa0JBQWtCO0VBQ2xCLGNwRGpENEI7RW9Ea0Q1Qix5QnBEdERrQjtFb0R1RGxCLHlDQUF5QztBckQreU1qRDs7QXFEcHpNSztFQVFPLHlCQUE0RDtFQUM1RCxxQkFBd0Q7RUFDeEQsY3BEeER3QjtBRHcyTXBDOztBcUQxek1LO0VBZVcsYXBEN0RvQjtBRDQyTXBDOztBcUQxeU1JO0VBQ0kseUJwRG5FNEI7RW9Eb0U1QixrQkFBa0I7RUFDbEIsY3BEdEVtQjtFb0R1RW5CLHlCcER0RTRCO0VvRHVFNUIsb0RBQW9EO0FyRDZ5TTVEOztBcURsek1LO0VBU1cseUJBQXFFO0VBQ3JFLHFCQUFpRTtFQUNqRSxjcERsRlE7QUQrM014Qjs7QXFEeHpNSztFQWVtQixhcER0RkE7QURtNE14Qjs7QXFENXpNSztFQXVCVyxhcEQ5RlE7QUR1NE14Qjs7QXFEcHlNSztFQUllLGFwRHZHSTtBRDI0TXhCOztBcUR4eU1LO0VBV1csYXBEOUdRO0FEKzRNeEI7O0FxRDV4TUk7RUFDSSxpQkFBaUI7QXJE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ZixtQkFBbUI7RUFDbkIseUJBQXlCO0ExRDQzTnpDOztBMEQxNk5BO0VBbURZLHFCQUFxQjtFQUNyQix5QkFBeUI7QTFEMjNOckM7O0EwRC82TkE7RUF3RFksbUNBQTJCO1VBQTNCLDJCQUEyQjtBMUQyM052Qzs7QTBEbjdOQTtFQTREWSxxQkFBcUI7QTFEMjNOakM7O0EyRHY3TkE7RUFHUSxjQUFjO0EzRHc3TnRCOztBMkQzN05BO0VBT1EsYUFBYTtBM0R3N05yQjs7QTJELzdOQTtFQVVZLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIseUNBQXlDO0EzRHk3TnJEOztBMkRyOE5BO0VBZWdCLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsYUFBYTtFQUNiLHFCMURYZ0I7QURxOE5oQzs7QTJENThOQTtFQXNCb0IsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixzQkFBc0I7RUFDdEIsYzFEaEJPO0FEMDhOM0I7O0EyRG45TkE7RUE2Qm9CLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsWUFBWTtBM0QwN05oQzs7QTJEejlOQTtFQWtDd0IsV0FBVztFQUNYLFlBQVk7QTNEMjdOcEM7O0EyRDk5TkE7RUF1Q2dDLFVBQVU7QTNEMjdOMUM7O0EyRGwrTkE7RUEyQ2dDLGExRHRDUjtBRGkrTnhCOztBMkR0K05BO0VBbURnQixhQUFhO0EzRHU3TjdCOztBMkQxK05BO0VBeURnQixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixrQkFBa0I7QTNEcTdObEMiLCJmaWxlIjoiZnJvbnRfYXBwLjkwYzU5Y2YzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwidXRmLThcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPj4+IEFic3RyYWN0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2Fic3RyYWN0cy9mdW5jdGlvbnMnO1xuQGltcG9ydCAnLi4vLi4vY29tbW9uL3Nhc3MvYWJzdHJhY3RzL21peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9jb21tb24vc2Fzcy9hYnN0cmFjdHMvdmFyaWFibGVzJztcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPj4+IE92ZXJyaWRlIGJlZm9yZSBsb2FkIGxpYiBzdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AaW1wb3J0ICcuLi8uLi9jb21tb24vc2Fzcy92ZW5kb3JzL2Jvb3RzdHJhcCc7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBWZW5kb3JzICYgTGlicmFyaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQGltcG9ydCAnfmJvb3RzdHJhcC9zY3NzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvdmFyaWFibGVzJztcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy9taXhpbnMnO1xuQGltcG9ydCAnfmJvb3RzdHJhcC9zY3NzL3JlYm9vdCc7XG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvZ3JpZCc7XG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzJztcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy9mb3Jtcyc7XG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvaW5wdXQtZ3JvdXAnO1xuQGltcG9ydCAnfmJvb3RzdHJhcC9zY3NzL21vZGFsJztcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy9iYWRnZSc7XG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvY3VzdG9tLWZvcm1zJztcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy90eXBlJztcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPj4+IEFic3RyYWN0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2Fic3RyYWN0cy9wbGFjZWhvbGRlcnMnO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4+Pj4gVmVuZG9ycyBhZnRlciBsb2FkIGxpYiBzdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AaW1wb3J0ICcuLi8uLi9jb21tb24vc2Fzcy92ZW5kb3JzL3N3YWwnO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4+Pj4gQmFzZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2Jhc2UvY29tbW9uJztcbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2Jhc2UvdHlwb2dyYXBoeSc7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBQYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgJ3BhZ2VzL3VzZXIvcmVzZXRfcGFzc3dvcmQnO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4+Pj4gQ29tcG9uZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2NvbXBvbmVudHMvZm9ybSc7XG5AaW1wb3J0ICcuLi8uLi9jb21tb24vc2Fzcy9jb21wb25lbnRzL2lucHV0JztcbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2NvbXBvbmVudHMvaW5wdXRfZ3JvdXAnO1xuQGltcG9ydCAnLi4vLi4vY29tbW9uL3Nhc3MvY29tcG9uZW50cy9mb3JtX2Zsb2F0aW5nX2NvbnRhaW5lcic7XG5AaW1wb3J0ICcuLi8uLi9jb21tb24vc2Fzcy9jb21wb25lbnRzL2N1c3RvbV9mb3JtJztcbkBpbXBvcnQgJy4uLy4uL2NvbW1vbi9zYXNzL2NvbXBvbmVudHMvbW9kYWwnOyIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kY29sb3JzOiAoXG4gICAgICAgIHByaW1hcnk6ICMyRjE3ODcsXG4gICAgICAgIHNlY29uZGFyeTogIzgzODM4MyxcbiAgICAgICAgc2Vjb25kYXJ5LWxpZ2h0OiAjRDVENUQ1LFxuICAgICAgICBzZWNvbmRhcnktbGlnaHRlcjogI0YyRjJGMixcbiAgICAgICAgZm9udC1jb2xvcjogIzNFM0UzRSxcbiAgICAgICAgZm9udC1jb2xvci1pbnZlcnRlZDogI0ZGRkZGRixcbik7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBJbWFnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kaW1nUGF0aDogJy4uLy4uL2Fzc2V0cy9pbWcvJzsiLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4+Pj4gR3JpZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiRzcGFjZXI6IDIwcHg7XG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gICAgeHM6IDAsXG4gICAgc206IDU3NnB4LFxuICAgIG1kOiA3NjhweCxcbiAgICBsZzogMTAyNXB4LFxuICAgIHhsOiAxMjAwcHhcbik7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBDb2xvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kcHJpbWFyeTogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4kcmVkOiAjRTgxMjEyO1xuJGdyZWVuOiAjNkRCMTAxO1xuJG9yYW5nZTogI0ZGOTg1MjtcbiR0ZXh0LW11dGVkOiBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5LWxpZ2h0XCIpO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4+Pj4gU2hhZG93c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiRlbmFibGUtc2hhZG93czogZmFsc2U7XG4kaW5wdXQtZm9jdXMtd2lkdGg6IDA7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6IG5vbmU7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6IG5vbmU7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBDaGVja2JveGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogMnB4O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRcIik7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6IG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yLWludmVydGVkXCIpO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yXCIpO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRcIik7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRcIik7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIik7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBTd2l0Y2hlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAzcmVtO1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6IDUwcHg7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogY2FsYygycmVtIC0gNHB4KTsiLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15IC8gMikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplIC8gMiAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgZXNjYXBlLXN2ZygkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IpIHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplIG5vLXJlcGVhdCAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDogICAgICA3NXZoICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCBmb250LXJlc2l6aW5nXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmc1xuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbi8vIFJlc2l6ZSBmb250LXNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250LXNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBWYXJpYWJsZXMgZm9yIHN0b3Jpbmcgc3RhdGljIGFuZCBmbHVpZCByZXNjYWxpbmdcbiAgICAkcmZzLXN0YXRpYzogbnVsbDtcbiAgICAkcmZzLWZsdWlkOiBudWxsO1xuXG4gICAgLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIEBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnMgLyAkcmZzLXJlbS12YWx1ZX1yZW0jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSBweCB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnN9cHgjeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xuICAgIH1cblxuICAgIC8vIE9ubHkgYWRkIG1lZGlhIHF1ZXJ5IGlmIGZvbnQtc2l6ZSBpcyBiaWdnZXIgYXMgdGhlIG1pbmltdW0gZm9udC1zaXplXG4gICAgLy8gSWYgJHJmcy1mYWN0b3IgPT0gMSwgbm8gcmVzY2FsaW5nIHdpbGwgdGFrZSBwbGFjZVxuICAgIEBpZiAkZnMgPiAkcmZzLWJhc2UtZm9udC1zaXplIGFuZCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICAkbWluLXdpZHRoOiBudWxsO1xuICAgICAgJHZhcmlhYmxlLXVuaXQ6IG51bGw7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUpIC8gJHJmcy1mYWN0b3I7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gZ2l2ZW4gZm9udC1zaXplIGFuZCBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgLy8gTm8gbmVlZCB0byBjaGVjayBpZiB0aGUgdW5pdCBpcyB2YWxpZCwgYmVjYXVzZSB3ZSBkaWQgdGhhdCBiZWZvcmVcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAjeyRmcy1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIElmIHR3by1kaW1lbnNpb25hbCwgdXNlIHNtYWxsZXN0IG9mIHNjcmVlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyRmcy1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplLlxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcbiAgICB9XG5cbiAgICAvLyBSZW5kZXJpbmdcbiAgICBAaWYgJHJmcy1mbHVpZCA9PSBudWxsIHtcbiAgICAgIC8vIE9ubHkgcmVuZGVyIHN0YXRpYyBmb250LXNpemUgaWYgbm8gZmx1aWQgZm9udC1zaXplIGlzIGF2YWlsYWJsZVxuICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJG1xLXZhbHVlOiBudWxsO1xuXG4gICAgICAvLyBSRlMgYnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICBAaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcmVtIHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50fXB4O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgICAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LFxuICAgICAgICAvLyB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICAgICAmLFxuICAgICAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbiB1c2VzIFJGUyB0byByZXNjYWxlIGZvbnQgc2l6ZXNcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xufVxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG1ha2UtY29udGFpbmVyLW1heC13aWR0aHNgIG1peGluXCIsIFwidjQuNS4yXCIsIFwidjVcIik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCUgLyAkY291bnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlIC8gJGNvdW50O1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBVc2VkIGluc3RlYWQgb2YgYG92ZXJmbG93LXdyYXBgIGZvciBJRSAmIEVkZ2UgTGVnYWN5XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgZm9yIHdvcmthcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdWF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCBvciB1bml0KCRudW0pID09IFwiJVwiIG9yIHVuaXQoJHByZXYtbnVtKSA9PSBcIiVcIiB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gVXNlZCB0byBlbnN1cmUgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwLCAkbWFwLW5hbWU6IFwiJGdyaWQtYnJlYWtwb2ludHNcIikge1xuICBAaWYgbGVuZ3RoKCRtYXApID4gMCB7XG4gICAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcbiAgICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluICN7JG1hcC1uYW1lfSBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gU2VlIGh0dHBzOi8vY29kZXBlbi5pby9rZXZpbndlYmVyL3Blbi9kWFdvUndcbi8vXG4vLyBSZXF1aXJlcyB0aGUgdXNlIG9mIHF1b3RlcyBhcm91bmQgZGF0YSBVUklzLlxuXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgIC8vIERvIG5vdCBlc2NhcGUgdGhlIHVybCBicmFja2V0c1xuICAgICAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcInVybChcIikgPT0gMSB7XG4gICAgICAgICRzdHJpbmc6IHVybChcIiN7c3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsIDYsIC0zKSwgJGNoYXIsICRlbmNvZGVkKX1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvciwgJGRhcms6ICR5aXEtdGV4dC1kYXJrLCAkbGlnaHQ6ICR5aXEtdGV4dC1saWdodCkge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJGRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJGxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAkYmxhY2ssICR3aGl0ZSk7XG4gICRsZXZlbDogYWJzKCRsZXZlbCk7XG5cbiAgQHJldHVybiBtaXgoJGNvbG9yLWJhc2UsICRjb2xvciwgJGxldmVsICogJHRoZW1lLWNvbG9yLWludGVydmFsKTtcbn1cblxuLy8gUmV0dXJuIHZhbGlkIGNhbGNcbkBmdW5jdGlvbiBhZGQoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSArICR2YWx1ZTI7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gKyAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgKyBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIHN1YnRyYWN0KCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIGFuZCAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gLSR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgLSAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9IC0gI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiIC0gXCIpICsgJHZhbHVlMik7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZm9ybS1jb250cm9sLWZvY3VzKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMxNTU3XG4gICAgLy8gQWxpZ24gdG9vbHRpcCB0byBmb3JtIGVsZW1lbnRzXG4gICAgLmZvcm0tcm93ID4gLmNvbCA+ICYsXG4gICAgLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0gPiAmIHtcbiAgICAgIGxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRjdXN0b20tc2VsZWN0LWJnIGVzY2FwZS1zdmcoJGljb24pICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemUgbm8tcmVwZWF0O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gLmZvcm0tY29udHJvbDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmJ0bixcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46ICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCJAbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGhlaWdodDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvciBzb2xpZCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9IG5vLXJlcGVhdDtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHN3aXRjaGVzXG4vL1xuLy8gVHdlYWsgYSBmZXcgdGhpbmdzIGZvciBzd2l0Y2hlc1xuXG4uY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC13aWR0aDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IGFkZCgoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMiwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIGxlZnQ6IGFkZCgtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlciksICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBoZWlnaHQ6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsICRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSGlkZXMgdGhlIGRlZmF1bHQgY2FyZXQgaW4gSUUxMVxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc7XG4gIH1cblxuICBAZWFjaCAkbGFuZywgJHZhbHVlIGluICRjdXN0b20tZmlsZS10ZXh0IHtcbiAgICAmOmxhbmcoI3skbGFuZ30pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiAkdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWJyb3dzZSk7XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tZmlsZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tZmlsZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tZmlsZS1idXR0b24tYmcpO1xuICAgIGJvcmRlci1sZWZ0OiBpbmhlcml0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxufVxuXG4vLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQsICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQgLSAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCkgLyAyOyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiJXJhbGV3YXktcmVndWxhciB7XG4gICAgZm9udC1mYW1pbHk6IFwiUmFsZXdheSBSZWd1bGFyXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuJXJhbGV3YXktaXRhbGljIHtcbiAgICBmb250LWZhbWlseTogXCJSYWxld2F5IEl0YWxpY1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbiVyYWxld2F5LW1lZGl1bSB7XG4gICAgZm9udC1mYW1pbHk6IFwiUmFsZXdheSBNZWRpdW1cIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4lcmFsZXdheS1ib2xkIHtcbiAgICBmb250LWZhbWlseTogXCJSYWxld2F5IEJvbGRcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ldGV4dC1zdHlsZSB7XG4gICAgQGV4dGVuZCAlcmFsZXdheS1tZWRpdW07XG4gICAgQGV4dGVuZCAldGV4dC1zaXplO1xufVxuXG4ldGV4dC1zaXplIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjI1cHg7XG59XG5cbiViaWctdGl0bGUtc3R5bGUge1xuICAgIEBleHRlbmQgJXJhbGV3YXktYm9sZDtcbiAgICBAZXh0ZW5kICViaWctdGl0bGUtc2l6ZTtcbn1cblxuJWJpZy10aXRsZS1zaXplIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbn1cblxuJXRpdGxlLXN0eWxlIHtcbiAgICBAZXh0ZW5kICVyYWxld2F5LWJvbGQ7XG4gICAgQGV4dGVuZCAldGl0bGUtc2l6ZTtcbn1cblxuJXRpdGxlLXNpemUge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuNHB4O1xufVxuXG4lc21hbGwtdGl0bGUtc3R5bGUge1xuICAgIEBleHRlbmQgJXJhbGV3YXktYm9sZDtcbiAgICBAZXh0ZW5kICVzbWFsbC10aXRsZS1zaXplO1xufVxuXG4lc21hbGwtdGl0bGUtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC40cHg7XG59XG5cbiVzbWFsbC1zdHlsZSB7XG4gICAgQGV4dGVuZCAlcmFsZXdheS1tZWRpdW07XG4gICAgQGV4dGVuZCAlc21hbGwtc2l6ZTtcbn1cblxuJXNtYWxsLXNpemUge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMjVweDtcbn0iLCIuc3dhbDItY29udGFpbmVyIHtcbiAgICAuc3dhbDItbW9kYWwge1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuXG4gICAgICAgIC5zd2FsMi1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgLnN3YWwyLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICV0aXRsZS1zdHlsZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3JcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3dhbDItY29udGVudCB7XG4gICAgICAgICAgICBAZXh0ZW5kICV0ZXh0LXN0eWxlO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvclwiKTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2FsMi1hY3Rpb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgLnN3YWwyLWNvbmZpcm0ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJwcmltYXJ5XCIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgJXJhbGV3YXktYm9sZDtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICV0ZXh0LXNpemU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDI1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBCb2R5IHN0eWxlc1xuYm9keSB7XG4gICAgQGV4dGVuZCAldGV4dC1zdHlsZTtcbiAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3JcIik7XG59XG5cbi8vIFRpdGxlc1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmJpZy10aXRsZS1zdHlsZSB7XG4gICAgQGV4dGVuZCAlYmlnLXRpdGxlLXN0eWxlO1xufVxuXG4udGl0bGUtc3R5bGUge1xuICAgIEBleHRlbmQgJXRpdGxlLXN0eWxlO1xufVxuXG4uc21hbGwtdGl0bGUtc3R5bGUge1xuICAgIEBleHRlbmQgJXNtYWxsLXRpdGxlLXN0eWxlO1xufVxuXG4udGV4dC1zdHlsZSB7XG4gICAgQGV4dGVuZCAldGV4dC1zdHlsZTtcbn1cblxuLnNtYWxsLXN0eWxlIHtcbiAgICBAZXh0ZW5kICVzbWFsbC1zdHlsZTtcbn1cblxuYSB7XG4gICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yXCIpO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbnAge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHtcbiAgICBAZXh0ZW5kICVyYWxld2F5LXJlZ3VsYXI7XG59XG5cbi5mb250LWl0YWxpYyB7XG4gICAgQGV4dGVuZCAlcmFsZXdheS1pdGFsaWM7XG59XG5cbmIsIHN0cm9uZywgLmZvbnQtd2VpZ2h0LWJvbGQge1xuICAgIEBleHRlbmQgJXJhbGV3YXktYm9sZDtcbn1cblxuLnRleHQge1xuICAgICYtLXBlbmRpbmcge1xuICAgICAgICBjb2xvcjogJGdyYXktNjAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi0tcnVubmluZyB7XG4gICAgICAgIGNvbG9yOiAkb3JhbmdlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi0tZmluaXNoZWQsICYtLXN1Y2Nlc3Mge1xuICAgICAgICBjb2xvcjogJGdyZWVuICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi0tZmFpbGVkLCAmLS1lcnJvciB7XG4gICAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG50ZXh0YXJlYSB7XG4gICAgJi5yZXNpemUtbm9uZSB7XG4gICAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICB9XG59XG5cbi8vIEJ1dHRvblxuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuLy8gSW5wdXRcbmlucHV0IHtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8gVGFibGVcbnRhYmxlIHtcbiAgICAuY29sLW1pbi1zaXplIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgd2lkdGg6IDElO1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiByZ2JhKG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yXCIpLCAwLjUpO1xuICAgIH1cbn1cblxuLy8gSW1hZ2VcbkBlYWNoICR2YWx1ZSBpbiAoY292ZXIsIGNvbnRhaW4pIHtcbiAgICBpbWcub2JqZWN0LWZpdC0jeyR2YWx1ZX0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiAkdmFsdWU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogI3skdmFsdWV9Oyc7XG4gICAgfVxufVxuXG5AZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAoXG4gICAgMTA6IDEwJSxcbiAgICAyMDogMjAlLFxuICAgIDMwOiAzMCUsXG4gICAgNDA6IDQwJSxcbiAgICA2MDogNjAlLFxuICAgIDcwOiA3MCUsXG4gICAgODA6IDgwJSxcbiAgICA5MDogOTAlLFxuKSB7XG4gICAgLnctI3skc2l6ZX0ge1xuICAgICAgICB3aWR0aDogJGxlbmd0aDtcbiAgICB9XG59XG5cblxuLnJvdyB7XG4gICAgJi0tc21hbGwtZ3V0dGVycyB7XG4gICAgICAgIEBpbmNsdWRlIHJvdy1zcGFjaW5nKDcuNXB4KTtcbiAgICB9XG59IiwiQG1peGluIGZvbnQtZmFjZSgkbmFtZSwgJHBhdGgsICR3ZWlnaHQ6IG51bGwsICRzdHlsZTogbnVsbCwgJGV4dHM6IG90ZiBlb3Qgd29mZjIgd29mZiB0dGYgc3ZnKSB7XG4gICAgJHNyYzogbnVsbDtcblxuICAgICRleHRtb2RzOiAoXG4gICAgICAgICAgICBlb3Q6IFwiP1wiLFxuICAgICAgICAgICAgc3ZnOiBcIiNcIiArIHN0ci1yZXBsYWNlKCRuYW1lLCBcIiBcIiwgXCJfXCIpXG4gICAgKTtcblxuICAgICRmb3JtYXRzOiAoXG4gICAgICAgICAgICBvdGY6IFwib3BlbnR5cGVcIixcbiAgICAgICAgICAgIHR0ZjogXCJ0cnVldHlwZVwiXG4gICAgKTtcblxuICAgIEBlYWNoICRleHQgaW4gJGV4dHMge1xuICAgICAgICAkZXh0bW9kOiBpZihtYXAtaGFzLWtleSgkZXh0bW9kcywgJGV4dCksICRleHQgKyBtYXAtZ2V0KCRleHRtb2RzLCAkZXh0KSwgJGV4dCk7XG4gICAgICAgICRmb3JtYXQ6IGlmKG1hcC1oYXMta2V5KCRmb3JtYXRzLCAkZXh0KSwgbWFwLWdldCgkZm9ybWF0cywgJGV4dCksICRleHQpO1xuICAgICAgICAkc3JjOiBhcHBlbmQoJHNyYywgdXJsKHF1b3RlKCRwYXRoICsgXCIuXCIgKyAkZXh0bW9kKSkgZm9ybWF0KHF1b3RlKCRmb3JtYXQpKSwgY29tbWEpO1xuICAgIH1cblxuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogcXVvdGUoJG5hbWUpO1xuICAgICAgICBmb250LXN0eWxlOiAkc3R5bGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgICAgICBzcmM6ICRzcmM7XG4gICAgfVxufVxuXG5AbWl4aW4gaGl0Ym94KCRzaXplKSB7XG4gICAgcGFkZGluZzogJHNpemU7XG4gICAgbWFyZ2luOiAtJHNpemU7XG59XG5cbkBtaXhpbiBjb2wtc3R5bGUoKSB7XG4gICAgPiAuY29sLCA+IFtjbGFzc149XCJjb2wtXCJdLCA+IFtjbGFzcyo9XCIgY29sLVwiXSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIHJvdy1zcGFjaW5nKCRzcGFjaW5nKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kc3BhY2luZztcbiAgICBtYXJnaW4tcmlnaHQ6IC0kc3BhY2luZztcblxuICAgIEBpbmNsdWRlIGNvbC1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmc7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nO1xuICAgIH1cbn1cblxuLy8gQHNlZSBodHRwczovL3d3dy53M3NjaG9vbHMuY29tL2hvd3RvL2hvd3RvX2Nzc19hc3BlY3RfcmF0aW8uYXNwIHRvIGRvIGFuIGFzcGVjdCByYXRpb1xuQG1peGluIGFzcGVjdC1yYXRpbygkd2lkdGhSYXRpbywgJGhlaWdodFJhdGlvKSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMTAwJSAqICgjeyRoZWlnaHRSYXRpb30gLyAjeyR3aWR0aFJhdGlvfSkpO1xufSIsIiRmb250UGF0aDogXCIuLi8uLi9mb250L1wiO1xuXG5AaW5jbHVkZSBmb250LWZhY2UoXCJSYWxld2F5IFJlZ3VsYXJcIiwgJGZvbnRQYXRoICsgXCJSYWxld2F5L1JhbGV3YXktUmVndWxhclwiLCA0MDAsIG5vcm1hbCk7XG5AaW5jbHVkZSBmb250LWZhY2UoXCJSYWxld2F5IEl0YWxpY1wiLCAkZm9udFBhdGggKyBcIlJhbGV3YXkvUmFsZXdheS1JdGFsaWNcIiwgNDAwLCBpdGFsaWMpO1xuQGluY2x1ZGUgZm9udC1mYWNlKFwiUmFsZXdheSBNZWRpdW1cIiwgJGZvbnRQYXRoICsgXCJSYWxld2F5L1JhbGV3YXktTWVkaXVtXCIsIDUwMCwgbm9ybWFsKTtcbkBpbmNsdWRlIGZvbnQtZmFjZShcIlJhbGV3YXkgQm9sZFwiLCAkZm9udFBhdGggKyBcIlJhbGV3YXkvUmFsZXdheS1Cb2xkXCIsIDcwMCwgbm9ybWFsKTsiLCJib2R5I3VzZXItZnJvbnQtcmVzZXQtcGFzc3dvcmQtcGFnZSB7XG4gICAgLnJ1bGVzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInNlY29uZGFyeS1saWdodGVyXCIpO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDI1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG59IiwiLmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlcmFsZXdheS1ib2xkO1xuICAgIEBleHRlbmQgJXRleHQtc2l6ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTVweCAyNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuM3B4O1xuXG4gICAgJi5oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgJi0tYm9yZGVyZWQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5LWxpZ2h0XCIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvclwiKTtcbiAgICAgICAgcGFkZGluZzogMTdweCAyN3B4O1xuXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6aG92ZXIsICY6bm90KDpkaXNhYmxlZCk6Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwYXRoLCBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5XCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tZmlsbGVkIHtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yLWludmVydGVkXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG5cbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTpob3ZlciwgJjpub3QoOmRpc2FibGVkKTpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4obWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIiksIDEwJSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbihtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKSwgMTAlKTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwYXRoLCBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWZpbGxlZC1zZWNvbmRhcnkge1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5XCIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInNlY29uZGFyeVwiKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG5cbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTpob3ZlciwgJjpub3QoOmRpc2FibGVkKTpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4obWFwLWdldCgkY29sb3JzLCBcInNlY29uZGFyeVwiKSwgMTAlKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnlcIiksIDEwJSk7XG4gICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIik7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcGF0aCwgcG9seWdvbiB7XG4gICAgICAgICAgICAgICAgZmlsbDogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1maWxsZWQtaW52ZXJ0ZWQge1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yLWludmVydGVkXCIpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjA1KSAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKSwgMyUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yLWludmVydGVkXCIpLCAzJSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJwcmltYXJ5XCIpO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aCwgcG9seWdvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwYXRoLCBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWljb24tY29sb3JlZCB7XG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6aG92ZXIsICY6bm90KDpkaXNhYmxlZCk6Zm9jdXMge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBwYXRoLCBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHBhdGgsIHBvbHlnb24ge1xuICAgICAgICAgICAgICAgIGZpbGw6IG1hcC1nZXQoJGNvbG9ycywgXCJwcmltYXJ5XCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZm9ybS5pbmxpbmUtZm9ybSAmIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgfVxuXG4gICAgJi0tYmFjay1saW5rIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTpob3ZlciwgJjpub3QoOmRpc2FibGVkKTpmb2N1cyB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHBhdGgsIHBvbHlnb24ge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLCAmLS1iYWNrLWxpbmsge1xuICAgICAgICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBwYXRoLCBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWxpdmUtc3RhdHVzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKTtcblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKSwgMyUpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcnVubmluZyB7XG4gICAgICAgICAgICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aCwgY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICNFQjFCMUIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJlYWR5IHtcbiAgICAgICAgICAgIC5zdmctY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICMzRkE4MDggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXBlbmRpbmcge1xuICAgICAgICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHBhdGgsIHBvbHlnb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogI0ZGOTMwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tZmluaXNoZWQge1xuICAgICAgICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHBhdGgsIHBvbHlnb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogIzMxMzEzMSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1saXZlLWNvbnZlcnQtdG8tcmVwbGF5IHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBjb2xvcjogIzBCN0Q5QTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKSwgMyUpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICMwQjdEOUE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gXG4gICAgJi0tZXhwZXJ0IHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA2cHg7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4obWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIiksIDMlKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdmctY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAjMEI3RDlBO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxpdmUtc3RhdHVzIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKTtcbiAgICBcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKSwgMyUpO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICYtLXJ1bm5pbmcge1xuICAgICAgICAgICAgICAgIC5zdmctY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgsIGNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogI0VCMUIxQiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgJi0tcmVhZHkge1xuICAgICAgICAgICAgICAgIC5zdmctY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICMzRkE4MDggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICYtLXBlbmRpbmcge1xuICAgICAgICAgICAgICAgIC5zdmctY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgsIHBvbHlnb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICNGRjkzMDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICYtLWZpbmlzaGVkIHtcbiAgICAgICAgICAgICAgICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoLCBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAjMzEzMTMxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgICYtLWxpdmUtY29udmVydC10by1yZXBsYXkge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMEI3RDlBO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIFxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yLWludmVydGVkXCIpLCAzJSk7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICBcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICMwQjdEOUE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3R0b20ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuXG4gICAgICAgICYtLXB1cmdlIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvci1pbnZlcnRlZFwiKSwgMyUpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN2Zy1jb250YWluZXItY2hyb25vIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNy41cHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwJTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcGF0aCwgcG9seWdvbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJveC1zaGFkb3c6IDAgM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuXG4gICAgPiAuYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRlclwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yb3ctYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIik7XG4gICAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIH1cblxuICAgICY6bm90KDpkaXNhYmxlZCk6aG92ZXIsICY6bm90KDpkaXNhYmxlZCk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4obWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIiksIDMlKTtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuXG4gICAgICAgIHBhdGgsIHBvbHlnb24sIGNpcmNsZSB7XG4gICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiZm9ybSB7XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIGxhYmVsOm5vdCguY3VzdG9tLWNvbnRyb2wtbGFiZWwpLCAuY29sLWZvcm0tbGFiZWwsIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJhbGV3YXktYm9sZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgQGV4dGVuZCAldGV4dC1zdHlsZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInNlY29uZGFyeS1saWdodFwiKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMDBtcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgJjpub3QoLmlzLWludmFsaWQpOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJwcmltYXJ5XCIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgICAgICAgICAgICYsICY6Zm9jdXMsICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDUwMDBzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3JcIik7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvclwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEobWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3JcIiksIDAuNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtaW52YWxpZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT0nY29sb3InXS5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pbmxpbmUtZm9ybSB7XG4gICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIGxhYmVsOm5vdCguY3VzdG9tLWNvbnRyb2wtbGFiZWwpLCAuY29sLWZvcm0tbGFiZWwsIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVyYWxld2F5LW1lZGl1bTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5LWxpZ2h0XCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXRpdGxlLXN0eWxlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIqOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICYsICY6Zm9jdXMsICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dDtcbiAgICB9XG59XG5cbi8qIGNsZWFycyB0aGUgJ1gnIGZyb20gSW50ZXJuZXQgRXhwbG9yZXIgKi9cbmlucHV0W3R5cGU9c2VhcmNoXTo6LW1zLWNsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdOjotbXMtcmV2ZWFsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbn1cblxuLyogY2xlYXJzIHRoZSAnWCcgZnJvbSBDaHJvbWUgKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59IiwiLmlucHV0LWdyb3VwIHtcbiAgICAuaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgICAgICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBAZXh0ZW5kICVyYWxld2F5LW1lZGl1bTtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBwYXRoLCBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1pbnZhbGlkIHtcbiAgICAgICAgLmlucHV0LWdyb3VwLXRleHQsIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjREMzNTQ1ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguaXMtaW52YWxpZCk6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubm8tYm9yZGVyIHtcbiAgICAgICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY29weS10by1jbGlwYm9hcmQge1xuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICBAZXh0ZW5kICVyYWxld2F5LWJvbGQ7XG4gICAgICAgIEBleHRlbmQgJXRleHQtc2l6ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRlclwiKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICZbZGF0YS1jb21wb25lbnQ9XCJwYXNzd29yZC12aXNpYmlsaXR5LXRvZ2dsZVwiXSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICZbZGF0YS1wYXNzd29yZC12aXNpYmxlPVwidHJ1ZVwiXSwgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnlcIikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5XCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5mb3JtLWZsb2F0aW5nLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIik7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB3aWR0aDogNDQ1cHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAyMHB4O1xuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogNDBweCA2MHB4IDMwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5LWxpZ2h0XCIpO1xuICAgIH1cblxuICAgICZfX2JvZHkge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDYwcHg7XG4gICAgfVxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHg7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBAZXh0ZW5kICViaWctdGl0bGUtc3R5bGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuXG4gICAgLmNvbnRhaW5zLWZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICAgIH1cblxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAtdGV4dCwgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbnB1dC1ncm91cC1wcmVwZW5kIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRcIik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRjb2xvcnMsIFwicHJpbWFyeVwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInNlY29uZGFyeS1saWdodFwiKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMDBtcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgICAgICAgICAgICAmLCAmOmZvY3VzLCAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyMDBtcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJmb250LWNvbG9yXCIpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3JcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRcIik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG5cbiAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwic2Vjb25kYXJ5XCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hbGVydCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInNlY29uZGFyeVwiKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTpob3ZlciwgJjpub3QoOmRpc2FibGVkKTpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWluLWhlaWdodDogNjBweDtcbiAgICB9XG59IiwiLmN1c3RvbS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuXG4gICAgJi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG5cbiAgICAgICAgJi5pcy1pbnZhbGlkIHtcbiAgICAgICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcImZvbnQtY29sb3ItaW52ZXJ0ZWRcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmN1c3RvbS1zd2l0Y2gge1xuICAgICAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmFsZXdheS1ib2xkO1xuICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjc2NzY3O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NzY3Njc7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgdG9wOiAycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMzRkE4MDg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0ZBODA4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjc2NzY3O1xuICAgICAgICB9XG4gICAgfVxufSIsIi5tb2RhbCB7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuXG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuXG4gICAgICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgXCJzZWNvbmRhcnktbGlnaHRcIik7XG5cbiAgICAgICAgICAgICAgICAubW9kYWwtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kICVyYWxld2F5LWJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4zcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIFwiZm9udC1jb2xvclwiKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogbWFwLWdldCgkY29sb3JzLCBcInByaW1hcnlcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVyYWxld2F5LWJvbGQ7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAldGV4dC1zaXplO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTFweCAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSJdLCJzb3VyY2VSb290IjoiIn0=*/