@import url(https://fonts.googleapis.com/css?family=Nunito);
/*!
 * Bootstrap v4.6.0 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -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-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*,
*::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: 0.5rem;
}

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: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #0056b3;
  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: #6c757d;
  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;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  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: 1rem;
  margin-bottom: 1rem;
  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: 1rem;
  font-size: 1.25rem;
}

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

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

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.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: 992px) {
  .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: flex;
  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 {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

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

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

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

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

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

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

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

.col-1 {
  flex: 0 0 8.333333%;
  max-width: 8.333333%;
}

.col-2 {
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

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

.col-4 {
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.col-5 {
  flex: 0 0 41.666667%;
  max-width: 41.666667%;
}

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

.col-7 {
  flex: 0 0 58.333333%;
  max-width: 58.333333%;
}

.col-8 {
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

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

.col-10 {
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.col-11 {
  flex: 0 0 91.666667%;
  max-width: 91.666667%;
}

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

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.333333%;
  }
  .offset-sm-2 {
    margin-left: 16.666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.333333%;
  }
  .offset-sm-5 {
    margin-left: 41.666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.333333%;
  }
  .offset-sm-8 {
    margin-left: 66.666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.333333%;
  }
  .offset-sm-11 {
    margin-left: 91.666667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-md-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-md-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-md-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.333333%;
  }
  .offset-md-2 {
    margin-left: 16.666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.333333%;
  }
  .offset-md-5 {
    margin-left: 41.666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.333333%;
  }
  .offset-md-8 {
    margin-left: 66.666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.333333%;
  }
  .offset-md-11 {
    margin-left: 91.666667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.333333%;
  }
  .offset-lg-2 {
    margin-left: 16.666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.333333%;
  }
  .offset-lg-5 {
    margin-left: 41.666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.333333%;
  }
  .offset-lg-8 {
    margin-left: 66.666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.333333%;
  }
  .offset-lg-11 {
    margin-left: 91.666667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-xl-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.333333%;
  }
  .offset-xl-2 {
    margin-left: 16.666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.333333%;
  }
  .offset-xl-5 {
    margin-left: 41.666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.333333%;
  }
  .offset-xl-8 {
    margin-left: 66.666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.333333%;
  }
  .offset-xl-11 {
    margin-left: 91.666667%;
  }
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff;
}

.table-hover .table-primary:hover {
  background-color: #9fcdff;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

.table-hover .table-success:hover {
  background-color: #b1dfbb;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b1dfbb;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e;
}

.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffe8a1;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e;
}

.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f1b0b7;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

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

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}

.table-dark.table-bordered {
  border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  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;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    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: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-control::-moz-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: 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: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: 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: 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: 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: flex;
  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: #6c757d;
}

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

.form-check-inline {
  display: inline-flex;
  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: #28a745;
}

.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(40, 167, 69, 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: #28a745;
  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='%2328a745' 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 calc(0.375em + 0.1875rem) center;
  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: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  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: #28a745;
  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='%2328a745' 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: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

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

.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: #28a745;
}

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

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

.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.2rem rgba(40, 167, 69, 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: #28a745;
}

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

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

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

.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(220, 53, 69, 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: #dc3545;
  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='%23dc3545' 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='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  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: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  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: #dc3545;
  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='%23dc3545' 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='%23dc3545' 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: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

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

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

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

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

.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.2rem rgba(220, 53, 69, 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: #dc3545;
}

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

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

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

@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    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: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  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) {
  .btn {
    transition: none;
  }
}

.btn:hover {
  color: #212529;
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn.disabled, .btn:disabled {
  opacity: 0.65;
}

.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

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

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430;
}

.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

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

.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}

.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

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

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}

.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d;
}

.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

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

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}

.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

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

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}

.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

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

.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

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

.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

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

.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

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

.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

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

.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}

.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}

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

.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

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

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}

.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}

.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

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

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}

.btn-group-toggle > .btn input[type="radio"],
.btn-group-toggle > .btn input[type="checkbox"],
.btn-group-toggle > .btn-group > .btn input[type="radio"],
.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

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

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  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: flex;
  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: 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: flex;
  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: 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: 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;
}

.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: 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: #fff;
  border-color: #007bff;
  background-color: #007bff;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

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

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

.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: #adb5bd 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: 0.25rem;
}

.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='%23fff' 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: #007bff;
  background-color: #007bff;
}

.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='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 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='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

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

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  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;
}

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

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

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  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: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.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: 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: 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: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

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

.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.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: 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: 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: 1.4rem;
  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, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

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

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  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: #b3d7ff;
}

.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: #007bff;
  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: #b3d7ff;
}

.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.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  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: #b3d7ff;
}

.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 {
  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 {
    transition: none;
  }
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}

.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link {
  margin-bottom: -1px;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}

.navbar .container,
.navbar .container-fluid, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50% / 100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}

.navbar-expand .navbar-nav {
  flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  flex-wrap: nowrap;
}

.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}

.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}

.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
  color: #fff;
}

.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}

.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
  .card-columns {
    -moz-column-count: 3;
    column-count: 3;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.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;
  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 {
    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: #007bff;
}

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

a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 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: #28a745;
}

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

a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 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: #dc3545;
}

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

a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 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);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 4rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}

.alert-primary hr {
  border-top-color: #9fcdff;
}

.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.alert-success hr {
  border-top-color: #b1dfbb;
}

.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

.alert-info hr {
  border-top-color: #abdde5;
}

.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

.alert-warning hr {
  border-top-color: #ffe8a1;
}

.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

.alert-danger hr {
  border-top-color: #f1b0b7;
}

.alert-danger .alert-link {
  color: #491217;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #040505;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease;
}

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

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  -webkit-animation: 1s linear infinite progress-bar-stripes;
  animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
    animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}

.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}

.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}

.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.list-group-item + .list-group-item {
  border-top-width: 0;
}

.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}

.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}

.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}

.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

.list-group-flush {
  border-radius: 0;
}

.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}

.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff;
}

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #004085;
  border-color: #004085;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb;
}

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb;
}

.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1;
}

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb;
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7;
}

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #721c24;
  border-color: #721c24;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.close:hover {
  color: #000;
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: .75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}

.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast.showing {
  opacity: 1;
}

.toast.show {
  display: block;
  opacity: 1;
}

.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.toast-body {
  padding: 0.75rem;
}

.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 {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}

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

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

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

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

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

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

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

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

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

.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  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: flex;
  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: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 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;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 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: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}

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

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

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  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-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  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-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}

.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc(-0.5rem - 1px);
}

.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem;
}

.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc(-0.5rem - 1px);
}

.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem;
}

.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

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

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: 50% / 100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

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

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: .75s linear infinite spinner-border;
  animation: .75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: .75s linear infinite spinner-grow;
  animation: .75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
  }
}

.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: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !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: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !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: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !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: #007bff !important;
}

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

.border-success {
  border-color: #28a745 !important;
}

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

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

.border-danger {
  border-color: #dc3545 !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: flex !important;
}

.d-inline-flex {
  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: flex !important;
  }
  .d-sm-inline-flex {
    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: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 992px) {
  .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: flex !important;
  }
  .d-lg-inline-flex {
    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: flex !important;
  }
  .d-xl-inline-flex {
    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: flex !important;
  }
  .d-print-inline-flex {
    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.857143%;
}

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

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

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

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

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

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

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

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

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

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

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

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

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

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

.justify-content-center {
  justify-content: center !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    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: 992px) {
  .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;
  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: 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: sticky) {
  .sticky-top {
    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: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

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

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

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

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

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

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !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: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

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

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

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

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

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

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

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

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

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

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

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

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

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

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

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

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

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

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

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

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

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

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

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

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

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

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

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !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: 0.25rem !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }
  .m-sm-n1 {
    margin: -0.25rem !important;
  }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }
  .m-sm-n2 {
    margin: -0.5rem !important;
  }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n3 {
    margin: -1rem !important;
  }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important;
  }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important;
  }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important;
  }
  .m-sm-n4 {
    margin: -1.5rem !important;
  }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }
  .m-sm-n5 {
    margin: -3rem !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !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: 0.25rem !important;
  }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important;
  }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important;
  }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important;
  }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important;
  }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important;
  }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important;
  }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important;
  }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important;
  }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important;
  }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important;
  }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important;
  }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important;
  }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important;
  }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important;
  }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important;
  }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important;
  }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important;
  }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important;
  }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important;
  }
  .m-md-n1 {
    margin: -0.25rem !important;
  }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important;
  }
  .m-md-n2 {
    margin: -0.5rem !important;
  }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important;
  }
  .m-md-n3 {
    margin: -1rem !important;
  }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important;
  }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important;
  }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important;
  }
  .m-md-n4 {
    margin: -1.5rem !important;
  }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important;
  }
  .m-md-n5 {
    margin: -3rem !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !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: 992px) {
  .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: 0.25rem !important;
  }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important;
  }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important;
  }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important;
  }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important;
  }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important;
  }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important;
  }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important;
  }
  .m-lg-n1 {
    margin: -0.25rem !important;
  }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }
  .m-lg-n2 {
    margin: -0.5rem !important;
  }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n3 {
    margin: -1rem !important;
  }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important;
  }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important;
  }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important;
  }
  .m-lg-n4 {
    margin: -1.5rem !important;
  }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }
  .m-lg-n5 {
    margin: -3rem !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !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: 0.25rem !important;
  }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important;
  }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important;
  }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important;
  }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important;
  }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important;
  }
  .m-xl-n1 {
    margin: -0.25rem !important;
  }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n3 {
    margin: -1rem !important;
  }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important;
  }
  .m-xl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xl-n5 {
    margin: -3rem !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !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: 992px) {
  .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: #007bff !important;
}

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

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

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

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !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: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !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: #6c757d !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;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a:not(.btn) {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important;
  }
  .table-dark {
    color: inherit;
  }
  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dee2e6;
  }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}
/*# sourceMappingURL=bootstrap.css.map */
/*!
 * Datetimepicker for Bootstrap 3
 * version : 4.17.47
 * https://github.com/Eonasdan/bootstrap-datetimepicker/
 */
.bootstrap-datetimepicker-widget {
  list-style: none;
}
.bootstrap-datetimepicker-widget.dropdown-menu {
  display: block;
  margin: 2px 0;
  padding: 4px;
  width: 19em;
}
@media (min-width: 576px) {
  .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
    width: 38em;
  }
}
@media (min-width: 768px) {
  .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
    width: 38em;
  }
}
@media (min-width: 992px) {
  .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
    width: 38em;
  }
}
.bootstrap-datetimepicker-widget.dropdown-menu:before,
.bootstrap-datetimepicker-widget.dropdown-menu:after {
  content: '';
  display: inline-block;
  position: absolute;
}
.bootstrap-datetimepicker-widget.dropdown-menu.bottom:before {
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #ccc;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  top: -7px;
  left: 7px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.bottom:after {
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  top: -6px;
  left: 8px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.top:before {
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid #ccc;
  border-top-color: rgba(0, 0, 0, 0.2);
  bottom: -7px;
  left: 6px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.top:after {
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid white;
  bottom: -6px;
  left: 7px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.pull-right:before {
  left: auto;
  right: 6px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.pull-right:after {
  left: auto;
  right: 7px;
}
.bootstrap-datetimepicker-widget .list-unstyled {
  margin: 0;
}
.bootstrap-datetimepicker-widget a[data-action] {
  padding: 6px 0;
}
.bootstrap-datetimepicker-widget a[data-action]:active {
  box-shadow: none;
}
.bootstrap-datetimepicker-widget .timepicker-hour,
.bootstrap-datetimepicker-widget .timepicker-minute,
.bootstrap-datetimepicker-widget .timepicker-second {
  width: 54px;
  font-weight: bold;
  font-size: 1.2em;
  margin: 0;
}
.bootstrap-datetimepicker-widget button[data-action] {
  padding: 6px;
}
.bootstrap-datetimepicker-widget .btn[data-action="incrementHours"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Increment Hours";
}
.bootstrap-datetimepicker-widget .btn[data-action="incrementMinutes"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Increment Minutes";
}
.bootstrap-datetimepicker-widget .btn[data-action="decrementHours"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Decrement Hours";
}
.bootstrap-datetimepicker-widget .btn[data-action="decrementMinutes"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Decrement Minutes";
}
.bootstrap-datetimepicker-widget .btn[data-action="showHours"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Show Hours";
}
.bootstrap-datetimepicker-widget .btn[data-action="showMinutes"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Show Minutes";
}
.bootstrap-datetimepicker-widget .btn[data-action="togglePeriod"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Toggle AM/PM";
}
.bootstrap-datetimepicker-widget .btn[data-action="clear"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Clear the picker";
}
.bootstrap-datetimepicker-widget .btn[data-action="today"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Set the date to today";
}
.bootstrap-datetimepicker-widget .picker-switch {
  text-align: center;
}
.bootstrap-datetimepicker-widget .picker-switch::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Toggle Date and Time Screens";
}
.bootstrap-datetimepicker-widget .picker-switch td {
  padding: 0;
  margin: 0;
  height: auto;
  width: auto;
  line-height: inherit;
}
.bootstrap-datetimepicker-widget .picker-switch td span,
.bootstrap-datetimepicker-widget .picker-switch td i {
  line-height: 2.5;
  height: 2.5em;
  width: 100%;
}
.bootstrap-datetimepicker-widget table {
  width: 100%;
  margin: 0;
}
.bootstrap-datetimepicker-widget table td,
.bootstrap-datetimepicker-widget table th {
  text-align: center;
  border-radius: 0.25rem;
  padding: 0.5em;
}
.bootstrap-datetimepicker-widget table th {
  height: 20px;
  line-height: 20px;
  width: 20px;
}
.bootstrap-datetimepicker-widget table th.picker-switch {
  width: 145px;
}
.bootstrap-datetimepicker-widget table th.disabled,
.bootstrap-datetimepicker-widget table th.disabled:hover {
  background: none;
  color: #dee2e6;
  cursor: not-allowed;
}
.bootstrap-datetimepicker-widget table th.prev::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Previous Month";
}
.bootstrap-datetimepicker-widget table th.next::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Next Month";
}
.bootstrap-datetimepicker-widget table thead tr:first-child th {
  cursor: pointer;
}
.bootstrap-datetimepicker-widget table thead tr:first-child th:hover {
  background: #f8f9fa;
}
.bootstrap-datetimepicker-widget table td {
  height: 54px;
  line-height: 54px;
  width: 54px;
}
.bootstrap-datetimepicker-widget table td.cw {
  font-size: 0.8em;
  height: 20px;
  line-height: 20px;
  color: #dee2e6;
}
.bootstrap-datetimepicker-widget table td.day {
  height: 20px;
  line-height: 20px;
  width: 20px;
}
.bootstrap-datetimepicker-widget table td.day:hover,
.bootstrap-datetimepicker-widget table td.hour:hover,
.bootstrap-datetimepicker-widget table td.minute:hover,
.bootstrap-datetimepicker-widget table td.second:hover {
  background: #f8f9fa;
  cursor: pointer;
}
.bootstrap-datetimepicker-widget table td.old,
.bootstrap-datetimepicker-widget table td.new {
  color: #dee2e6;
}
.bootstrap-datetimepicker-widget table td.today {
  position: relative;
}
.bootstrap-datetimepicker-widget table td.today:before {
  content: '';
  display: inline-block;
  border: solid transparent;
  border-width: 0 0 7px 7px;
  border-bottom-color: #dee2e6;
  border-top-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  bottom: 4px;
  right: 4px;
}
.bootstrap-datetimepicker-widget table td.active,
.bootstrap-datetimepicker-widget table td.active:hover {
  background-color: #dee2e6;
  color: #007bff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.bootstrap-datetimepicker-widget table td.active.today:before {
  border-bottom-color: #fff;
}
.bootstrap-datetimepicker-widget table td.disabled,
.bootstrap-datetimepicker-widget table td.disabled:hover {
  background: none;
  color: #dee2e6;
  cursor: not-allowed;
}
.bootstrap-datetimepicker-widget table td span,
.bootstrap-datetimepicker-widget table td i {
  display: inline-block;
  width: 54px;
  height: 54px;
  line-height: 54px;
  margin: 2px 1.5px;
  cursor: pointer;
  border-radius: 0.25rem;
}
.bootstrap-datetimepicker-widget table td span:hover,
.bootstrap-datetimepicker-widget table td i:hover {
  background: #f8f9fa;
}
.bootstrap-datetimepicker-widget table td span.active,
.bootstrap-datetimepicker-widget table td i.active {
  background-color: #dee2e6;
  color: #007bff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.bootstrap-datetimepicker-widget table td span.old,
.bootstrap-datetimepicker-widget table td i.old {
  color: #dee2e6;
}
.bootstrap-datetimepicker-widget table td span.disabled,
.bootstrap-datetimepicker-widget table td i.disabled,
.bootstrap-datetimepicker-widget table td span.disabled:hover,
.bootstrap-datetimepicker-widget table td i.disabled:hover {
  background: none;
  color: #dee2e6;
  cursor: not-allowed;
}
.bootstrap-datetimepicker-widget.usetwentyfour td.hour {
  height: 27px;
  line-height: 27px;
}
.bootstrap-datetimepicker-widget.wider {
  width: 21em;
}
.bootstrap-datetimepicker-widget .datepicker-decades .decade {
  line-height: 1.8em !important;
}
.input-group.date .input-group-addon {
  cursor: pointer;
}
.input-group.date .input-group-text {
  cursor: pointer;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

:root{--vs-colors--lightest:rgba(60,60,60,0.26);--vs-colors--light:rgba(60,60,60,0.5);--vs-colors--dark:#333;--vs-colors--darkest:rgba(0,0,0,0.15);--vs-search-input-color:inherit;--vs-search-input-bg:#fff;--vs-search-input-placeholder-color:inherit;--vs-font-size:1rem;--vs-line-height:1.4;--vs-state-disabled-bg:#f8f8f8;--vs-state-disabled-color:var(--vs-colors--light);--vs-state-disabled-controls-color:var(--vs-colors--light);--vs-state-disabled-cursor:not-allowed;--vs-border-color:var(--vs-colors--lightest);--vs-border-width:1px;--vs-border-style:solid;--vs-border-radius:4px;--vs-actions-padding:4px 6px 0 3px;--vs-controls-color:var(--vs-colors--light);--vs-controls-size:1;--vs-controls--deselect-text-shadow:0 1px 0 #fff;--vs-selected-bg:#f0f0f0;--vs-selected-color:var(--vs-colors--dark);--vs-selected-border-color:var(--vs-border-color);--vs-selected-border-style:var(--vs-border-style);--vs-selected-border-width:var(--vs-border-width);--vs-dropdown-bg:#fff;--vs-dropdown-color:inherit;--vs-dropdown-z-index:1000;--vs-dropdown-min-width:160px;--vs-dropdown-max-height:350px;--vs-dropdown-box-shadow:0px 3px 6px 0px var(--vs-colors--darkest);--vs-dropdown-option-bg:#000;--vs-dropdown-option-color:var(--vs-dropdown-color);--vs-dropdown-option-padding:3px 20px;--vs-dropdown-option--active-bg:#5897fb;--vs-dropdown-option--active-color:#fff;--vs-dropdown-option--deselect-bg:#fb5858;--vs-dropdown-option--deselect-color:#fff;--vs-transition-timing-function:cubic-bezier(1,-0.115,0.975,0.855);--vs-transition-duration:150ms}.v-select{font-family:inherit;position:relative}.v-select,.v-select *{box-sizing:border-box}:root{--vs-transition-timing-function:cubic-bezier(1,0.5,0.8,1);--vs-transition-duration:0.15s}@-webkit-keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.vs__fade-enter-active,.vs__fade-leave-active{pointer-events:none;transition:opacity var(--vs-transition-duration) var(--vs-transition-timing-function)}.vs__fade-enter,.vs__fade-leave-to{opacity:0}:root{--vs-disabled-bg:var(--vs-state-disabled-bg);--vs-disabled-color:var(--vs-state-disabled-color);--vs-disabled-cursor:var(--vs-state-disabled-cursor)}.vs--disabled .vs__clear,.vs--disabled .vs__dropdown-toggle,.vs--disabled .vs__open-indicator,.vs--disabled .vs__search,.vs--disabled .vs__selected{background-color:var(--vs-disabled-bg);cursor:var(--vs-disabled-cursor)}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .vs__clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .vs__deselect{margin-left:0;margin-right:2px}.v-select[dir=rtl] .vs__dropdown-menu{text-align:right}.vs__dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--vs-search-input-bg);border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:var(--vs-border-radius);display:flex;padding:0 0 4px;white-space:normal}.vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;padding:0 2px;position:relative}.vs__actions{align-items:center;display:flex;padding:var(--vs-actions-padding)}.vs--searchable .vs__dropdown-toggle{cursor:text}.vs--unsearchable .vs__dropdown-toggle{cursor:pointer}.vs--open .vs__dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.vs__open-indicator{fill:var(--vs-controls-color);transform:scale(var(--vs-controls-size));transition:transform var(--vs-transition-duration) var(--vs-transition-timing-function);transition-timing-function:var(--vs-transition-timing-function)}.vs--open .vs__open-indicator{transform:rotate(180deg) scale(var(--vs-controls-size))}.vs--loading .vs__open-indicator{opacity:0}.vs__clear{fill:var(--vs-controls-color);background-color:transparent;border:0;cursor:pointer;margin-right:8px;padding:0}.vs__dropdown-menu{background:var(--vs-dropdown-bg);border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:0 0 var(--vs-border-radius) var(--vs-border-radius);border-top-style:none;box-shadow:var(--vs-dropdown-box-shadow);box-sizing:border-box;color:var(--vs-dropdown-color);display:block;left:0;list-style:none;margin:0;max-height:var(--vs-dropdown-max-height);min-width:var(--vs-dropdown-min-width);overflow-y:auto;padding:5px 0;position:absolute;text-align:left;top:calc(100% - var(--vs-border-width));width:100%;z-index:var(--vs-dropdown-z-index)}.vs__no-options{text-align:center}.vs__dropdown-option{clear:both;color:var(--vs-dropdown-option-color);cursor:pointer;display:block;line-height:1.42857143;padding:var(--vs-dropdown-option-padding);white-space:nowrap}.vs__dropdown-option--highlight{background:var(--vs-dropdown-option--active-bg);color:var(--vs-dropdown-option--active-color)}.vs__dropdown-option--deselect{background:var(--vs-dropdown-option--deselect-bg);color:var(--vs-dropdown-option--deselect-color)}.vs__dropdown-option--disabled{background:var(--vs-state-disabled-bg);color:var(--vs-state-disabled-color);cursor:var(--vs-state-disabled-cursor)}.vs__selected{align-items:center;background-color:var(--vs-selected-bg);border:var(--vs-selected-border-width) var(--vs-selected-border-style) var(--vs-selected-border-color);border-radius:var(--vs-border-radius);color:var(--vs-selected-color);display:flex;line-height:var(--vs-line-height);margin:4px 2px 0;padding:0 .25em;z-index:0}.vs__deselect{fill:var(--vs-controls-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;cursor:pointer;display:inline-flex;margin-left:4px;padding:0;text-shadow:var(--vs-controls--deselect-text-shadow)}.vs--single .vs__selected{background-color:transparent;border-color:transparent}.vs--single.vs--loading .vs__selected,.vs--single.vs--open .vs__selected{opacity:.4;position:absolute}.vs--single.vs--searching .vs__selected{display:none}.vs__search::-webkit-search-cancel-button{display:none}.vs__search::-ms-clear,.vs__search::-webkit-search-decoration,.vs__search::-webkit-search-results-button,.vs__search::-webkit-search-results-decoration{display:none}.vs__search,.vs__search:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid transparent;border-left:none;box-shadow:none;color:var(--vs-search-input-color);flex-grow:1;font-size:var(--vs-font-size);line-height:var(--vs-line-height);margin:4px 0 0;max-width:100%;outline:none;padding:0 7px;width:0;z-index:1}.vs__search::-moz-placeholder{color:var(--vs-search-input-placeholder-color)}.vs__search:-ms-input-placeholder{color:var(--vs-search-input-placeholder-color)}.vs__search::placeholder{color:var(--vs-search-input-placeholder-color)}.vs--unsearchable .vs__search{opacity:1}.vs--unsearchable:not(.vs--disabled) .vs__search{cursor:pointer}.vs--single.vs--searching:not(.vs--open):not(.vs--loading) .vs__search{opacity:.2}.vs__spinner{align-self:center;-webkit-animation:vSelectSpinner 1.1s linear infinite;animation:vSelectSpinner 1.1s linear infinite;border:.9em solid hsla(0,0%,39%,.1);border-left-color:rgba(60,60,60,.45);font-size:5px;opacity:0;overflow:hidden;text-indent:-9999em;transform:translateZ(0) scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));transition:opacity .1s}.vs__spinner,.vs__spinner:after{border-radius:50%;height:5em;transform:scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));width:5em}.vs--loading .vs__spinner{opacity:1}

/*# sourceMappingURL=vue-select.css.map*/
/*!
 * Copyright (c) HANDSONCODE sp. z o. o.
 * 
 * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in
 * Gdynia, Poland, at Aleja Zwycięstwa 96-98, registered by the District Court in Gdansk under number
 * 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
 * 
 * This software is protected by applicable copyright laws, including international treaties, and dual-
 * licensed – depending on whether your use for commercial purposes, meaning intended for or
 * resulting in commercial advantage or monetary compensation, or not.
 * 
 * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing
 * the suitability, performance, and usefulness of this software outside the production environment,
 * you agree to be bound by the terms included in the "handsontable-non-commercial-license.pdf" file.
 * 
 * Your use of this software for commercial purposes is subject to the terms included in an applicable
 * license agreement.
 * 
 * In any case, you must not make any such use of this software as to develop software which may be
 * considered competitive with this software.
 * 
 * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
 * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
 * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
 * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
 * USE OR INABILITY TO USE THIS SOFTWARE.
 * 
 * Version: 12.3.0
 * Release date: 14/12/2022 (built at 14/12/2022 12:26:46)
 */
/**
 * Fix for bootstrap styles
 */
.handsontable .table th, .handsontable .table td {
  border-top: none;
}

.handsontable tr {
  background: #fff;
}

.handsontable td {
  background-color: inherit;
}

.handsontable .table caption + thead tr:first-child th,
.handsontable .table caption + thead tr:first-child td,
.handsontable .table colgroup + thead tr:first-child th,
.handsontable .table colgroup + thead tr:first-child td,
.handsontable .table thead:first-child tr:first-child th,
.handsontable .table thead:first-child tr:first-child td {
  border-top: 1px solid #CCCCCC;
}

/* table-bordered */
.handsontable .table-bordered {
  border: 0;
  border-collapse: separate;
}

.handsontable .table-bordered th,
.handsontable .table-bordered td {
  border-left: none;
}

.handsontable .table-bordered th:first-child,
.handsontable .table-bordered td:first-child {
  border-left: 1px solid #CCCCCC;
}

.handsontable .table > tbody > tr > td,
.handsontable .table > tbody > tr > th,
.handsontable .table > tfoot > tr > td,
.handsontable .table > tfoot > tr > th,
.handsontable .table > thead > tr > td,
.handsontable .table > thead > tr > th {
  line-height: 21px;
  padding: 0;
}

.col-lg-1.handsontable, .col-lg-10.handsontable, .col-lg-11.handsontable, .col-lg-12.handsontable,
.col-lg-2.handsontable, .col-lg-3.handsontable, .col-lg-4.handsontable, .col-lg-5.handsontable, .col-lg-6.handsontable, .col-lg-7.handsontable, .col-lg-8.handsontable, .col-lg-9.handsontable,
.col-md-1.handsontable, .col-md-10.handsontable, .col-md-11.handsontable, .col-md-12.handsontable,
.col-md-2.handsontable, .col-md-3.handsontable, .col-md-4.handsontable, .col-md-5.handsontable, .col-md-6.handsontable, .col-md-7.handsontable, .col-md-8.handsontable, .col-md-9.handsontable .col-sm-1.handsontable,
.col-sm-10.handsontable, .col-sm-11.handsontable, .col-sm-12.handsontable,
.col-sm-2.handsontable, .col-sm-3.handsontable, .col-sm-4.handsontable, .col-sm-5.handsontable, .col-sm-6.handsontable, .col-sm-7.handsontable, .col-sm-8.handsontable, .col-sm-9.handsontable .col-xs-1.handsontable,
.col-xs-10.handsontable, .col-xs-11.handsontable, .col-xs-12.handsontable,
.col-xs-2.handsontable, .col-xs-3.handsontable, .col-xs-4.handsontable, .col-xs-5.handsontable, .col-xs-6.handsontable, .col-xs-7.handsontable, .col-xs-8.handsontable, .col-xs-9.handsontable {
  padding-left: 0;
  padding-right: 0;
}

.handsontable .table-striped > tbody > tr:nth-of-type(even) {
  background-color: #FFF;
}
.handsontable {
  position: relative;
}

.handsontable .hide {
  display: none;
}

.handsontable .relative {
  position: relative;
}

.handsontable .wtHider {
  width: 0;
}

.handsontable .wtSpreader {
  position: relative;
  /*must be 0, otherwise blank space appears in scroll demo after scrolling max to the right */
  width: 0;
  height: auto;
}

.handsontable table,
.handsontable tbody,
.handsontable thead,
.handsontable td,
.handsontable th,
.handsontable input,
.handsontable textarea,
.handsontable div {
  box-sizing: content-box;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
}

.handsontable input,
.handsontable textarea {
  min-height: initial;
}

.handsontable table.htCore {
  border-collapse: separate;
  /* it must be separate, otherwise there are offset miscalculations in WebKit: http://stackoverflow.com/questions/2655987/border-collapse-differences-in-ff-and-webkit */
  /* this actually only changes appearance of user selection - does not make text unselectable */
  /* -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    -ms-user-select: none;
    user-select: none; // no browser supports unprefixed version
  */
  border-spacing: 0;
  margin: 0;
  border-width: 0;
  table-layout: fixed;
  width: 0;
  outline-width: 0;
  cursor: default;
  /* reset bootstrap table style. for more info see: https://github.com/handsontable/handsontable/issues/224 */
  max-width: none;
  max-height: none;
}

.handsontable col {
  width: 50px;
}

.handsontable col.rowHeader {
  width: 50px;
}

.handsontable th,
.handsontable td {
  border-top-width: 0;
  border-left-width: 0;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  height: 22px;
  empty-cells: show;
  line-height: 21px;
  padding: 0 4px 0 4px;
  /* top, bottom padding different than 0 is handled poorly by FF with HTML5 doctype */
  background-color: #fff;
  vertical-align: top;
  overflow: hidden;
  outline-width: 0;
  white-space: pre-wrap;
}

[dir=rtl].handsontable th, [dir=rtl].handsontable td {
  border-right-width: 0;
  border-left: 1px solid #ccc;
}

.handsontable th:last-child {
  /*Foundation framework fix*/
  border-left: none;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

[dir=rtl].handsontable th:last-child {
  /*Foundation framework fix*/
  border-right: none;
  border-left: 1px solid #ccc;
}

.handsontable th:first-child,
.handsontable th:nth-child(2),
.handsontable td:first-of-type {
  border-left: 1px solid #ccc;
}

[dir=rtl].handsontable th:first-child, [dir=rtl].handsontable th:nth-child(2), [dir=rtl].handsontable td:first-of-type {
  border-right: 1px solid #ccc;
}

/* It removes double right border from first column header when row headers are disabled */
.handsontable .ht_clone_top th:nth-child(2) {
  border-left-width: 0;
  border-right: 1px solid #ccc;
}

[dir=rtl].handsontable .ht_clone_top th:nth-child(2) {
  border-right-width: 0;
  border-left: 1px solid #ccc;
}

.handsontable.htRowHeaders thead tr th:nth-child(2) {
  border-left: 1px solid #ccc;
}

[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2) {
  border-right: 1px solid #ccc;
}

.handsontable tr:first-child th,
.handsontable tr:first-child td {
  border-top: 1px solid #ccc;
}

.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable tbody tr th,
.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child {
  border-right-width: 0;
  border-left: 1px solid #ccc;
}

[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable tbody tr th, [dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child {
  border-left-width: 0;
  border-right: 1px solid #ccc;
}

/*
innerBorderTop - Property controlled by top overlay
innerBorderBottom - Property controlled by bottom overlay
 */
.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,
.ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable thead tr:last-child th,
.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,
.ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable thead tr.lastChild th {
  border-bottom-width: 0;
}

.handsontable th {
  background-color: #f0f0f0;
  color: #222;
  text-align: center;
  font-weight: normal;
  white-space: nowrap;
}

.handsontable thead th {
  padding: 0;
}

.handsontable th.active {
  background-color: #ccc;
}

.handsontable thead th .relative {
  padding: 2px 4px;
}

.handsontable span.colHeader {
  display: inline-block;
  line-height: 1.1;
}

/* Selection */
.handsontable .wtBorder {
  position: absolute;
  font-size: 0;
}

.handsontable .wtBorder.hidden {
  display: none !important;
}

/* A layer order of the selection types */
.handsontable .wtBorder.current {
  z-index: 10;
}

.handsontable .wtBorder.area {
  z-index: 8;
}

.handsontable .wtBorder.fill {
  z-index: 6;
}

/* fill handle */
.handsontable .wtBorder.corner {
  font-size: 0;
  cursor: crosshair;
}

.ht_clone_master {
  z-index: 100;
}

.ht_clone_inline_start {
  z-index: 120;
}

.ht_clone_bottom {
  z-index: 130;
}

.ht_clone_bottom_inline_start_corner {
  z-index: 150;
}

.ht_clone_top {
  z-index: 160;
}

.ht_clone_top_inline_start_corner {
  z-index: 180;
}

.handsontable col.hidden {
  width: 0 !important;
}

.handsontable tr.hidden,
.handsontable tr.hidden td,
.handsontable tr.hidden th {
  display: none;
}

.ht_master,
.ht_clone_inline_start,
.ht_clone_top,
.ht_clone_bottom {
  overflow: hidden;
}

.ht_master .wtHolder {
  overflow: auto;
}

.handsontable .ht_master thead,
.handsontable .ht_master tr th,
.handsontable .ht_clone_inline_start thead {
  visibility: hidden;
}

.ht_clone_top .wtHolder,
.ht_clone_inline_start .wtHolder,
.ht_clone_bottom .wtHolder {
  overflow: hidden;
}
@charset "UTF-8";
.handsontable {
  touch-action: manipulation;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Helvetica Neue", Arial, sans-serif;
  font-size: 13px;
  font-weight: normal;
  color: #373737;
}

.handsontable a {
  color: #104acc;
}

.handsontable.htAutoSize {
  visibility: hidden;
  left: -99000px;
  position: absolute;
  top: -99000px;
}

.handsontable td.htInvalid {
  /*gives priority over td.area selection background*/
  background-color: #ff4c42 !important;
}

.handsontable td.htNoWrap {
  white-space: nowrap;
}

#hot-display-license-info {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Helvetica Neue", Arial, sans-serif;
  font-size: 10px;
  font-weight: normal;
  color: #373737;
  padding: 5px 0 3px 0;
  text-align: left;
}

#hot-display-license-info a {
  color: #104acc;
  font-size: 10px;
}

/* plugins */
/* row + column resizer*/
.handsontable .manualColumnResizer {
  position: absolute;
  top: 0;
  cursor: col-resize;
  z-index: 210;
  width: 5px;
  height: 25px;
}

.handsontable .manualRowResizer {
  position: absolute;
  left: 0;
  cursor: row-resize;
  z-index: 210;
  height: 5px;
  width: 50px;
}

.handsontable .manualColumnResizer:hover,
.handsontable .manualColumnResizer.active,
.handsontable .manualRowResizer:hover,
.handsontable .manualRowResizer.active {
  background-color: #34a9db;
}

.handsontable .manualColumnResizerGuide {
  position: absolute;
  right: unset;
  top: 0;
  background-color: #34a9db;
  display: none;
  width: 0;
  border-right: 1px dashed #777;
  border-left: none;
  margin-left: 5px;
  margin-right: unset;
}

[dir=rtl].handsontable .manualColumnResizerGuide {
  left: unset;
  border-left: 1px dashed #777;
  border-right: none;
  margin-right: 5px;
  margin-left: unset;
}

.handsontable .manualRowResizerGuide {
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #34a9db;
  display: none;
  height: 0;
  border-bottom: 1px dashed #777;
  margin-top: 5px;
}

.handsontable .manualColumnResizerGuide.active,
.handsontable .manualRowResizerGuide.active {
  display: block;
  z-index: 209;
}

.handsontable .columnSorting {
  position: relative;
}

.handsontable .columnSorting.sortAction:hover {
  text-decoration: underline;
  cursor: pointer;
} /* Arrow position */
.handsontable span.colHeader.columnSorting::before {
  /* Centering start */
  top: 50%;
  /* One extra pixel for purpose of proper positioning of sorting arrow, when `font-size` set to default */
  margin-top: -6px;
  /* Centering end */
  /* For purpose of continuous mouse over experience, when moving between the `span` and the `::before` elements */
  padding-left: 8px;
  padding-right: 0;
  position: absolute;
  right: -9px;
  left: unset;
  content: "";
  height: 10px;
  width: 5px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position-x: right;
}

[dir=rtl].handsontable span.colHeader.columnSorting::before {
  /* Centering end */
  /* For purpose of continuous mouse over experience, when moving between the `span` and the `::before` elements */
  padding-right: 8px;
  padding-left: 0;
  left: -9px;
  right: unset;
  background-position-x: left;
}

.handsontable span.colHeader.columnSorting.ascending::before {
  /* arrow up; 20 x 40 px, scaled to 5 x 10 px; base64 size: 0.3kB */
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC");
}

.handsontable span.colHeader.columnSorting.descending::before {
  /* arrow down; 20 x 40 px, scaled to 5 x 10 px; base64 size: 0.3kB */
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=");
}

.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled)::after {
  content: "*";
  display: inline-block;
  position: relative;
  /* The multi-line header and header with longer text need more padding to not hide arrow,
  we make header wider in `GhostTable` to make some space for arrow which is positioned absolutely in the main table */
  padding-right: 20px;
}

.handsontable td.area,
.handsontable td.area-1,
.handsontable td.area-2,
.handsontable td.area-3,
.handsontable td.area-4,
.handsontable td.area-5,
.handsontable td.area-6,
.handsontable td.area-7 {
  position: relative;
}

.handsontable td.area:before,
.handsontable td.area-1:before,
.handsontable td.area-2:before,
.handsontable td.area-3:before,
.handsontable td.area-4:before,
.handsontable td.area-5:before,
.handsontable td.area-6:before,
.handsontable td.area-7:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* Fix for IE9 to spread the ":before" pseudo element to 100% height of the parent element */
  bottom: -100% \9 ;
  background: #005eff;
}

/* Fix for IE10 and IE11 to spread the ":before" pseudo element to 100% height of the parent element */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .handsontable td.area:before,
  .handsontable td.area-1:before,
  .handsontable td.area-2:before,
  .handsontable td.area-3:before,
  .handsontable td.area-4:before,
  .handsontable td.area-5:before,
  .handsontable td.area-6:before,
  .handsontable td.area-7:before {
    bottom: -100%;
  }
}
.handsontable td.area:before {
  opacity: 0.1;
}

.handsontable td.area-1:before {
  opacity: 0.2;
}

.handsontable td.area-2:before {
  opacity: 0.27;
}

.handsontable td.area-3:before {
  opacity: 0.35;
}

.handsontable td.area-4:before {
  opacity: 0.41;
}

.handsontable td.area-5:before {
  opacity: 0.47;
}

.handsontable td.area-6:before {
  opacity: 0.54;
}

.handsontable td.area-7:before {
  opacity: 0.58;
}

.handsontable tbody th.ht__highlight,
.handsontable thead th.ht__highlight {
  background-color: #dcdcdc;
}

.handsontable tbody th.ht__active_highlight,
.handsontable thead th.ht__active_highlight {
  background-color: #8eb0e7;
  color: #000;
}

.handsontableInput {
  border: none;
  outline-width: 0;
  margin: 0;
  padding: 1px 5px 0 5px;
  font-family: inherit;
  line-height: 21px;
  font-size: inherit;
  box-shadow: 0 0 0 2px #5292F7 inset;
  resize: none;
  /*below are needed to overwrite stuff added by jQuery UI Bootstrap theme*/
  display: block;
  color: #000;
  border-radius: 0;
  background-color: #FFF;
  /*overwrite styles potentionally made by a framework*/
}

.handsontableInput:focus {
  outline: none;
}

.handsontableInputHolder {
  position: absolute;
  top: 0;
  left: 0;
}

.htSelectEditor {
  -webkit-appearance: menulist-button !important;
  position: absolute;
  width: auto;
}

.htSelectEditor:focus {
  outline: none;
}

/*
TextRenderer readOnly cell
*/
.handsontable .htDimmed {
  color: #777;
}

.handsontable .htSubmenu {
  position: relative;
}

.handsontable .htSubmenu :after {
  content: "▶";
  color: #777;
  position: absolute;
  right: 5px;
  font-size: 9px;
}

[dir=rtl].handsontable .htSubmenu :after {
  content: "";
}

[dir=rtl].handsontable .htSubmenu :before {
  content: "◀";
  color: #777;
  position: absolute;
  left: 5px;
  font-size: 9px;
}

/*
TextRenderer horizontal alignment
*/
.handsontable .htLeft {
  text-align: left;
}

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

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

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

/*
TextRenderer vertical alignment
*/
.handsontable .htTop {
  vertical-align: top;
}

.handsontable .htMiddle {
  vertical-align: middle;
}

.handsontable .htBottom {
  vertical-align: bottom;
}

/*
TextRenderer placeholder value
*/
.handsontable .htPlaceholder {
  color: #999;
}

/**
 * Handsontable listbox theme
 */
.handsontable.listbox {
  margin: 0;
}

.handsontable.listbox .ht_master table {
  border: 1px solid #ccc;
  border-collapse: separate;
  background: white;
}

.handsontable.listbox th,
.handsontable.listbox tr:first-child th,
.handsontable.listbox tr:last-child th,
.handsontable.listbox tr:first-child td,
.handsontable.listbox td {
  border-color: transparent !important;
}

.handsontable.listbox th,
.handsontable.listbox td {
  white-space: nowrap;
  text-overflow: ellipsis;
}

.handsontable.listbox td.htDimmed {
  cursor: default;
  color: inherit;
  font-style: inherit;
}

.handsontable.listbox .wtBorder {
  visibility: hidden;
}

.handsontable.listbox tr td.current,
.handsontable.listbox tr:hover td {
  background: #eee;
}

.ht_editor_hidden {
  z-index: -1;
}

.ht_editor_visible {
  z-index: 200;
}

.handsontable td.htSearchResult {
  background: #fcedd9;
  color: #583707;
}

.handsontable .collapsibleIndicator {
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
  left: unset;
  right: 5px;
  border: 1px solid #A6A6A6;
  line-height: 8px;
  color: #222;
  border-radius: 10px;
  font-size: 10px;
  width: 10px;
  height: 10px;
  cursor: pointer;
  box-shadow: 0 0 0 6px rgb(238, 238, 238);
  background: #eee;
  text-align: center;
}

[dir=rtl].handsontable .collapsibleIndicator {
  right: unset;
  left: 5px;
}
/*

 Handsontable Mobile Text Editor stylesheet

 */
.handsontable.mobile,
.handsontable.mobile .wtHolder {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-overflow-scrolling: touch;
}

.handsontable.mobile .handsontableInput:focus {
  box-shadow: 0 0 0 2px #5292f7 inset;
  -webkit-appearance: none;
}

.topSelectionHandle:not(.ht_master .topSelectionHandle),
.topSelectionHandle-HitArea:not(.ht_master .topSelectionHandle-HitArea) {
  z-index: 9999;
}

/* Initial left/top coordinates - overwritten when actual position is set */
.handsontable .topSelectionHandle,
.handsontable .topSelectionHandle-HitArea,
.handsontable .bottomSelectionHandle,
.handsontable .bottomSelectionHandle-HitArea {
  left: -10000px;
  right: unset;
  top: -10000px;
}

[dir=rtl].handsontable .topSelectionHandle, [dir=rtl].handsontable .topSelectionHandle-HitArea, [dir=rtl].handsontable .bottomSelectionHandle, [dir=rtl].handsontable .bottomSelectionHandle-HitArea {
  right: -10000px;
  left: unset;
}

.handsontable.hide-tween {
  -webkit-animation: opacity-hide 0.3s;
  animation: opacity-hide 0.3s;
  animation-fill-mode: forwards;
  -webkit-animation-fill-mode: forwards;
}

.handsontable.show-tween {
  -webkit-animation: opacity-show 0.3s;
  animation: opacity-show 0.3s;
  animation-fill-mode: forwards;
  -webkit-animation-fill-mode: forwards;
}
@charset "UTF-8";
/*!
 * Pikaday
 * Copyright © 2014 David Bushell | BSD & MIT license | https://dbushell.com/
 */
.pika-single {
  z-index: 9999;
  display: block;
  position: relative;
  color: #333;
  background: #fff;
  border: 1px solid #ccc;
  border-bottom-color: #bbb;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/*
clear child float (pika-lendar), using the famous micro clearfix hack
http://nicolasgallagher.com/micro-clearfix-hack/
*/
.pika-single:before,
.pika-single:after {
  content: " ";
  display: table;
}

.pika-single:after {
  clear: both;
}

.pika-single.is-hidden {
  display: none;
}

.pika-single.is-bound {
  position: absolute;
  box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5);
}

.pika-lendar {
  float: left;
  width: 240px;
  margin: 8px;
}

.pika-title {
  position: relative;
  text-align: center;
}

.pika-label {
  display: inline-block;
  position: relative;
  z-index: 9999;
  overflow: hidden;
  margin: 0;
  padding: 5px 3px;
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
  background-color: #fff;
}

.pika-title select {
  cursor: pointer;
  position: absolute;
  z-index: 9998;
  margin: 0;
  left: 0;
  top: 5px;
  opacity: 0;
}

.pika-prev,
.pika-next {
  display: block;
  cursor: pointer;
  position: relative;
  outline: none;
  border: 0;
  padding: 0;
  width: 20px;
  height: 30px;
  /* hide text using text-indent trick, using width value (it's enough) */
  text-indent: 20px;
  white-space: nowrap;
  overflow: hidden;
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 75% 75%;
  opacity: 0.5;
}

.pika-prev:hover,
.pika-next:hover {
  opacity: 1;
}

.pika-prev,
.is-rtl .pika-next {
  float: left;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
}

.pika-next,
.is-rtl .pika-prev {
  float: right;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
}

.pika-prev.is-disabled,
.pika-next.is-disabled {
  cursor: default;
  opacity: 0.2;
}

.pika-select {
  display: inline-block;
}

.pika-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0;
}

.pika-table th,
.pika-table td {
  width: 14.2857142857%;
  padding: 0;
}

.pika-table th {
  color: #999;
  font-size: 12px;
  line-height: 25px;
  font-weight: bold;
  text-align: center;
}

.pika-button {
  cursor: pointer;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  outline: none;
  border: 0;
  margin: 0;
  width: 100%;
  padding: 5px;
  color: #666;
  font-size: 12px;
  line-height: 15px;
  text-align: right;
  background: #f5f5f5;
  height: initial;
}

.pika-week {
  font-size: 11px;
  color: #999;
}

.is-today .pika-button {
  color: #33aaff;
  font-weight: bold;
}

.is-selected .pika-button,
.has-event .pika-button {
  color: #fff;
  font-weight: bold;
  background: #33aaff;
  box-shadow: inset 0 1px 3px #178fe5;
  border-radius: 3px;
}

.has-event .pika-button {
  background: #005da9;
  box-shadow: inset 0 1px 3px #0076c9;
}

.is-disabled .pika-button,
.is-inrange .pika-button {
  background: #D5E9F7;
}

.is-startrange .pika-button {
  color: #fff;
  background: #6CB31D;
  box-shadow: none;
  border-radius: 3px;
}

.is-endrange .pika-button {
  color: #fff;
  background: #33aaff;
  box-shadow: none;
  border-radius: 3px;
}

.is-disabled .pika-button {
  pointer-events: none;
  cursor: default;
  color: #999;
  opacity: 0.3;
}

.is-outside-current-month .pika-button {
  color: #999;
  opacity: 0.3;
}

.is-selection-disabled {
  pointer-events: none;
  cursor: default;
}

.pika-button:hover,
.pika-row.pick-whole-week:hover .pika-button {
  color: #fff;
  background: #ff8000;
  box-shadow: none;
  border-radius: 3px;
}

/* styling for abbr */
.pika-table abbr {
  border-bottom: none;
  cursor: help;
}
/*
AutocompleteRenderer down arrow
*/
.handsontable .htAutocompleteArrow {
  float: right;
  font-size: 10px;
  color: #EEE;
  cursor: default;
  width: 16px;
  text-align: center;
}

[dir=rtl].handsontable .htAutocompleteArrow {
  float: left;
}

.handsontable td .htAutocompleteArrow:hover {
  color: #777;
}

.handsontable td.area .htAutocompleteArrow {
  color: #d3d3d3;
}
/*
CheckboxRenderer
*/
.handsontable .htCheckboxRendererInput {
  display: inline-block;
}

.handsontable .htCheckboxRendererInput.noValue {
  opacity: 0.5;
}

.handsontable .htCheckboxRendererLabel {
  font-size: inherit;
  vertical-align: middle;
  cursor: pointer;
  display: inline-block;
}

.handsontable .htCheckboxRendererLabel.fullWidth {
  width: 100%;
}
.handsontable .htCommentCell {
  position: relative;
}

.handsontable .htCommentCell:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: unset;
  border-left: 6px solid transparent;
  border-right: none;
  border-top: 6px solid black;
}

[dir=rtl].handsontable .htCommentCell:after {
  left: 0;
  right: unset;
  border-right: 6px solid transparent;
  border-left: none;
}

.htCommentsContainer .htComments {
  display: none;
  z-index: 1059;
  position: absolute;
}

.htCommentsContainer .htCommentTextArea {
  box-shadow: rgba(0, 0, 0, 0.117647) 0 1px 3px, rgba(0, 0, 0, 0.239216) 0 1px 2px;
  box-sizing: border-box;
  border: none;
  border-left: 3px solid #ccc;
  border-right: none;
  background-color: #fff;
  width: 215px;
  height: 90px;
  font-size: 12px;
  padding: 5px;
  outline: 0px !important;
  -webkit-appearance: none;
}

[dir=rtl].htCommentsContainer .htCommentTextArea {
  border-right: 3px solid #ccc;
  border-left: none;
}

.htCommentsContainer .htCommentTextArea:focus {
  box-shadow: rgba(0, 0, 0, 0.117647) 0 1px 3px, rgba(0, 0, 0, 0.239216) 0 1px 2px, inset 0 0 0 1px #5292f7;
  border-left: 3px solid #5292f7;
  border-right: none;
}

[dir=rtl].htCommentsContainer .htCommentTextArea:focus {
  border-right: 3px solid #5292f7;
  border-left: none;
}
/*!
 * Handsontable ContextMenu
 */
.htContextMenu:not(.htGhostTable) {
  display: none;
  position: absolute;
  /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */
  z-index: 1060;
}

.htContextMenu .ht_clone_top,
.htContextMenu .ht_clone_bottom,
.htContextMenu .ht_clone_inline_start,
.htContextMenu .ht_clone_top_inline_start_corner,
.htContextMenu .ht_clone_bottom_inline_start_corner {
  display: none;
}

.htContextMenu .ht_master table.htCore {
  border-color: #ccc;
  border-style: solid;
  border-top-width: 1px;
  border-bottom-width: 2px;
  border-left-width: 1px;
  border-right-width: 2px;
}

[dir=rtl].htContextMenu .ht_master table.htCore {
  border-right-width: 1px;
  border-left-width: 2px;
}

.htContextMenu .wtBorder {
  visibility: hidden;
}

.htContextMenu table tbody tr td {
  background: white;
  border-width: 0;
  padding: 4px 6px 0 6px;
  cursor: pointer;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.htContextMenu table tbody tr td:first-child {
  border-top-width: 0;
  border-bottom-width: 0;
  border-left-width: 0;
  border-right-width: 0;
}

[dir=rtl].htContextMenu table tbody tr td:first-child {
  border-right-width: 0;
  border-left-width: 0;
}

.htContextMenu table tbody tr td.htDimmed {
  font-style: normal;
  color: #323232;
}

.htContextMenu table tbody tr td.current,
.htContextMenu table tbody tr td.zeroclipboard-is-hover {
  background: #f3f3f3;
}

.htContextMenu table tbody tr td.htSeparator {
  border-top: 1px solid #e6e6e6;
  height: 0;
  padding: 0;
  cursor: default;
}

.htContextMenu table tbody tr td.htDisabled {
  color: #999;
  cursor: default;
}

.htContextMenu table tbody tr td.htDisabled:hover {
  background: #fff;
  color: #999;
  cursor: default;
}

.htContextMenu table tbody tr.htHidden {
  display: none;
}

.htContextMenu table tbody tr td .htItemWrapper {
  margin-left: 10px;
  margin-right: 6px;
}

.htContextMenu table tbody tr td div span.selected {
  margin-top: -2px;
  position: absolute;
  left: 4px;
}

.htContextMenu .ht_master .wtHolder {
  overflow: hidden;
}
textarea.HandsontableCopyPaste {
  position: fixed !important;
  top: 0 !important;
  right: 100% !important;
  overflow: hidden;
  opacity: 0;
  outline: 0 none !important;
}
@charset "UTF-8";
/*!
 * Handsontable DropdownMenu
 */
.handsontable .changeType {
  background: #eee;
  border-radius: 2px;
  border: 1px solid #bbb;
  color: #bbb;
  font-size: 9px;
  line-height: 9px;
  padding: 2px;
  margin: 3px 1px 0 5px;
  float: right;
}

[dir=rtl].handsontable .changeType {
  float: left;
}

.handsontable .changeType:before {
  content: "▼ ";
}

.handsontable .changeType:hover {
  border: 1px solid #777;
  color: #777;
  cursor: pointer;
}

.htDropdownMenu:not(.htGhostTable) {
  display: none;
  position: absolute;
  /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */
  z-index: 1060;
}

.htDropdownMenu .ht_clone_top,
.htDropdownMenu .ht_clone_bottom,
.htDropdownMenu .ht_clone_inline_start,
.htDropdownMenu .ht_clone_top_inline_start_corner,
.htDropdownMenu .ht_clone_bottom_inline_start_corner {
  display: none;
}

.htDropdownMenu table.htCore {
  border-color: #ccc;
  border-style: solid;
  border-top-width: 1px;
  border-bottom-width: 2px;
  border-left-width: 1px;
  border-right-width: 2px;
}

[dir=rtl].htDropdownMenu table.htCore {
  border-right-width: 1px;
  border-left-width: 2px;
}

.htDropdownMenu .wtBorder {
  visibility: hidden;
}

.htDropdownMenu table tbody tr td {
  background: white;
  border-width: 0;
  padding: 4px 6px 0 6px;
  cursor: pointer;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.htDropdownMenu table tbody tr td:first-child {
  border-top-width: 0;
  border-right-width: 0;
  border-bottom-width: 0;
  border-left-width: 0;
}

[dir=rtl].htDropdownMenu table tbody tr td:first-child {
  border-left-width: 0;
  border-right-width: 0;
}

.htDropdownMenu table tbody tr td.htDimmed {
  font-style: normal;
  color: #323232;
}

.htDropdownMenu table tbody tr td.current,
.htDropdownMenu table tbody tr td.zeroclipboard-is-hover {
  background: #e9e9e9;
}

.htDropdownMenu table tbody tr td.htSeparator {
  border-top: 1px solid #e6e6e6;
  height: 0;
  padding: 0;
  cursor: default;
}

.htDropdownMenu table tbody tr td.htDisabled {
  color: #999;
}

.htDropdownMenu table tbody tr td.htDisabled:hover {
  background: #fff;
  color: #999;
  cursor: default;
}

.htDropdownMenu:not(.htGhostTable) table tbody tr.htHidden {
  display: none;
}

.htDropdownMenu table tbody tr td .htItemWrapper {
  margin-left: 10px;
  margin-right: 10px;
}

.htDropdownMenu table tbody tr td div span.selected {
  margin-top: -2px;
  position: absolute;
  left: 4px;
}

.htDropdownMenu .ht_master .wtHolder {
  overflow: hidden;
}
@charset "UTF-8";
/*!
 * Handsontable Filters
 */
/* Conditions menu */
.htFiltersConditionsMenu:not(.htGhostTable) {
  display: none;
  position: absolute;
  z-index: 1070;
}

.htFiltersConditionsMenu .ht_clone_top,
.htFiltersConditionsMenu .ht_clone_inline_start,
.htFiltersConditionsMenu .ht_clone_corner {
  display: none;
}

.htFiltersConditionsMenu table.htCore {
  border: 1px solid #bbb;
  border-bottom-width: 2px;
  border-right-width: 2px;
}

.htFiltersConditionsMenu .wtBorder {
  visibility: hidden;
}

.htFiltersConditionsMenu table tbody tr td {
  background: white;
  border-width: 0;
  padding: 4px 6px 0 6px;
  cursor: pointer;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.htFiltersConditionsMenu table tbody tr td:first-child {
  border-top-width: 0;
  border-right-width: 0;
  border-bottom-width: 0;
  border-left-width: 0;
}

[dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child {
  border-left-width: 0;
  border-right-width: 0;
}

.htFiltersConditionsMenu table tbody tr td.htDimmed {
  font-style: normal;
  color: #323232;
}

.htFiltersConditionsMenu table tbody tr td.current,
.htFiltersConditionsMenu table tbody tr td.zeroclipboard-is-hover {
  background: #e9e9e9;
}

.htFiltersConditionsMenu table tbody tr td.htSeparator {
  border-top: 1px solid #e6e6e6;
  height: 0;
  padding: 0;
}

.htFiltersConditionsMenu table tbody tr td.htDisabled {
  color: #999;
}

.htFiltersConditionsMenu table tbody tr td.htDisabled:hover {
  background: #fff;
  color: #999;
  cursor: default;
}

.htFiltersConditionsMenu table tbody tr td .htItemWrapper {
  margin-left: 10px;
  margin-right: 10px;
}

.htFiltersConditionsMenu table tbody tr td div span.selected {
  margin-top: -2px;
  position: absolute;
  left: 4px;
}

.htFiltersConditionsMenu .ht_master .wtHolder {
  overflow: hidden;
}

.handsontable .htMenuFiltering {
  border-bottom: 1px dotted #ccc;
  height: 135px;
  overflow: hidden;
}

.handsontable .ht_master table td.htCustomMenuRenderer {
  background-color: #fff;
  cursor: auto;
}

/* Menu label */
.handsontable .htFiltersMenuLabel {
  font-size: 0.75em;
}

/* Component action bar */
.handsontable .htFiltersMenuActionBar {
  text-align: center;
  padding-top: 10px;
  padding-bottom: 3px;
}

/* Component filter by conditional */
.handsontable .htFiltersMenuCondition.border {
  border-bottom: 1px dotted #ccc !important;
}

.handsontable .htFiltersMenuCondition .htUIInput {
  padding: 0 0 5px 0;
}

/* Component filter by value */
.handsontable .htFiltersMenuValue {
  border-bottom: 1px dotted #ccc !important;
}

.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch {
  padding: 0;
}

.handsontable .htFiltersMenuCondition .htUIInput input,
.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input {
  font-family: inherit;
  font-size: 0.75em;
  padding: 4px;
  box-sizing: border-box;
  width: 100%;
}

.htUIMultipleSelect .ht_master .wtHolder {
  overflow-y: scroll;
}

.handsontable .htFiltersActive .changeType {
  border: 1px solid #509272;
  color: #18804e;
  background-color: #d2e0d9;
}

.handsontable .htUISelectAll {
  margin-left: 0;
  margin-right: 10px;
}

[dir=rtl].handsontable .htUISelectAll {
  margin-right: 0;
  margin-left: 10px;
}

.handsontable .htUIClearAll, .handsontable .htUISelectAll {
  display: inline-block;
}

.handsontable .htUIClearAll a, .handsontable .htUISelectAll a {
  font-size: 0.75em;
}

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

[dir=rtl].handsontable .htUISelectionControls {
  text-align: left;
}

.handsontable .htCheckboxRendererInput {
  margin-top: 0;
  margin-right: 5px;
  margin-bottom: 0;
  margin-left: 0;
  vertical-align: middle;
  height: 1em;
}

[dir=rtl].handsontable .htCheckboxRendererInput {
  margin-left: 5px;
  margin-right: 0;
}

/* UI elements */
/* Input */
.handsontable .htUIInput {
  padding: 3px 0 7px 0;
  position: relative;
  text-align: center;
}

.handsontable .htUIInput input {
  border-radius: 2px;
  border: 1px solid #d2d1d1;
}

.handsontable .htUIInput input:focus {
  outline: 0;
}

.handsontable .htUIInputIcon {
  position: absolute;
}

/* Button */
.handsontable .htUIInput.htUIButton {
  cursor: pointer;
  display: inline-block;
}

.handsontable .htUIInput.htUIButton input {
  background-color: #eee;
  color: #000;
  cursor: pointer;
  font-family: inherit;
  font-size: 0.75em;
  font-weight: bold;
  height: 19px;
  min-width: 64px;
}

.handsontable .htUIInput.htUIButton input:hover {
  border-color: #b9b9b9;
}

.handsontable .htUIInput.htUIButtonOK {
  margin-left: 0;
  margin-right: 10px;
}

[dir=rtl].handsontable .htUIInput.htUIButtonOK {
  margin-right: 0;
  margin-left: 10px;
}

.handsontable .htUIInput.htUIButtonOK input {
  background-color: #0f9d58;
  border-color: #18804e;
  color: #fff;
}

.handsontable .htUIInput.htUIButtonOK input:hover {
  border-color: #1a6f46;
}

/* Select */
.handsontable .htUISelect {
  cursor: pointer;
  margin-bottom: 7px;
  position: relative;
}

.handsontable .htUISelectCaption {
  background-color: #e8e8e8;
  border-radius: 2px;
  border: 1px solid #d2d1d1;
  font-family: inherit;
  font-size: 0.75em;
  font-weight: bold;
  padding: 3px 20px 3px 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.handsontable .htUISelectCaption:hover {
  background-color: #e8e8e8;
  border: 1px solid #b9b9b9;
}

.handsontable .htUISelectDropdown:after {
  content: "▲";
  font-size: 7px;
  position: absolute;
  right: 10px;
  top: 0;
}

.handsontable .htUISelectDropdown:before {
  content: "▼";
  font-size: 7px;
  position: absolute;
  right: 10px;
  top: 8px;
}

/* SelectMultiple */
.handsontable .htUIMultipleSelect .handsontable .htCore {
  border: none;
}

.handsontable .htUIMultipleSelect .handsontable .htCore td:hover {
  background-color: #F5F5F5;
}

.handsontable .htUIMultipleSelectSearch input {
  border-radius: 2px;
  border: 1px solid #d2d1d1;
  padding: 3px;
}

.handsontable .htUIRadio {
  display: inline-block;
  margin-left: 0;
  margin-right: 5px;
  height: 100%;
}

[dir=rtl].handsontable .htUIRadio {
  margin-right: 0;
  margin-left: 5px;
}

.handsontable .htUIRadio:last-child {
  margin-right: 0;
}

.handsontable .htUIRadio > input[type=radio] {
  margin-left: 0;
  margin-right: 0.5ex;
}

[dir=rtl].handsontable .htUIRadio > input[type=radio] {
  margin-right: 0;
  margin-left: 0.5ex;
}

.handsontable .htUIRadio label {
  vertical-align: middle;
}

.handsontable .htFiltersMenuOperators {
  padding-bottom: 5px;
}
@charset "UTF-8";
/*
 * Handsontable HiddenColumns
 */
.handsontable th.beforeHiddenColumn {
  position: relative;
}

.handsontable th.beforeHiddenColumn::after,
.handsontable th.afterHiddenColumn::before {
  color: #bbb;
  position: absolute;
  top: 50%;
  font-size: 5pt;
  transform: translateY(-50%);
}

.handsontable th.afterHiddenColumn {
  position: relative;
}

.handsontable th.beforeHiddenColumn::after {
  right: 1px;
  content: "◀"; /* left arrow */
}

[dir=rtl].handsontable th.beforeHiddenColumn::after {
  right: initial;
  left: 1px;
  content: "▶"; /* right arrow */
}

.handsontable th.afterHiddenColumn::before {
  left: 1px;
  content: "▶"; /* right arrow */
}

[dir=rtl].handsontable th.afterHiddenColumn::before {
  right: 1px;
  left: initial;
  content: "◀"; /* left arrow */
}
@charset "UTF-8";
/*!
 * Handsontable HiddenRows
 */
.handsontable th.beforeHiddenRow::before,
.handsontable th.afterHiddenRow::after {
  color: #bbb;
  font-size: 6pt;
  line-height: 6pt;
  position: absolute;
  left: 2px;
}

.handsontable th.beforeHiddenRow,
.handsontable th.afterHiddenRow {
  position: relative;
}

.handsontable th.beforeHiddenRow::before {
  content: "▲";
  bottom: 2px;
}

.handsontable th.afterHiddenRow::after {
  content: "▼";
  top: 2px;
}

.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before,
.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after {
  color: #eee;
}

.handsontable td.afterHiddenRow.firstVisibleRow,
.handsontable th.afterHiddenRow.firstVisibleRow {
  border-top: 1px solid #CCC;
}
.htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_top_inline_start_corner th:nth-child(2),
.htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_inline_start td:first-of-type {
  border-left: 0 none;
}
.handsontable .wtHider {
  position: relative;
}

.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.handsontable.ht__manualColumnMove.on-moving--columns,
.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer {
  display: none;
}

.handsontable .ht__manualColumnMove--guideline,
.handsontable .ht__manualColumnMove--backlight {
  position: absolute;
  height: 100%;
  display: none;
}

.handsontable .ht__manualColumnMove--guideline {
  background: #757575;
  width: 2px;
  top: 0;
  -webkit-margin-start: -1px;
          margin-inline-start: -1px;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  z-index: 205;
}

.handsontable .ht__manualColumnMove--backlight {
  background: #343434;
  background: rgba(52, 52, 52, 0.25);
  display: none;
  z-index: 205;
  pointer-events: none;
}

.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,
.handsontable.on-moving--columns .ht__manualColumnMove--backlight {
  display: block;
}
.handsontable .wtHider {
  position: relative;
}

.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.handsontable.ht__manualRowMove.on-moving--rows,
.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer {
  display: none;
}

.handsontable .ht__manualRowMove--guideline,
.handsontable .ht__manualRowMove--backlight {
  position: absolute;
  width: 100%;
  display: none;
}

.handsontable .ht__manualRowMove--guideline {
  background: #757575;
  height: 2px;
  left: 0;
  margin-top: -1px;
  z-index: 205;
}

.handsontable .ht__manualRowMove--backlight {
  background: #343434;
  background: rgba(52, 52, 52, 0.25);
  display: none;
  z-index: 205;
  pointer-events: none;
}

.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,
.handsontable.on-moving--rows .ht__manualRowMove--backlight {
  display: block;
}
.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before {
  opacity: 0;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before {
  opacity: 0.1;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before {
  opacity: 0.1;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before {
  opacity: 0.2;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before {
  opacity: 0.27;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before {
  opacity: 0.35;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before {
  opacity: 0.41;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before {
  opacity: 0.47;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before {
  opacity: 0.54;
}

.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before {
  opacity: 0.58;
}
/* Column's number position */
.handsontable span.colHeader.columnSorting::after {
  /* Centering start */
  top: 50%;
  /* Two extra pixels (-2 instead of -4) for purpose of proper positioning of numeric indicators, when `font-size` set to default */
  margin-top: -2px;
  /* Centering end */
  position: absolute;
  right: -15px;
  left: unset;
  /* For purpose of continuous mouse over experience, when moving between the `::before` and the `::after` elements */
  padding-left: 5px;
  padding-right: unset;
  font-size: 8px;
  height: 8px;
  line-height: 1.1;
  /* Workaround for IE9 - IE11 */
  text-decoration: underline;
}

[dir=rtl].handsontable span.colHeader.columnSorting::after {
  left: -15px;
  right: unset;
  /* For purpose of continuous mouse over experience, when moving between the `::before` and the `::after` elements */
  padding-right: 5px;
  padding-left: unset;
}

/* Workaround for IE9 - IE11, https://stackoverflow.com/a/21902566, https://stackoverflow.com/a/32120247 */
.handsontable span.colHeader.columnSorting::after {
  text-decoration: none;
}

/* We support up to 7 numeric indicators, describing order of column in sorted columns queue */
.handsontable span.colHeader.columnSorting[class^=sort-]::after,
.handsontable span.colHeader.columnSorting[class*=" sort-"]::after {
  content: "+";
}

.handsontable span.colHeader.columnSorting.sort-1::after {
  content: "1";
}

.handsontable span.colHeader.columnSorting.sort-2::after {
  content: "2";
}

.handsontable span.colHeader.columnSorting.sort-3::after {
  content: "3";
}

.handsontable span.colHeader.columnSorting.sort-4::after {
  content: "4";
}

.handsontable span.colHeader.columnSorting.sort-5::after {
  content: "5";
}

.handsontable span.colHeader.columnSorting.sort-6::after {
  content: "6";
}

.handsontable span.colHeader.columnSorting.sort-7::after {
  content: "7";
}

/* Drop-down menu widens header by 5 pixels, sort sequence numbers won't overlap the icon; mainly for the IE9+ */
.htGhostTable th div button.changeType + span.colHeader.columnSorting:not(.indicatorDisabled) {
  padding-right: 5px;
}
.handsontable thead th.hiddenHeader:not(:first-of-type) {
  display: none;
}
@charset "UTF-8";
.handsontable th.ht_nestingLevels {
  text-align: left;
  padding-left: 7px;
}

[dir=rtl].handsontable th.ht_nestingLevels {
  text-align: right;
  padding-right: 7px;
}

.handsontable th div.ht_nestingLevels {
  display: inline-block;
  position: absolute;
  left: 11px;
  right: unset;
}

[dir=rtl].handsontable th div.ht_nestingLevels {
  right: 11px;
  left: unset;
}

.handsontable.innerBorderInlineStart th div.ht_nestingLevels,
.handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingLevels {
  right: 10px;
  left: unset;
}

[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels, [dir=rtl].handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingLevels {
  left: 10px;
  right: unset;
}

.handsontable th span.ht_nestingLevel {
  display: inline-block;
}

.handsontable th span.ht_nestingLevel_empty {
  display: inline-block;
  width: 10px;
  height: 1px;
  float: left;
}

[dir=rtl].handsontable th span.ht_nestingLevel_empty {
  float: right;
}

.handsontable th span.ht_nestingLevel::after {
  content: "┐";
  font-size: 9px;
  display: inline-block;
  position: relative;
  bottom: 3px;
}

.handsontable th div.ht_nestingButton {
  display: inline-block;
  position: absolute;
  right: -2px;
  left: unset;
  cursor: pointer;
}

[dir=rtl].handsontable th div.ht_nestingButton {
  left: -2px;
  right: unset;
}

.handsontable th div.ht_nestingButton.ht_nestingExpand::after {
  content: "+";
}

.handsontable th div.ht_nestingButton.ht_nestingCollapse::after {
  content: "-";
}

.handsontable.innerBorderInlineStart th div.ht_nestingButton,
.handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingButton {
  right: 0;
  left: unset;
}

[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton, [dir=rtl].handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingButton {
  left: 0;
  right: unset;
}

@charset "UTF-8";
/*!
 * Bootstrap v4.6.0 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: "Nunito", sans-serif;
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*,
*::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: "Nunito", sans-serif;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: #212529;
  text-align: left;
  background-color: #f8fafc;
}

[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: 0.5rem;
}

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: 0.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: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #0056b3;
  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: #6c757d;
  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: 0.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;
}

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

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

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

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

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

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

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

.lead {
  font-size: 1.125rem;
  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: 1rem;
  margin-bottom: 1rem;
  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: 1rem;
  font-size: 1.125rem;
}

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

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #f8fafc;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

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

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
.row {
  display: flex;
  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-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

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

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

  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

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

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

  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .order-sm-first {
    order: -1;
  }

  .order-sm-last {
    order: 13;
  }

  .order-sm-0 {
    order: 0;
  }

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

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

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

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

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

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

  .order-sm-7 {
    order: 7;
  }

  .order-sm-8 {
    order: 8;
  }

  .order-sm-9 {
    order: 9;
  }

  .order-sm-10 {
    order: 10;
  }

  .order-sm-11 {
    order: 11;
  }

  .order-sm-12 {
    order: 12;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

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

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

  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

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

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

  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .order-md-first {
    order: -1;
  }

  .order-md-last {
    order: 13;
  }

  .order-md-0 {
    order: 0;
  }

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

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

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

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

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

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

  .order-md-7 {
    order: 7;
  }

  .order-md-8 {
    order: 8;
  }

  .order-md-9 {
    order: 9;
  }

  .order-md-10 {
    order: 10;
  }

  .order-md-11 {
    order: 11;
  }

  .order-md-12 {
    order: 12;
  }

  .offset-md-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

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

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

  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

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

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

  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .order-lg-first {
    order: -1;
  }

  .order-lg-last {
    order: 13;
  }

  .order-lg-0 {
    order: 0;
  }

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

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

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

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

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

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

  .order-lg-7 {
    order: 7;
  }

  .order-lg-8 {
    order: 8;
  }

  .order-lg-9 {
    order: 9;
  }

  .order-lg-10 {
    order: 10;
  }

  .order-lg-11 {
    order: 11;
  }

  .order-lg-12 {
    order: 12;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

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

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

  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

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

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

  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .order-xl-first {
    order: -1;
  }

  .order-xl-last {
    order: 13;
  }

  .order-xl-0 {
    order: 0;
  }

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

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

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

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

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

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

  .order-xl-7 {
    order: 7;
  }

  .order-xl-8 {
    order: 8;
  }

  .order-xl-9 {
    order: 9;
  }

  .order-xl-10 {
    order: 10;
  }

  .order-xl-11 {
    order: 11;
  }

  .order-xl-12 {
    order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}
.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}
.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}
.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}
.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff;
}
.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff;
}

.table-hover .table-primary:hover {
  background-color: #9fcdff;
}
.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb;
}
.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

.table-hover .table-success:hover {
  background-color: #b1dfbb;
}
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b1dfbb;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}
.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba;
}
.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e;
}

.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffe8a1;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb;
}
.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e;
}

.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f1b0b7;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}
.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}
.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}
.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}
.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    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: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.form-control::-moz-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: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.6;
}

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

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

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 0.9rem;
  line-height: 1.6;
  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: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  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: flex;
  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: #6c757d;
}

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

.form-check-inline {
  display: inline-flex;
  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: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.7875rem;
  line-height: 1.6;
  color: #fff;
  background-color: rgba(40, 167, 69, 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: #28a745;
  padding-right: calc(1.6em + 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='%2328a745' 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 calc(0.4em + 0.1875rem) center;
  background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

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

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  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='%2328a745' 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.8em + 0.375rem) calc(0.8em + 0.375rem) no-repeat;
}
.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}
.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: #28a745;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}
.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.2rem rgba(40, 167, 69, 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: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

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

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.7875rem;
  line-height: 1.6;
  color: #fff;
  background-color: rgba(220, 53, 69, 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: #dc3545;
  padding-right: calc(1.6em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' 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='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.4em + 0.1875rem) center;
  background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

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

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  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='%23dc3545' 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='%23dc3545' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.8em + 0.375rem) calc(0.8em + 0.375rem) no-repeat;
}
.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}
.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: #dc3545;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}
.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.2rem rgba(220, 53, 69, 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: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-check {
  width: 100%;
}
@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    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: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  line-height: 1.6;
  border-radius: 0.25rem;
  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) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: #212529;
  text-decoration: none;
}
.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}
.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}
.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}
.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}
.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430;
}
.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}
.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}
.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}
.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d;
}
.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}
.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}
.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}
.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}
.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}
.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}
.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}
.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}
.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}
.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}
.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}
.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}
.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 0.9rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropleft .dropdown-toggle::after {
  display: none;
}
.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.7875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}
.btn-group-toggle > .btn input[type=radio],
.btn-group-toggle > .btn input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  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: flex;
  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: 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: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  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: 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.125rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  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.7875rem;
  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;
}

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

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

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.22rem;
  opacity: 0;
}
.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff;
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}
.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.22rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #adb5bd solid 1px;
}
.custom-control-label::after {
  position: absolute;
  top: 0.22rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50%/50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}
.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='%23fff' 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: #007bff;
  background-color: #007bff;
}
.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='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 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='%23fff'/%3e%3c/svg%3e");
}
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}
.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}
.custom-switch .custom-control-label::after {
  top: calc(0.22rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  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: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.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: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.7875rem;
}

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

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

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.6em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}
.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.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: calc(1.6em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.6;
  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: calc(1.6em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.6;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  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 #f8fafc, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  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: #b3d7ff;
}
.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: #007bff;
  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: #b3d7ff;
}
.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.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  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: #b3d7ff;
}
.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 {
  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 {
    transition: none;
  }
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}
.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #f8fafc;
  border-color: #dee2e6 #dee2e6 #f8fafc;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}
.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  display: inline-block;
  padding-top: 0.32rem;
  padding-bottom: 0.32rem;
  margin-right: 1rem;
  font-size: 1.125rem;
  line-height: inherit;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.125rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50%/100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  flex-wrap: nowrap;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-text a {
  color: #fff;
}
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}
.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .card-columns {
    -moz-column-count: 3;
         column-count: 3;
    -moz-column-gap: 1.25rem;
         column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}
.accordion > .card {
  overflow: hidden;
}
.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}
.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}
.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.125rem;
  line-height: 1.5;
}
.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  line-height: 1.5;
}
.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.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;
  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 {
    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: #007bff;
}
a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc;
}
a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 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: #28a745;
}
a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34;
}
a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 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: #dc3545;
}
a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130;
}
a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 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);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}
@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 3.85rem;
}
.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}
.alert-primary hr {
  border-top-color: #9fcdff;
}
.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}
.alert-secondary hr {
  border-top-color: #c8cbcf;
}
.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}
.alert-success hr {
  border-top-color: #b1dfbb;
}
.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}
.alert-info hr {
  border-top-color: #abdde5;
}
.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}
.alert-warning hr {
  border-top-color: #ffe8a1;
}
.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}
.alert-danger hr {
  border-top-color: #f1b0b7;
}
.alert-danger .alert-link {
  color: #491217;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.alert-light hr {
  border-top-color: #ececf6;
}
.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}
.alert-dark hr {
  border-top-color: #b9bbbe;
}
.alert-dark .alert-link {
  color: #040505;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.675rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  -webkit-animation: 1s linear infinite progress-bar-stripes;
          animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
            animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}
.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}
.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff;
}
.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #004085;
  border-color: #004085;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}
.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb;
}
.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}
.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1;
}
.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7;
}
.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #721c24;
  border-color: #721c24;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}
.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}
.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.5;
}
.close:hover {
  color: #000;
  text-decoration: none;
}
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: 0.75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}
.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}
.toast.showing {
  opacity: 1;
}
.toast.show {
  display: block;
  opacity: 1;
}
.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.toast-body {
  padding: 0.75rem;
}

.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 {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  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: flex;
  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: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 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.6;
}

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

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 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: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
  }

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: "Nunito", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.7875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=top], .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=top], .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=top], .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=top], .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=top], .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=top], .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=top], .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=top], .bs-tooltip-auto[x-placement^=top] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .arrow, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=top] .arrow, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=top] .arrow, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=top] .arrow, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=top] .arrow, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=top] .arrow, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=top] .arrow, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=top] .arrow, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=top] .arrow, .bs-tooltip-auto[x-placement^=top] .arrow {
  bottom: 0;
}
.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=top] .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=right], .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=right], .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=right], .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=right], .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=right], .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=right], .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=right], .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=right], .bs-tooltip-auto[x-placement^=right] {
  padding: 0 0.4rem;
}
.bs-tooltip-right .arrow, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=right] .arrow, .bs-tooltip-auto[x-placement^=right] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=right] .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=right] .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=right] .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=right] .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=right] .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=right] .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=right] .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=right] .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=bottom], .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=bottom], .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=bottom], .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=bottom], .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=bottom], .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=bottom], .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=bottom], .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=bottom], .bs-tooltip-auto[x-placement^=bottom] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .arrow, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=bottom] .arrow, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=bottom] .arrow, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=bottom] .arrow, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=bottom] .arrow, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=bottom] .arrow, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=bottom] .arrow, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=bottom] .arrow, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=bottom] .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow {
  top: 0;
}
.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=left], .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=left], .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=left], .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=left], .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=left], .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=left], .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=left], .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=left], .bs-tooltip-auto[x-placement^=left] {
  padding: 0 0.4rem;
}
.bs-tooltip-left .arrow, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=left] .arrow, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=left] .arrow, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=left] .arrow, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=left] .arrow, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=left] .arrow, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=left] .arrow, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=left] .arrow, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=left] .arrow, .bs-tooltip-auto[x-placement^=left] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=left] .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=left] .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=left] .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=left] .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=left] .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=left] .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=left] .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=left] .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: "Nunito", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.7875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}
.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .b-popover-dark.bs-popover-auto[x-placement^=top], .b-popover-light.bs-popover-auto[x-placement^=top], .b-popover-danger.bs-popover-auto[x-placement^=top], .b-popover-warning.bs-popover-auto[x-placement^=top], .b-popover-info.bs-popover-auto[x-placement^=top], .b-popover-success.bs-popover-auto[x-placement^=top], .b-popover-secondary.bs-popover-auto[x-placement^=top], .b-popover-primary.bs-popover-auto[x-placement^=top], .bs-popover-auto[x-placement^=top] {
  margin-bottom: 0.5rem;
}
.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right, .b-popover-dark.bs-popover-auto[x-placement^=right], .b-popover-light.bs-popover-auto[x-placement^=right], .b-popover-danger.bs-popover-auto[x-placement^=right], .b-popover-warning.bs-popover-auto[x-placement^=right], .b-popover-info.bs-popover-auto[x-placement^=right], .b-popover-success.bs-popover-auto[x-placement^=right], .b-popover-secondary.bs-popover-auto[x-placement^=right], .b-popover-primary.bs-popover-auto[x-placement^=right], .bs-popover-auto[x-placement^=right] {
  margin-left: 0.5rem;
}
.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom, .b-popover-dark.bs-popover-auto[x-placement^=bottom], .b-popover-light.bs-popover-auto[x-placement^=bottom], .b-popover-danger.bs-popover-auto[x-placement^=bottom], .b-popover-warning.bs-popover-auto[x-placement^=bottom], .b-popover-info.bs-popover-auto[x-placement^=bottom], .b-popover-success.bs-popover-auto[x-placement^=bottom], .b-popover-secondary.bs-popover-auto[x-placement^=bottom], .b-popover-primary.bs-popover-auto[x-placement^=bottom], .bs-popover-auto[x-placement^=bottom] {
  margin-top: 0.5rem;
}
.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left, .b-popover-dark.bs-popover-auto[x-placement^=left], .b-popover-light.bs-popover-auto[x-placement^=left], .b-popover-danger.bs-popover-auto[x-placement^=left], .b-popover-warning.bs-popover-auto[x-placement^=left], .b-popover-info.bs-popover-auto[x-placement^=left], .b-popover-success.bs-popover-auto[x-placement^=left], .b-popover-secondary.bs-popover-auto[x-placement^=left], .b-popover-primary.bs-popover-auto[x-placement^=left], .bs-popover-auto[x-placement^=left] {
  margin-right: 0.5rem;
}
.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 0.9rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
.carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: 50%/100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}
.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

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

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: 0.75s linear infinite spinner-border;
          animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: 0.75s linear infinite spinner-grow;
          animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    -webkit-animation-duration: 1.5s;
            animation-duration: 1.5s;
  }
}
.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: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !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: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !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: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !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: #007bff !important;
}

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

.border-success {
  border-color: #28a745 !important;
}

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

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

.border-danger {
  border-color: #dc3545 !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: flex !important;
}

.d-inline-flex {
  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: flex !important;
  }

  .d-sm-inline-flex {
    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: flex !important;
  }

  .d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 992px) {
  .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: flex !important;
  }

  .d-lg-inline-flex {
    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: flex !important;
  }

  .d-xl-inline-flex {
    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: flex !important;
  }

  .d-print-inline-flex {
    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.8571428571%;
}

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

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

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

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

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

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

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

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

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

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

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

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

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

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

.justify-content-center {
  justify-content: center !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

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

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

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

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

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

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

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

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

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

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

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

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

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

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

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

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

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

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

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

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

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

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

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

  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

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

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

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

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

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

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

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

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

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

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

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

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

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

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

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

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

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

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

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

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

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

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

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

  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

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

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

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

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

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

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

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

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

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

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

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

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

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

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

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

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

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

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

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

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

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

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

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

  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

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

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

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

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

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

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

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

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

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

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

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

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

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

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

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

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

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

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

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

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

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

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

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

  .align-self-xl-stretch {
    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: 992px) {
  .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;
          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: 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: sticky) {
  .sticky-top {
    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: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

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

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

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

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

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

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !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: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

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

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

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

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

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

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

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

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

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

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

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

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

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

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

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

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

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

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

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

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

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

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

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

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

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

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

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !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: 0.25rem !important;
  }

  .mt-sm-1,
.my-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mr-sm-1,
.mx-sm-1 {
    margin-right: 0.25rem !important;
  }

  .mb-sm-1,
.my-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-sm-1,
.mx-sm-1 {
    margin-left: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .mt-sm-2,
.my-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mr-sm-2,
.mx-sm-2 {
    margin-right: 0.5rem !important;
  }

  .mb-sm-2,
.my-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-sm-2,
.mx-sm-2 {
    margin-left: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .mt-sm-3,
.my-sm-3 {
    margin-top: 1rem !important;
  }

  .mr-sm-3,
.mx-sm-3 {
    margin-right: 1rem !important;
  }

  .mb-sm-3,
.my-sm-3 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-3,
.mx-sm-3 {
    margin-left: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .mt-sm-4,
.my-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mr-sm-4,
.mx-sm-4 {
    margin-right: 1.5rem !important;
  }

  .mb-sm-4,
.my-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-sm-4,
.mx-sm-4 {
    margin-left: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .mt-sm-5,
.my-sm-5 {
    margin-top: 3rem !important;
  }

  .mr-sm-5,
.mx-sm-5 {
    margin-right: 3rem !important;
  }

  .mb-sm-5,
.my-sm-5 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-5,
.mx-sm-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }

  .pt-sm-1,
.py-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pr-sm-1,
.px-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pb-sm-1,
.py-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-sm-1,
.px-sm-1 {
    padding-left: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .pt-sm-2,
.py-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pr-sm-2,
.px-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pb-sm-2,
.py-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-sm-2,
.px-sm-2 {
    padding-left: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .pt-sm-3,
.py-sm-3 {
    padding-top: 1rem !important;
  }

  .pr-sm-3,
.px-sm-3 {
    padding-right: 1rem !important;
  }

  .pb-sm-3,
.py-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-3,
.px-sm-3 {
    padding-left: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .pt-sm-4,
.py-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pr-sm-4,
.px-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pb-sm-4,
.py-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-sm-4,
.px-sm-4 {
    padding-left: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .pt-sm-5,
.py-sm-5 {
    padding-top: 3rem !important;
  }

  .pr-sm-5,
.px-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-5,
.py-sm-5 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-5,
.px-sm-5 {
    padding-left: 3rem !important;
  }

  .m-sm-n1 {
    margin: -0.25rem !important;
  }

  .mt-sm-n1,
.my-sm-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-sm-n1,
.mx-sm-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-sm-n1,
.my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-sm-n1,
.mx-sm-n1 {
    margin-left: -0.25rem !important;
  }

  .m-sm-n2 {
    margin: -0.5rem !important;
  }

  .mt-sm-n2,
.my-sm-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-sm-n2,
.mx-sm-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-sm-n2,
.my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-sm-n2,
.mx-sm-n2 {
    margin-left: -0.5rem !important;
  }

  .m-sm-n3 {
    margin: -1rem !important;
  }

  .mt-sm-n3,
.my-sm-n3 {
    margin-top: -1rem !important;
  }

  .mr-sm-n3,
.mx-sm-n3 {
    margin-right: -1rem !important;
  }

  .mb-sm-n3,
.my-sm-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-sm-n3,
.mx-sm-n3 {
    margin-left: -1rem !important;
  }

  .m-sm-n4 {
    margin: -1.5rem !important;
  }

  .mt-sm-n4,
.my-sm-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-sm-n4,
.mx-sm-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-sm-n4,
.my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-sm-n4,
.mx-sm-n4 {
    margin-left: -1.5rem !important;
  }

  .m-sm-n5 {
    margin: -3rem !important;
  }

  .mt-sm-n5,
.my-sm-n5 {
    margin-top: -3rem !important;
  }

  .mr-sm-n5,
.mx-sm-n5 {
    margin-right: -3rem !important;
  }

  .mb-sm-n5,
.my-sm-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-sm-n5,
.mx-sm-n5 {
    margin-left: -3rem !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: 0.25rem !important;
  }

  .mt-md-1,
.my-md-1 {
    margin-top: 0.25rem !important;
  }

  .mr-md-1,
.mx-md-1 {
    margin-right: 0.25rem !important;
  }

  .mb-md-1,
.my-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-md-1,
.mx-md-1 {
    margin-left: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .mt-md-2,
.my-md-2 {
    margin-top: 0.5rem !important;
  }

  .mr-md-2,
.mx-md-2 {
    margin-right: 0.5rem !important;
  }

  .mb-md-2,
.my-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-md-2,
.mx-md-2 {
    margin-left: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .mt-md-3,
.my-md-3 {
    margin-top: 1rem !important;
  }

  .mr-md-3,
.mx-md-3 {
    margin-right: 1rem !important;
  }

  .mb-md-3,
.my-md-3 {
    margin-bottom: 1rem !important;
  }

  .ml-md-3,
.mx-md-3 {
    margin-left: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .mt-md-4,
.my-md-4 {
    margin-top: 1.5rem !important;
  }

  .mr-md-4,
.mx-md-4 {
    margin-right: 1.5rem !important;
  }

  .mb-md-4,
.my-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-md-4,
.mx-md-4 {
    margin-left: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .mt-md-5,
.my-md-5 {
    margin-top: 3rem !important;
  }

  .mr-md-5,
.mx-md-5 {
    margin-right: 3rem !important;
  }

  .mb-md-5,
.my-md-5 {
    margin-bottom: 3rem !important;
  }

  .ml-md-5,
.mx-md-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }

  .pt-md-1,
.py-md-1 {
    padding-top: 0.25rem !important;
  }

  .pr-md-1,
.px-md-1 {
    padding-right: 0.25rem !important;
  }

  .pb-md-1,
.py-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-md-1,
.px-md-1 {
    padding-left: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .pt-md-2,
.py-md-2 {
    padding-top: 0.5rem !important;
  }

  .pr-md-2,
.px-md-2 {
    padding-right: 0.5rem !important;
  }

  .pb-md-2,
.py-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-md-2,
.px-md-2 {
    padding-left: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .pt-md-3,
.py-md-3 {
    padding-top: 1rem !important;
  }

  .pr-md-3,
.px-md-3 {
    padding-right: 1rem !important;
  }

  .pb-md-3,
.py-md-3 {
    padding-bottom: 1rem !important;
  }

  .pl-md-3,
.px-md-3 {
    padding-left: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .pt-md-4,
.py-md-4 {
    padding-top: 1.5rem !important;
  }

  .pr-md-4,
.px-md-4 {
    padding-right: 1.5rem !important;
  }

  .pb-md-4,
.py-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-md-4,
.px-md-4 {
    padding-left: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .pt-md-5,
.py-md-5 {
    padding-top: 3rem !important;
  }

  .pr-md-5,
.px-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-5,
.py-md-5 {
    padding-bottom: 3rem !important;
  }

  .pl-md-5,
.px-md-5 {
    padding-left: 3rem !important;
  }

  .m-md-n1 {
    margin: -0.25rem !important;
  }

  .mt-md-n1,
.my-md-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-md-n1,
.mx-md-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-md-n1,
.my-md-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-md-n1,
.mx-md-n1 {
    margin-left: -0.25rem !important;
  }

  .m-md-n2 {
    margin: -0.5rem !important;
  }

  .mt-md-n2,
.my-md-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-md-n2,
.mx-md-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-md-n2,
.my-md-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-md-n2,
.mx-md-n2 {
    margin-left: -0.5rem !important;
  }

  .m-md-n3 {
    margin: -1rem !important;
  }

  .mt-md-n3,
.my-md-n3 {
    margin-top: -1rem !important;
  }

  .mr-md-n3,
.mx-md-n3 {
    margin-right: -1rem !important;
  }

  .mb-md-n3,
.my-md-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-md-n3,
.mx-md-n3 {
    margin-left: -1rem !important;
  }

  .m-md-n4 {
    margin: -1.5rem !important;
  }

  .mt-md-n4,
.my-md-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-md-n4,
.mx-md-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-md-n4,
.my-md-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-md-n4,
.mx-md-n4 {
    margin-left: -1.5rem !important;
  }

  .m-md-n5 {
    margin: -3rem !important;
  }

  .mt-md-n5,
.my-md-n5 {
    margin-top: -3rem !important;
  }

  .mr-md-n5,
.mx-md-n5 {
    margin-right: -3rem !important;
  }

  .mb-md-n5,
.my-md-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-md-n5,
.mx-md-n5 {
    margin-left: -3rem !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: 992px) {
  .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: 0.25rem !important;
  }

  .mt-lg-1,
.my-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mr-lg-1,
.mx-lg-1 {
    margin-right: 0.25rem !important;
  }

  .mb-lg-1,
.my-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-lg-1,
.mx-lg-1 {
    margin-left: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .mt-lg-2,
.my-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mr-lg-2,
.mx-lg-2 {
    margin-right: 0.5rem !important;
  }

  .mb-lg-2,
.my-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-lg-2,
.mx-lg-2 {
    margin-left: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .mt-lg-3,
.my-lg-3 {
    margin-top: 1rem !important;
  }

  .mr-lg-3,
.mx-lg-3 {
    margin-right: 1rem !important;
  }

  .mb-lg-3,
.my-lg-3 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-3,
.mx-lg-3 {
    margin-left: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .mt-lg-4,
.my-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mr-lg-4,
.mx-lg-4 {
    margin-right: 1.5rem !important;
  }

  .mb-lg-4,
.my-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-lg-4,
.mx-lg-4 {
    margin-left: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .mt-lg-5,
.my-lg-5 {
    margin-top: 3rem !important;
  }

  .mr-lg-5,
.mx-lg-5 {
    margin-right: 3rem !important;
  }

  .mb-lg-5,
.my-lg-5 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-5,
.mx-lg-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }

  .pt-lg-1,
.py-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pr-lg-1,
.px-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pb-lg-1,
.py-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-lg-1,
.px-lg-1 {
    padding-left: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .pt-lg-2,
.py-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pr-lg-2,
.px-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pb-lg-2,
.py-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-lg-2,
.px-lg-2 {
    padding-left: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .pt-lg-3,
.py-lg-3 {
    padding-top: 1rem !important;
  }

  .pr-lg-3,
.px-lg-3 {
    padding-right: 1rem !important;
  }

  .pb-lg-3,
.py-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-3,
.px-lg-3 {
    padding-left: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .pt-lg-4,
.py-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pr-lg-4,
.px-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pb-lg-4,
.py-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-lg-4,
.px-lg-4 {
    padding-left: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .pt-lg-5,
.py-lg-5 {
    padding-top: 3rem !important;
  }

  .pr-lg-5,
.px-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-5,
.py-lg-5 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-5,
.px-lg-5 {
    padding-left: 3rem !important;
  }

  .m-lg-n1 {
    margin: -0.25rem !important;
  }

  .mt-lg-n1,
.my-lg-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-lg-n1,
.mx-lg-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-lg-n1,
.my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-lg-n1,
.mx-lg-n1 {
    margin-left: -0.25rem !important;
  }

  .m-lg-n2 {
    margin: -0.5rem !important;
  }

  .mt-lg-n2,
.my-lg-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-lg-n2,
.mx-lg-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-lg-n2,
.my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-lg-n2,
.mx-lg-n2 {
    margin-left: -0.5rem !important;
  }

  .m-lg-n3 {
    margin: -1rem !important;
  }

  .mt-lg-n3,
.my-lg-n3 {
    margin-top: -1rem !important;
  }

  .mr-lg-n3,
.mx-lg-n3 {
    margin-right: -1rem !important;
  }

  .mb-lg-n3,
.my-lg-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-lg-n3,
.mx-lg-n3 {
    margin-left: -1rem !important;
  }

  .m-lg-n4 {
    margin: -1.5rem !important;
  }

  .mt-lg-n4,
.my-lg-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-lg-n4,
.mx-lg-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-lg-n4,
.my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-lg-n4,
.mx-lg-n4 {
    margin-left: -1.5rem !important;
  }

  .m-lg-n5 {
    margin: -3rem !important;
  }

  .mt-lg-n5,
.my-lg-n5 {
    margin-top: -3rem !important;
  }

  .mr-lg-n5,
.mx-lg-n5 {
    margin-right: -3rem !important;
  }

  .mb-lg-n5,
.my-lg-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-lg-n5,
.mx-lg-n5 {
    margin-left: -3rem !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: 0.25rem !important;
  }

  .mt-xl-1,
.my-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xl-1,
.mx-xl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xl-1,
.my-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xl-1,
.mx-xl-1 {
    margin-left: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .mt-xl-2,
.my-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xl-2,
.mx-xl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xl-2,
.my-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xl-2,
.mx-xl-2 {
    margin-left: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .mt-xl-3,
.my-xl-3 {
    margin-top: 1rem !important;
  }

  .mr-xl-3,
.mx-xl-3 {
    margin-right: 1rem !important;
  }

  .mb-xl-3,
.my-xl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-3,
.mx-xl-3 {
    margin-left: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .mt-xl-4,
.my-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xl-4,
.mx-xl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xl-4,
.my-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xl-4,
.mx-xl-4 {
    margin-left: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .mt-xl-5,
.my-xl-5 {
    margin-top: 3rem !important;
  }

  .mr-xl-5,
.mx-xl-5 {
    margin-right: 3rem !important;
  }

  .mb-xl-5,
.my-xl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-5,
.mx-xl-5 {
    margin-left: 3rem !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: 0.25rem !important;
  }

  .pt-xl-1,
.py-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xl-1,
.px-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xl-1,
.py-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xl-1,
.px-xl-1 {
    padding-left: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .pt-xl-2,
.py-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xl-2,
.px-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xl-2,
.py-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xl-2,
.px-xl-2 {
    padding-left: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .pt-xl-3,
.py-xl-3 {
    padding-top: 1rem !important;
  }

  .pr-xl-3,
.px-xl-3 {
    padding-right: 1rem !important;
  }

  .pb-xl-3,
.py-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-3,
.px-xl-3 {
    padding-left: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .pt-xl-4,
.py-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xl-4,
.px-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xl-4,
.py-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xl-4,
.px-xl-4 {
    padding-left: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .pt-xl-5,
.py-xl-5 {
    padding-top: 3rem !important;
  }

  .pr-xl-5,
.px-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-5,
.py-xl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-5,
.px-xl-5 {
    padding-left: 3rem !important;
  }

  .m-xl-n1 {
    margin: -0.25rem !important;
  }

  .mt-xl-n1,
.my-xl-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xl-n1,
.mx-xl-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xl-n1,
.my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xl-n1,
.mx-xl-n1 {
    margin-left: -0.25rem !important;
  }

  .m-xl-n2 {
    margin: -0.5rem !important;
  }

  .mt-xl-n2,
.my-xl-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xl-n2,
.mx-xl-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xl-n2,
.my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xl-n2,
.mx-xl-n2 {
    margin-left: -0.5rem !important;
  }

  .m-xl-n3 {
    margin: -1rem !important;
  }

  .mt-xl-n3,
.my-xl-n3 {
    margin-top: -1rem !important;
  }

  .mr-xl-n3,
.mx-xl-n3 {
    margin-right: -1rem !important;
  }

  .mb-xl-n3,
.my-xl-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xl-n3,
.mx-xl-n3 {
    margin-left: -1rem !important;
  }

  .m-xl-n4 {
    margin: -1.5rem !important;
  }

  .mt-xl-n4,
.my-xl-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xl-n4,
.mx-xl-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xl-n4,
.my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xl-n4,
.mx-xl-n4 {
    margin-left: -1.5rem !important;
  }

  .m-xl-n5 {
    margin: -3rem !important;
  }

  .mt-xl-n5,
.my-xl-n5 {
    margin-top: -3rem !important;
  }

  .mr-xl-n5,
.mx-xl-n5 {
    margin-right: -3rem !important;
  }

  .mb-xl-n5,
.my-xl-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xl-n5,
.mx-xl-n5 {
    margin-left: -3rem !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: 992px) {
  .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: #007bff !important;
}

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

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

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

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !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: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !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: #6c757d !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;
}

@media print {
  *,
*::before,
*::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
img {
    page-break-inside: avoid;
  }

  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }

  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }

  .container {
    min-width: 992px !important;
  }

  .navbar {
    display: none;
  }

  .badge {
    border: 1px solid #000;
  }

  .table {
    border-collapse: collapse !important;
  }
  .table td,
.table th {
    background-color: #fff !important;
  }

  .table-bordered th,
.table-bordered td {
    border: 1px solid #dee2e6 !important;
  }

  .table-dark {
    color: inherit;
  }
  .table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
    border-color: #dee2e6;
  }

  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}
.bv-no-focus-ring:focus {
  outline: none;
}

@media (max-width: 575.98px) {
  .bv-d-xs-down-none {
    display: none !important;
  }
}
@media (max-width: 767.98px) {
  .bv-d-sm-down-none {
    display: none !important;
  }
}
@media (max-width: 991.98px) {
  .bv-d-md-down-none {
    display: none !important;
  }
}
@media (max-width: 1199.98px) {
  .bv-d-lg-down-none {
    display: none !important;
  }
}
.bv-d-xl-down-none {
  display: none !important;
}

.form-control.focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.form-control.focus.is-valid {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.form-control.focus.is-invalid {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.b-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  font-size: inherit;
  font-weight: 400;
  line-height: 1;
  max-width: 100%;
  max-height: auto;
  text-align: center;
  overflow: visible;
  position: relative;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.b-avatar:focus {
  outline: 0;
}
.b-avatar.btn, .b-avatar[href] {
  padding: 0;
  border: 0;
}
.b-avatar.btn .b-avatar-img img, .b-avatar[href] .b-avatar-img img {
  transition: transform 0.15s ease-in-out;
}
.b-avatar.btn:not(:disabled):not(.disabled), .b-avatar[href]:not(:disabled):not(.disabled) {
  cursor: pointer;
}
.b-avatar.btn:not(:disabled):not(.disabled):hover .b-avatar-img img, .b-avatar[href]:not(:disabled):not(.disabled):hover .b-avatar-img img {
  transform: scale(1.15);
}
.b-avatar.disabled, .b-avatar:disabled, .b-avatar[disabled] {
  opacity: 0.65;
  pointer-events: none;
}
.b-avatar .b-avatar-custom,
.b-avatar .b-avatar-text,
.b-avatar .b-avatar-img {
  border-radius: inherit;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-mask-image: radial-gradient(white, black);
          mask-image: radial-gradient(white, black);
}
.b-avatar .b-avatar-text {
  text-transform: uppercase;
  white-space: nowrap;
}
.b-avatar[href] {
  text-decoration: none;
}
.b-avatar > .b-icon {
  width: 60%;
  height: auto;
  max-width: 100%;
}
.b-avatar .b-avatar-img img {
  width: 100%;
  height: 100%;
  max-height: auto;
  border-radius: inherit;
  -o-object-fit: cover;
     object-fit: cover;
}
.b-avatar .b-avatar-badge {
  position: absolute;
  min-height: 1.5em;
  min-width: 1.5em;
  padding: 0.25em;
  line-height: 1;
  border-radius: 10em;
  font-size: 70%;
  font-weight: 700;
  z-index: 1;
}

.b-avatar-sm {
  width: 1.5rem;
  height: 1.5rem;
}
.b-avatar-sm .b-avatar-text {
  font-size: calc(0.6rem);
}
.b-avatar-sm .b-avatar-badge {
  font-size: calc(0.42rem);
}

.b-avatar-lg {
  width: 3.5rem;
  height: 3.5rem;
}
.b-avatar-lg .b-avatar-text {
  font-size: calc(1.4rem);
}
.b-avatar-lg .b-avatar-badge {
  font-size: calc(0.98rem);
}

.b-avatar-group .b-avatar-group-inner {
  display: flex;
  flex-wrap: wrap;
}
.b-avatar-group .b-avatar {
  border: 1px solid #dee2e6;
}
.b-avatar-group a.b-avatar:hover:not(.disabled):not(disabled),
.b-avatar-group .btn.b-avatar:hover:not(.disabled):not(disabled) {
  z-index: 1;
}

.b-calendar {
  display: inline-flex;
}
.b-calendar .b-calendar-inner {
  min-width: 250px;
}
.b-calendar .b-calendar-header,
.b-calendar .b-calendar-nav {
  margin-bottom: 0.25rem;
}
.b-calendar .b-calendar-nav .btn {
  padding: 0.25rem;
}
.b-calendar output {
  padding: 0.25rem;
  font-size: 80%;
}
.b-calendar output.readonly {
  background-color: #e9ecef;
  opacity: 1;
}
.b-calendar .b-calendar-footer {
  margin-top: 0.5rem;
}
.b-calendar .b-calendar-grid {
  padding: 0;
  margin: 0;
  overflow: hidden;
}
.b-calendar .b-calendar-grid .row {
  flex-wrap: nowrap;
}
.b-calendar .b-calendar-grid-caption {
  padding: 0.25rem;
}
.b-calendar .b-calendar-grid-body .col[data-date] .btn {
  width: 32px;
  height: 32px;
  font-size: 14px;
  line-height: 1;
  margin: 3px auto;
  padding: 9px 0;
}
.b-calendar .btn:disabled, .b-calendar .btn.disabled, .b-calendar .btn[aria-disabled=true] {
  cursor: default;
  pointer-events: none;
}

.card-img-left {
  border-top-left-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-img-right {
  border-top-right-radius: calc(0.25rem - 1px);
  border-bottom-right-radius: calc(0.25rem - 1px);
}

.dropdown:not(.dropleft) .dropdown-toggle.dropdown-toggle-no-caret::after {
  display: none !important;
}
.dropdown.dropleft .dropdown-toggle.dropdown-toggle-no-caret::before {
  display: none !important;
}
.dropdown .dropdown-menu:focus {
  outline: none;
}

.b-dropdown-form {
  display: inline-block;
  padding: 0.25rem 1.5rem;
  width: 100%;
  clear: both;
  font-weight: 400;
}
.b-dropdown-form:focus {
  outline: 1px dotted !important;
  outline: 5px auto -webkit-focus-ring-color !important;
}
.b-dropdown-form.disabled, .b-dropdown-form:disabled {
  outline: 0 !important;
  color: #adb5bd;
  pointer-events: none;
}

.b-dropdown-text {
  display: inline-block;
  padding: 0.25rem 1.5rem;
  margin-bottom: 0;
  width: 100%;
  clear: both;
  font-weight: lighter;
}

.custom-checkbox.b-custom-control-lg,
.input-group-lg .custom-checkbox {
  font-size: 1.125rem;
  line-height: 1.5;
  padding-left: 1.875rem;
}
.custom-checkbox.b-custom-control-lg .custom-control-label::before,
.input-group-lg .custom-checkbox .custom-control-label::before {
  top: 0.21875rem;
  left: -1.875rem;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0.3rem;
}
.custom-checkbox.b-custom-control-lg .custom-control-label::after,
.input-group-lg .custom-checkbox .custom-control-label::after {
  top: 0.21875rem;
  left: -1.875rem;
  width: 1.25rem;
  height: 1.25rem;
  background-size: 50% 50%;
}

.custom-checkbox.b-custom-control-sm,
.input-group-sm .custom-checkbox {
  font-size: 0.7875rem;
  line-height: 1.5;
  padding-left: 1.3125rem;
}
.custom-checkbox.b-custom-control-sm .custom-control-label::before,
.input-group-sm .custom-checkbox .custom-control-label::before {
  top: 0.153125rem;
  left: -1.3125rem;
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 0.2rem;
}
.custom-checkbox.b-custom-control-sm .custom-control-label::after,
.input-group-sm .custom-checkbox .custom-control-label::after {
  top: 0.153125rem;
  left: -1.3125rem;
  width: 0.875rem;
  height: 0.875rem;
  background-size: 50% 50%;
}

.custom-switch.b-custom-control-lg,
.input-group-lg .custom-switch {
  padding-left: 2.8125rem;
}
.custom-switch.b-custom-control-lg .custom-control-label,
.input-group-lg .custom-switch .custom-control-label {
  font-size: 1.125rem;
  line-height: 1.5;
}
.custom-switch.b-custom-control-lg .custom-control-label::before,
.input-group-lg .custom-switch .custom-control-label::before {
  top: 0.21875rem;
  height: 1.25rem;
  left: -2.8125rem;
  width: 2.1875rem;
  border-radius: 0.625rem;
}
.custom-switch.b-custom-control-lg .custom-control-label::after,
.input-group-lg .custom-switch .custom-control-label::after {
  top: calc( 0.21875rem + 2px );
  left: calc( -2.8125rem + 2px );
  width: calc( 1.25rem - 4px );
  height: calc( 1.25rem - 4px );
  border-radius: 0.625rem;
  background-size: 50% 50%;
}
.custom-switch.b-custom-control-lg .custom-control-input:checked ~ .custom-control-label::after,
.input-group-lg .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  transform: translateX(0.9375rem);
}

.custom-switch.b-custom-control-sm,
.input-group-sm .custom-switch {
  padding-left: 1.96875rem;
}
.custom-switch.b-custom-control-sm .custom-control-label,
.input-group-sm .custom-switch .custom-control-label {
  font-size: 0.7875rem;
  line-height: 1.5;
}
.custom-switch.b-custom-control-sm .custom-control-label::before,
.input-group-sm .custom-switch .custom-control-label::before {
  top: 0.153125rem;
  left: -1.96875rem;
  width: 1.53125rem;
  height: 0.875rem;
  border-radius: 0.4375rem;
}
.custom-switch.b-custom-control-sm .custom-control-label::after,
.input-group-sm .custom-switch .custom-control-label::after {
  top: calc( 0.153125rem + 2px );
  left: calc( -1.96875rem + 2px );
  width: calc( 0.875rem - 4px );
  height: calc( 0.875rem - 4px );
  border-radius: 0.4375rem;
  background-size: 50% 50%;
}
.custom-switch.b-custom-control-sm .custom-control-input:checked ~ .custom-control-label::after,
.input-group-sm .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  transform: translateX(0.65625rem);
}

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

.b-form-btn-label-control.form-control {
  display: flex;
  align-items: stretch;
  height: auto;
  padding: 0;
  background-image: none;
}
.input-group .b-form-btn-label-control.form-control {
  padding: 0;
}

[dir=rtl] .b-form-btn-label-control.form-control, .b-form-btn-label-control.form-control[dir=rtl] {
  flex-direction: row-reverse;
}
[dir=rtl] .b-form-btn-label-control.form-control > label, .b-form-btn-label-control.form-control[dir=rtl] > label {
  text-align: right;
}

.b-form-btn-label-control.form-control > .btn {
  line-height: 1;
  font-size: inherit;
  box-shadow: none !important;
  border: 0;
}
.b-form-btn-label-control.form-control > .btn:disabled {
  pointer-events: none;
}
.b-form-btn-label-control.form-control.is-valid > .btn {
  color: #28a745;
}
.b-form-btn-label-control.form-control.is-invalid > .btn {
  color: #dc3545;
}
.b-form-btn-label-control.form-control > .dropdown-menu {
  padding: 0.5rem;
}
.b-form-btn-label-control.form-control > .form-control {
  height: auto;
  min-height: calc(calc(1.6em + 0.75rem + 2px) - 2px);
  padding-left: 0.25rem;
  margin: 0;
  border: 0;
  outline: 0;
  background: transparent;
  word-break: break-word;
  font-size: inherit;
  white-space: normal;
  cursor: pointer;
}
.b-form-btn-label-control.form-control > .form-control.form-control-sm {
  min-height: calc(calc(1.5em + 0.5rem + 2px) - 2px);
}
.b-form-btn-label-control.form-control > .form-control.form-control-lg {
  min-height: calc(calc(1.5em + 1rem + 2px) - 2px);
}
.input-group.input-group-sm .b-form-btn-label-control.form-control > .form-control {
  min-height: calc(calc(1.5em + 0.5rem + 2px) - 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.input-group.input-group-lg .b-form-btn-label-control.form-control > .form-control {
  min-height: calc(calc(1.5em + 1rem + 2px) - 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.b-form-btn-label-control.form-control[aria-disabled=true], .b-form-btn-label-control.form-control[aria-readonly=true] {
  background-color: #e9ecef;
  opacity: 1;
}
.b-form-btn-label-control.form-control[aria-disabled=true] {
  pointer-events: none;
}
.b-form-btn-label-control.form-control[aria-disabled=true] > label {
  cursor: default;
}

.b-form-btn-label-control.btn-group > .dropdown-menu {
  padding: 0.5rem;
}

.custom-file-label {
  white-space: nowrap;
  overflow-x: hidden;
}

.b-custom-control-lg.custom-file,
.b-custom-control-lg .custom-file-input,
.b-custom-control-lg .custom-file-label,
.input-group-lg.custom-file,
.input-group-lg .custom-file-input,
.input-group-lg .custom-file-label {
  font-size: 1.125rem;
  height: calc(1.5em + 1rem + 2px);
}
.b-custom-control-lg .custom-file-label,
.b-custom-control-lg .custom-file-label:after,
.input-group-lg .custom-file-label,
.input-group-lg .custom-file-label:after {
  padding: 0.5rem 1rem;
  line-height: 1.5;
}
.b-custom-control-lg .custom-file-label,
.input-group-lg .custom-file-label {
  border-radius: 0.3rem;
}
.b-custom-control-lg .custom-file-label::after,
.input-group-lg .custom-file-label::after {
  font-size: inherit;
  height: calc( 1.5em + 1rem );
  border-radius: 0 0.3rem 0.3rem 0;
}

.b-custom-control-sm.custom-file,
.b-custom-control-sm .custom-file-input,
.b-custom-control-sm .custom-file-label,
.input-group-sm.custom-file,
.input-group-sm .custom-file-input,
.input-group-sm .custom-file-label {
  font-size: 0.7875rem;
  height: calc(1.5em + 0.5rem + 2px);
}
.b-custom-control-sm .custom-file-label,
.b-custom-control-sm .custom-file-label:after,
.input-group-sm .custom-file-label,
.input-group-sm .custom-file-label:after {
  padding: 0.25rem 0.5rem;
  line-height: 1.5;
}
.b-custom-control-sm .custom-file-label,
.input-group-sm .custom-file-label {
  border-radius: 0.2rem;
}
.b-custom-control-sm .custom-file-label::after,
.input-group-sm .custom-file-label::after {
  font-size: inherit;
  height: calc( 1.5em + 0.5rem );
  border-radius: 0 0.2rem 0.2rem 0;
}

.was-validated .form-control:invalid, .was-validated .form-control:valid, .form-control.is-invalid, .form-control.is-valid {
  background-position: right calc(0.4em + 0.1875rem) center;
}

input[type=color].form-control {
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0.125rem 0.25rem;
}

input[type=color].form-control.form-control-sm,
.input-group-sm input[type=color].form-control {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.125rem 0.25rem;
}

input[type=color].form-control.form-control-lg,
.input-group-lg input[type=color].form-control {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.125rem 0.25rem;
}

input[type=color].form-control:disabled {
  background-color: #adb5bd;
  opacity: 0.65;
}

.input-group > .custom-range {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}
.input-group > .custom-range + .form-control,
.input-group > .custom-range + .form-control-plaintext,
.input-group > .custom-range + .custom-select,
.input-group > .custom-range + .custom-range,
.input-group > .custom-range + .custom-file {
  margin-left: -1px;
}
.input-group > .form-control + .custom-range,
.input-group > .form-control-plaintext + .custom-range,
.input-group > .custom-select + .custom-range,
.input-group > .custom-range + .custom-range,
.input-group > .custom-file + .custom-range {
  margin-left: -1px;
}
.input-group > .custom-range:focus {
  z-index: 3;
}
.input-group > .custom-range:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .custom-range:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .custom-range {
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0 0.75rem;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  height: calc(1.6em + 0.75rem + 2px);
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .input-group > .custom-range {
    transition: none;
  }
}
.input-group > .custom-range:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.input-group > .custom-range:disabled, .input-group > .custom-range[readonly] {
  background-color: #e9ecef;
}

.input-group-lg > .custom-range {
  height: calc(1.5em + 1rem + 2px);
  padding: 0 1rem;
  border-radius: 0.3rem;
}

.input-group-sm > .custom-range {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0 0.5rem;
  border-radius: 0.2rem;
}

.was-validated .input-group .custom-range:valid, .input-group .custom-range.is-valid {
  border-color: #28a745;
}
.was-validated .input-group .custom-range:valid:focus, .input-group .custom-range.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-range:valid:focus::-webkit-slider-thumb, .custom-range.is-valid:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem #9be7ac;
}
.was-validated .custom-range:valid:focus::-moz-range-thumb, .custom-range.is-valid:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem #9be7ac;
}
.was-validated .custom-range:valid:focus::-ms-thumb, .custom-range.is-valid:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem #9be7ac;
}
.was-validated .custom-range:valid::-webkit-slider-thumb, .custom-range.is-valid::-webkit-slider-thumb {
  background-color: #28a745;
  background-image: none;
}
.was-validated .custom-range:valid::-webkit-slider-thumb:active, .custom-range.is-valid::-webkit-slider-thumb:active {
  background-color: #9be7ac;
  background-image: none;
}
.was-validated .custom-range:valid::-webkit-slider-runnable-track, .custom-range.is-valid::-webkit-slider-runnable-track {
  background-color: rgba(40, 167, 69, 0.35);
}
.was-validated .custom-range:valid::-moz-range-thumb, .custom-range.is-valid::-moz-range-thumb {
  background-color: #28a745;
  background-image: none;
}
.was-validated .custom-range:valid::-moz-range-thumb:active, .custom-range.is-valid::-moz-range-thumb:active {
  background-color: #9be7ac;
  background-image: none;
}
.was-validated .custom-range:valid::-moz-range-track, .custom-range.is-valid::-moz-range-track {
  background: rgba(40, 167, 69, 0.35);
}
.was-validated .custom-range:valid ~ .valid-feedback,
.was-validated .custom-range:valid ~ .valid-tooltip, .custom-range.is-valid ~ .valid-feedback,
.custom-range.is-valid ~ .valid-tooltip {
  display: block;
}
.was-validated .custom-range:valid::-ms-thumb, .custom-range.is-valid::-ms-thumb {
  background-color: #28a745;
  background-image: none;
}
.was-validated .custom-range:valid::-ms-thumb:active, .custom-range.is-valid::-ms-thumb:active {
  background-color: #9be7ac;
  background-image: none;
}
.was-validated .custom-range:valid::-ms-track-lower, .custom-range.is-valid::-ms-track-lower {
  background: rgba(40, 167, 69, 0.35);
}
.was-validated .custom-range:valid::-ms-track-upper, .custom-range.is-valid::-ms-track-upper {
  background: rgba(40, 167, 69, 0.35);
}

.was-validated .input-group .custom-range:invalid, .input-group .custom-range.is-invalid {
  border-color: #dc3545;
}
.was-validated .input-group .custom-range:invalid:focus, .input-group .custom-range.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-range:invalid:focus::-webkit-slider-thumb, .custom-range.is-invalid:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem #f6cdd1;
}
.was-validated .custom-range:invalid:focus::-moz-range-thumb, .custom-range.is-invalid:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem #f6cdd1;
}
.was-validated .custom-range:invalid:focus::-ms-thumb, .custom-range.is-invalid:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem #f6cdd1;
}
.was-validated .custom-range:invalid::-webkit-slider-thumb, .custom-range.is-invalid::-webkit-slider-thumb {
  background-color: #dc3545;
  background-image: none;
}
.was-validated .custom-range:invalid::-webkit-slider-thumb:active, .custom-range.is-invalid::-webkit-slider-thumb:active {
  background-color: #f6cdd1;
  background-image: none;
}
.was-validated .custom-range:invalid::-webkit-slider-runnable-track, .custom-range.is-invalid::-webkit-slider-runnable-track {
  background-color: rgba(220, 53, 69, 0.35);
}
.was-validated .custom-range:invalid::-moz-range-thumb, .custom-range.is-invalid::-moz-range-thumb {
  background-color: #dc3545;
  background-image: none;
}
.was-validated .custom-range:invalid::-moz-range-thumb:active, .custom-range.is-invalid::-moz-range-thumb:active {
  background-color: #f6cdd1;
  background-image: none;
}
.was-validated .custom-range:invalid::-moz-range-track, .custom-range.is-invalid::-moz-range-track {
  background: rgba(220, 53, 69, 0.35);
}
.was-validated .custom-range:invalid ~ .invalid-feedback,
.was-validated .custom-range:invalid ~ .invalid-tooltip, .custom-range.is-invalid ~ .invalid-feedback,
.custom-range.is-invalid ~ .invalid-tooltip {
  display: block;
}
.was-validated .custom-range:invalid::-ms-thumb, .custom-range.is-invalid::-ms-thumb {
  background-color: #dc3545;
  background-image: none;
}
.was-validated .custom-range:invalid::-ms-thumb:active, .custom-range.is-invalid::-ms-thumb:active {
  background-color: #f6cdd1;
  background-image: none;
}
.was-validated .custom-range:invalid::-ms-track-lower, .custom-range.is-invalid::-ms-track-lower {
  background: rgba(220, 53, 69, 0.35);
}
.was-validated .custom-range:invalid::-ms-track-upper, .custom-range.is-invalid::-ms-track-upper {
  background: rgba(220, 53, 69, 0.35);
}

.custom-radio.b-custom-control-lg,
.input-group-lg .custom-radio {
  font-size: 1.125rem;
  line-height: 1.5;
  padding-left: 1.875rem;
}
.custom-radio.b-custom-control-lg .custom-control-label::before,
.input-group-lg .custom-radio .custom-control-label::before {
  top: 0.21875rem;
  left: -1.875rem;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
}
.custom-radio.b-custom-control-lg .custom-control-label::after,
.input-group-lg .custom-radio .custom-control-label::after {
  top: 0.21875rem;
  left: -1.875rem;
  width: 1.25rem;
  height: 1.25rem;
  background: no-repeat 50%/50% 50%;
}

.custom-radio.b-custom-control-sm,
.input-group-sm .custom-radio {
  font-size: 0.7875rem;
  line-height: 1.5;
  padding-left: 1.3125rem;
}
.custom-radio.b-custom-control-sm .custom-control-label::before,
.input-group-sm .custom-radio .custom-control-label::before {
  top: 0.153125rem;
  left: -1.3125rem;
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 50%;
}
.custom-radio.b-custom-control-sm .custom-control-label::after,
.input-group-sm .custom-radio .custom-control-label::after {
  top: 0.153125rem;
  left: -1.3125rem;
  width: 0.875rem;
  height: 0.875rem;
  background: no-repeat 50%/50% 50%;
}

.b-rating {
  text-align: center;
}
.b-rating.d-inline-flex {
  width: auto;
}
.b-rating .b-rating-star,
.b-rating .b-rating-value {
  padding: 0 0.25em;
}
.b-rating .b-rating-value {
  min-width: 2.5em;
}
.b-rating .b-rating-star {
  display: inline-flex;
  justify-content: center;
  outline: 0;
}
.b-rating .b-rating-star .b-rating-icon {
  display: inline-flex;
  transition: all 0.15s ease-in-out;
}
.b-rating.disabled, .b-rating:disabled {
  background-color: #e9ecef;
  color: #6c757d;
}
.b-rating:not(.disabled):not(.readonly) .b-rating-star {
  cursor: pointer;
}
.b-rating:not(.disabled):not(.readonly):focus:not(:hover) .b-rating-star.focused .b-rating-icon,
.b-rating:not(.disabled):not(.readonly) .b-rating-star:hover .b-rating-icon {
  transform: scale(1.5);
}
.b-rating[dir=rtl] .b-rating-star-half {
  transform: scale(-1, 1);
}

.b-form-spinbutton {
  text-align: center;
  overflow: hidden;
  background-image: none;
  padding: 0;
}
[dir=rtl] .b-form-spinbutton:not(.flex-column), .b-form-spinbutton[dir=rtl]:not(.flex-column) {
  flex-direction: row-reverse;
}

.b-form-spinbutton output {
  font-size: inherit;
  outline: 0;
  border: 0;
  background-color: transparent;
  width: auto;
  margin: 0;
  padding: 0 0.25rem;
}
.b-form-spinbutton output > div,
.b-form-spinbutton output > bdi {
  display: block;
  min-width: 2.25em;
  height: 1.6em;
}
.b-form-spinbutton.flex-column {
  height: auto;
  width: auto;
}
.b-form-spinbutton.flex-column output {
  margin: 0 0.25rem;
  padding: 0.25rem 0;
}
.b-form-spinbutton:not(.d-inline-flex):not(.flex-column) {
  output-width: 100%;
}
.b-form-spinbutton.d-inline-flex:not(.flex-column) {
  width: auto;
}
.b-form-spinbutton .btn {
  line-height: 1;
  box-shadow: none !important;
}
.b-form-spinbutton .btn:disabled {
  pointer-events: none;
}
.b-form-spinbutton .btn:hover:not(:disabled) > div > .b-icon {
  transform: scale(1.25);
}
.b-form-spinbutton.disabled, .b-form-spinbutton.readonly {
  background-color: #e9ecef;
}
.b-form-spinbutton.disabled {
  pointer-events: none;
}

.b-form-tags .b-form-tags-list {
  margin-top: -0.25rem;
}
.b-form-tags .b-form-tags-list .b-from-tags-field,
.b-form-tags .b-form-tags-list .b-form-tag {
  margin-top: 0.25rem;
}
.b-form-tags.focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.b-form-tags.focus.is-valid {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.b-form-tags.focus.is-invalid {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.b-form-tags.disabled {
  background-color: #e9ecef;
}

.b-form-tag {
  font-size: 75%;
  font-weight: normal;
  line-height: 1.6;
  margin-right: 0.25rem;
}
.b-form-tag.disabled {
  opacity: 0.75;
}
.b-form-tag > button.b-form-tag-remove {
  color: inherit;
  font-size: 125%;
  line-height: 1;
  float: none;
  margin-left: 0.25rem;
}

.form-control-sm .b-form-tag {
  line-height: 1.5;
}

.form-control-lg .b-form-tag {
  line-height: 1.5;
}

.media-aside {
  display: flex;
  margin-right: 1rem;
}

.media-aside-right {
  margin-right: 0;
  margin-left: 1rem;
}

.modal-backdrop {
  opacity: 0.5;
}

.b-pagination-pills .page-item .page-link {
  border-radius: 50rem !important;
  margin-left: 0.25rem;
  line-height: 1;
}
.b-pagination-pills .page-item:first-child .page-link {
  margin-left: 0;
}

.popover.b-popover {
  display: block;
  opacity: 1;
  outline: 0;
}
.popover.b-popover.fade:not(.show) {
  opacity: 0;
}
.popover.b-popover.show {
  opacity: 1;
}

.b-popover-primary.popover {
  background-color: #cce5ff;
  border-color: #b8daff;
}
.b-popover-primary.bs-popover-top > .arrow::before, .b-popover-primary.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #b8daff;
}
.b-popover-primary.bs-popover-top > .arrow::after, .b-popover-primary.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #cce5ff;
}
.b-popover-primary.bs-popover-right > .arrow::before, .b-popover-primary.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #b8daff;
}
.b-popover-primary.bs-popover-right > .arrow::after, .b-popover-primary.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #cce5ff;
}
.b-popover-primary.bs-popover-bottom > .arrow::before, .b-popover-primary.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #b8daff;
}
.b-popover-primary.bs-popover-bottom > .arrow::after, .b-popover-primary.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #bdddff;
}
.b-popover-primary.bs-popover-bottom .popover-header::before, .b-popover-primary.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #bdddff;
}
.b-popover-primary.bs-popover-left > .arrow::before, .b-popover-primary.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #b8daff;
}
.b-popover-primary.bs-popover-left > .arrow::after, .b-popover-primary.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #cce5ff;
}
.b-popover-primary .popover-header {
  color: #212529;
  background-color: #bdddff;
  border-bottom-color: #a3d0ff;
}
.b-popover-primary .popover-body {
  color: #004085;
}

.b-popover-secondary.popover {
  background-color: #e2e3e5;
  border-color: #d6d8db;
}
.b-popover-secondary.bs-popover-top > .arrow::before, .b-popover-secondary.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #d6d8db;
}
.b-popover-secondary.bs-popover-top > .arrow::after, .b-popover-secondary.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #e2e3e5;
}
.b-popover-secondary.bs-popover-right > .arrow::before, .b-popover-secondary.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #d6d8db;
}
.b-popover-secondary.bs-popover-right > .arrow::after, .b-popover-secondary.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #e2e3e5;
}
.b-popover-secondary.bs-popover-bottom > .arrow::before, .b-popover-secondary.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #d6d8db;
}
.b-popover-secondary.bs-popover-bottom > .arrow::after, .b-popover-secondary.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #dadbde;
}
.b-popover-secondary.bs-popover-bottom .popover-header::before, .b-popover-secondary.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #dadbde;
}
.b-popover-secondary.bs-popover-left > .arrow::before, .b-popover-secondary.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #d6d8db;
}
.b-popover-secondary.bs-popover-left > .arrow::after, .b-popover-secondary.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #e2e3e5;
}
.b-popover-secondary .popover-header {
  color: #212529;
  background-color: #dadbde;
  border-bottom-color: #ccced2;
}
.b-popover-secondary .popover-body {
  color: #383d41;
}

.b-popover-success.popover {
  background-color: #d4edda;
  border-color: #c3e6cb;
}
.b-popover-success.bs-popover-top > .arrow::before, .b-popover-success.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #c3e6cb;
}
.b-popover-success.bs-popover-top > .arrow::after, .b-popover-success.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #d4edda;
}
.b-popover-success.bs-popover-right > .arrow::before, .b-popover-success.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #c3e6cb;
}
.b-popover-success.bs-popover-right > .arrow::after, .b-popover-success.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #d4edda;
}
.b-popover-success.bs-popover-bottom > .arrow::before, .b-popover-success.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #c3e6cb;
}
.b-popover-success.bs-popover-bottom > .arrow::after, .b-popover-success.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #c9e8d1;
}
.b-popover-success.bs-popover-bottom .popover-header::before, .b-popover-success.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #c9e8d1;
}
.b-popover-success.bs-popover-left > .arrow::before, .b-popover-success.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #c3e6cb;
}
.b-popover-success.bs-popover-left > .arrow::after, .b-popover-success.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #d4edda;
}
.b-popover-success .popover-header {
  color: #212529;
  background-color: #c9e8d1;
  border-bottom-color: #b7e1c1;
}
.b-popover-success .popover-body {
  color: #155724;
}

.b-popover-info.popover {
  background-color: #d1ecf1;
  border-color: #bee5eb;
}
.b-popover-info.bs-popover-top > .arrow::before, .b-popover-info.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #bee5eb;
}
.b-popover-info.bs-popover-top > .arrow::after, .b-popover-info.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #d1ecf1;
}
.b-popover-info.bs-popover-right > .arrow::before, .b-popover-info.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #bee5eb;
}
.b-popover-info.bs-popover-right > .arrow::after, .b-popover-info.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #d1ecf1;
}
.b-popover-info.bs-popover-bottom > .arrow::before, .b-popover-info.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #bee5eb;
}
.b-popover-info.bs-popover-bottom > .arrow::after, .b-popover-info.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #c5e7ed;
}
.b-popover-info.bs-popover-bottom .popover-header::before, .b-popover-info.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #c5e7ed;
}
.b-popover-info.bs-popover-left > .arrow::before, .b-popover-info.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #bee5eb;
}
.b-popover-info.bs-popover-left > .arrow::after, .b-popover-info.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #d1ecf1;
}
.b-popover-info .popover-header {
  color: #212529;
  background-color: #c5e7ed;
  border-bottom-color: #b2dfe7;
}
.b-popover-info .popover-body {
  color: #0c5460;
}

.b-popover-warning.popover {
  background-color: #fff3cd;
  border-color: #ffeeba;
}
.b-popover-warning.bs-popover-top > .arrow::before, .b-popover-warning.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #ffeeba;
}
.b-popover-warning.bs-popover-top > .arrow::after, .b-popover-warning.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #fff3cd;
}
.b-popover-warning.bs-popover-right > .arrow::before, .b-popover-warning.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #ffeeba;
}
.b-popover-warning.bs-popover-right > .arrow::after, .b-popover-warning.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #fff3cd;
}
.b-popover-warning.bs-popover-bottom > .arrow::before, .b-popover-warning.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #ffeeba;
}
.b-popover-warning.bs-popover-bottom > .arrow::after, .b-popover-warning.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #ffefbe;
}
.b-popover-warning.bs-popover-bottom .popover-header::before, .b-popover-warning.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #ffefbe;
}
.b-popover-warning.bs-popover-left > .arrow::before, .b-popover-warning.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #ffeeba;
}
.b-popover-warning.bs-popover-left > .arrow::after, .b-popover-warning.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #fff3cd;
}
.b-popover-warning .popover-header {
  color: #212529;
  background-color: #ffefbe;
  border-bottom-color: #ffe9a4;
}
.b-popover-warning .popover-body {
  color: #856404;
}

.b-popover-danger.popover {
  background-color: #f8d7da;
  border-color: #f5c6cb;
}
.b-popover-danger.bs-popover-top > .arrow::before, .b-popover-danger.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #f5c6cb;
}
.b-popover-danger.bs-popover-top > .arrow::after, .b-popover-danger.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #f8d7da;
}
.b-popover-danger.bs-popover-right > .arrow::before, .b-popover-danger.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #f5c6cb;
}
.b-popover-danger.bs-popover-right > .arrow::after, .b-popover-danger.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #f8d7da;
}
.b-popover-danger.bs-popover-bottom > .arrow::before, .b-popover-danger.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #f5c6cb;
}
.b-popover-danger.bs-popover-bottom > .arrow::after, .b-popover-danger.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #f6cace;
}
.b-popover-danger.bs-popover-bottom .popover-header::before, .b-popover-danger.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #f6cace;
}
.b-popover-danger.bs-popover-left > .arrow::before, .b-popover-danger.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #f5c6cb;
}
.b-popover-danger.bs-popover-left > .arrow::after, .b-popover-danger.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #f8d7da;
}
.b-popover-danger .popover-header {
  color: #212529;
  background-color: #f6cace;
  border-bottom-color: #f2b4ba;
}
.b-popover-danger .popover-body {
  color: #721c24;
}

.b-popover-light.popover {
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.b-popover-light.bs-popover-top > .arrow::before, .b-popover-light.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #fdfdfe;
}
.b-popover-light.bs-popover-top > .arrow::after, .b-popover-light.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #fefefe;
}
.b-popover-light.bs-popover-right > .arrow::before, .b-popover-light.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #fdfdfe;
}
.b-popover-light.bs-popover-right > .arrow::after, .b-popover-light.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #fefefe;
}
.b-popover-light.bs-popover-bottom > .arrow::before, .b-popover-light.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #fdfdfe;
}
.b-popover-light.bs-popover-bottom > .arrow::after, .b-popover-light.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #f6f6f6;
}
.b-popover-light.bs-popover-bottom .popover-header::before, .b-popover-light.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #f6f6f6;
}
.b-popover-light.bs-popover-left > .arrow::before, .b-popover-light.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #fdfdfe;
}
.b-popover-light.bs-popover-left > .arrow::after, .b-popover-light.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #fefefe;
}
.b-popover-light .popover-header {
  color: #212529;
  background-color: #f6f6f6;
  border-bottom-color: #eaeaea;
}
.b-popover-light .popover-body {
  color: #818182;
}

.b-popover-dark.popover {
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}
.b-popover-dark.bs-popover-top > .arrow::before, .b-popover-dark.bs-popover-auto[x-placement^=top] > .arrow::before {
  border-top-color: #c6c8ca;
}
.b-popover-dark.bs-popover-top > .arrow::after, .b-popover-dark.bs-popover-auto[x-placement^=top] > .arrow::after {
  border-top-color: #d6d8d9;
}
.b-popover-dark.bs-popover-right > .arrow::before, .b-popover-dark.bs-popover-auto[x-placement^=right] > .arrow::before {
  border-right-color: #c6c8ca;
}
.b-popover-dark.bs-popover-right > .arrow::after, .b-popover-dark.bs-popover-auto[x-placement^=right] > .arrow::after {
  border-right-color: #d6d8d9;
}
.b-popover-dark.bs-popover-bottom > .arrow::before, .b-popover-dark.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  border-bottom-color: #c6c8ca;
}
.b-popover-dark.bs-popover-bottom > .arrow::after, .b-popover-dark.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  border-bottom-color: #ced0d2;
}
.b-popover-dark.bs-popover-bottom .popover-header::before, .b-popover-dark.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  border-bottom-color: #ced0d2;
}
.b-popover-dark.bs-popover-left > .arrow::before, .b-popover-dark.bs-popover-auto[x-placement^=left] > .arrow::before {
  border-left-color: #c6c8ca;
}
.b-popover-dark.bs-popover-left > .arrow::after, .b-popover-dark.bs-popover-auto[x-placement^=left] > .arrow::after {
  border-left-color: #d6d8d9;
}
.b-popover-dark .popover-header {
  color: #212529;
  background-color: #ced0d2;
  border-bottom-color: #c1c4c5;
}
.b-popover-dark .popover-body {
  color: #1b1e21;
}

.b-sidebar-outer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 0;
  overflow: visible;
  z-index: calc(1030 + 5);
}

.b-sidebar-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100vw;
  height: 100vh;
  opacity: 0.6;
}

.b-sidebar {
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 0;
  width: 320px;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  margin: 0;
  outline: 0;
  transform: translateX(0);
}
.b-sidebar.slide {
  transition: transform 0.3s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .b-sidebar.slide {
    transition: none;
  }
}
.b-sidebar:not(.b-sidebar-right) {
  left: 0;
  right: auto;
}
.b-sidebar:not(.b-sidebar-right).slide:not(.show) {
  transform: translateX(-100%);
}
.b-sidebar:not(.b-sidebar-right) > .b-sidebar-header .close {
  margin-left: auto;
}
.b-sidebar.b-sidebar-right {
  left: auto;
  right: 0;
}
.b-sidebar.b-sidebar-right.slide:not(.show) {
  transform: translateX(100%);
}
.b-sidebar.b-sidebar-right > .b-sidebar-header .close {
  margin-right: auto;
}
.b-sidebar > .b-sidebar-header {
  font-size: 1.5rem;
  padding: 0.5rem 1rem;
  display: flex;
  flex-direction: row;
  flex-grow: 0;
  align-items: center;
}
[dir=rtl] .b-sidebar > .b-sidebar-header {
  flex-direction: row-reverse;
}

.b-sidebar > .b-sidebar-header .close {
  float: none;
  font-size: 1.5rem;
}
.b-sidebar > .b-sidebar-body {
  flex-grow: 1;
  height: 100%;
  overflow-y: auto;
}
.b-sidebar > .b-sidebar-footer {
  flex-grow: 0;
}

.b-skeleton-wrapper {
  cursor: wait;
}

.b-skeleton {
  position: relative;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.12);
  cursor: wait;
  -webkit-mask-image: radial-gradient(white, black);
          mask-image: radial-gradient(white, black);
}
.b-skeleton::before {
  content: " ";
}

.b-skeleton-text {
  height: 0.9rem;
  margin-bottom: 0.25rem;
  border-radius: 0.25rem;
}

.b-skeleton-button {
  width: 75px;
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  line-height: 1.6;
  border-radius: 0.25rem;
}

.b-skeleton-avatar {
  width: 2.5em;
  height: 2.5em;
  border-radius: 50%;
}

.b-skeleton-input {
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  line-height: 1.6;
  border: #ced4da solid 1px;
  border-radius: 0.25rem;
}

.b-skeleton-icon-wrapper svg {
  color: rgba(0, 0, 0, 0.12);
}

.b-skeleton-img {
  height: 100%;
  width: 100%;
}

.b-skeleton-animate-wave::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  -webkit-animation: b-skeleton-animate-wave 1.75s linear infinite;
          animation: b-skeleton-animate-wave 1.75s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .b-skeleton-animate-wave::after {
    background: none;
    -webkit-animation: none;
            animation: none;
  }
}

@-webkit-keyframes b-skeleton-animate-wave {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(100%);
  }
}

@keyframes b-skeleton-animate-wave {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(100%);
  }
}
.b-skeleton-animate-fade {
  -webkit-animation: b-skeleton-animate-fade 0.875s ease-in-out alternate infinite;
          animation: b-skeleton-animate-fade 0.875s ease-in-out alternate infinite;
}
@media (prefers-reduced-motion: reduce) {
  .b-skeleton-animate-fade {
    -webkit-animation: none;
            animation: none;
  }
}

@-webkit-keyframes b-skeleton-animate-fade {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0.4;
  }
}

@keyframes b-skeleton-animate-fade {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0.4;
  }
}
.b-skeleton-animate-throb {
  -webkit-animation: b-skeleton-animate-throb 0.875s ease-in alternate infinite;
          animation: b-skeleton-animate-throb 0.875s ease-in alternate infinite;
}
@media (prefers-reduced-motion: reduce) {
  .b-skeleton-animate-throb {
    -webkit-animation: none;
            animation: none;
  }
}

@-webkit-keyframes b-skeleton-animate-throb {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.975);
  }
}

@keyframes b-skeleton-animate-throb {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.975);
  }
}
.table.b-table.b-table-fixed {
  table-layout: fixed;
}
.table.b-table.b-table-no-border-collapse {
  border-collapse: separate;
  border-spacing: 0;
}
.table.b-table[aria-busy=true] {
  opacity: 0.55;
}
.table.b-table > tbody > tr.b-table-details > td {
  border-top: none !important;
}
.table.b-table > caption {
  caption-side: bottom;
}
.table.b-table.b-table-caption-top > caption {
  caption-side: top !important;
}
.table.b-table > tbody > .table-active,
.table.b-table > tbody > .table-active > th,
.table.b-table > tbody > .table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}
.table.b-table.table-hover > tbody > tr.table-active:hover td,
.table.b-table.table-hover > tbody > tr.table-active:hover th {
  color: #212529;
  background-image: linear-gradient(rgba(0, 0, 0, 0.075), rgba(0, 0, 0, 0.075));
  background-repeat: no-repeat;
}
.table.b-table > tbody > .bg-active,
.table.b-table > tbody > .bg-active > th,
.table.b-table > tbody > .bg-active > td {
  background-color: rgba(255, 255, 255, 0.075) !important;
}
.table.b-table.table-hover.table-dark > tbody > tr.bg-active:hover td,
.table.b-table.table-hover.table-dark > tbody > tr.bg-active:hover th {
  color: #fff;
  background-image: linear-gradient(rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.075));
  background-repeat: no-repeat;
}

.b-table-sticky-header,
.table-responsive,
[class*=table-responsive-] {
  margin-bottom: 1rem;
}
.b-table-sticky-header > .table,
.table-responsive > .table,
[class*=table-responsive-] > .table {
  margin-bottom: 0;
}

.b-table-sticky-header {
  overflow-y: auto;
  max-height: 300px;
}

@media print {
  .b-table-sticky-header {
    overflow-y: visible !important;
    max-height: none !important;
  }
}
@supports (position: sticky) {
  .b-table-sticky-header > .table.b-table > thead > tr > th {
    position: sticky;
    top: 0;
    z-index: 2;
  }

  .b-table-sticky-header > .table.b-table > thead > tr > .b-table-sticky-column,
.b-table-sticky-header > .table.b-table > tbody > tr > .b-table-sticky-column,
.b-table-sticky-header > .table.b-table > tfoot > tr > .b-table-sticky-column,
.table-responsive > .table.b-table > thead > tr > .b-table-sticky-column,
.table-responsive > .table.b-table > tbody > tr > .b-table-sticky-column,
.table-responsive > .table.b-table > tfoot > tr > .b-table-sticky-column,
[class*=table-responsive-] > .table.b-table > thead > tr > .b-table-sticky-column,
[class*=table-responsive-] > .table.b-table > tbody > tr > .b-table-sticky-column,
[class*=table-responsive-] > .table.b-table > tfoot > tr > .b-table-sticky-column {
    position: sticky;
    left: 0;
  }
  .b-table-sticky-header > .table.b-table > thead > tr > .b-table-sticky-column,
.table-responsive > .table.b-table > thead > tr > .b-table-sticky-column,
[class*=table-responsive-] > .table.b-table > thead > tr > .b-table-sticky-column {
    z-index: 5;
  }
  .b-table-sticky-header > .table.b-table > tbody > tr > .b-table-sticky-column,
.b-table-sticky-header > .table.b-table > tfoot > tr > .b-table-sticky-column,
.table-responsive > .table.b-table > tbody > tr > .b-table-sticky-column,
.table-responsive > .table.b-table > tfoot > tr > .b-table-sticky-column,
[class*=table-responsive-] > .table.b-table > tbody > tr > .b-table-sticky-column,
[class*=table-responsive-] > .table.b-table > tfoot > tr > .b-table-sticky-column {
    z-index: 2;
  }

  .table.b-table > thead > tr > .table-b-table-default,
.table.b-table > tbody > tr > .table-b-table-default,
.table.b-table > tfoot > tr > .table-b-table-default {
    color: #212529;
    background-color: #f8fafc;
  }
  .table.b-table.table-dark > thead > tr > .bg-b-table-default,
.table.b-table.table-dark > tbody > tr > .bg-b-table-default,
.table.b-table.table-dark > tfoot > tr > .bg-b-table-default {
    color: #fff;
    background-color: #343a40;
  }
  .table.b-table.table-striped > tbody > tr:nth-of-type(odd) > .table-b-table-default {
    background-image: linear-gradient(rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05));
    background-repeat: no-repeat;
  }
  .table.b-table.table-striped.table-dark > tbody > tr:nth-of-type(odd) > .bg-b-table-default {
    background-image: linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05));
    background-repeat: no-repeat;
  }
  .table.b-table.table-hover > tbody > tr:hover > .table-b-table-default {
    color: #212529;
    background-image: linear-gradient(rgba(0, 0, 0, 0.075), rgba(0, 0, 0, 0.075));
    background-repeat: no-repeat;
  }
  .table.b-table.table-hover.table-dark > tbody > tr:hover > .bg-b-table-default {
    color: #fff;
    background-image: linear-gradient(rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.075));
    background-repeat: no-repeat;
  }
}
.table.b-table > thead > tr > [aria-sort],
.table.b-table > tfoot > tr > [aria-sort] {
  cursor: pointer;
  background-image: none;
  background-repeat: no-repeat;
  background-size: 0.65em 1em;
}
.table.b-table > thead > tr > [aria-sort]:not(.b-table-sort-icon-left),
.table.b-table > tfoot > tr > [aria-sort]:not(.b-table-sort-icon-left) {
  background-position: right calc(0.75rem / 2) center;
  padding-right: calc(0.75rem + 0.65em);
}
.table.b-table > thead > tr > [aria-sort].b-table-sort-icon-left,
.table.b-table > tfoot > tr > [aria-sort].b-table-sort-icon-left {
  background-position: left calc(0.75rem / 2) center;
  padding-left: calc(0.75rem + 0.65em);
}
.table.b-table > thead > tr > [aria-sort=none],
.table.b-table > tfoot > tr > [aria-sort=none] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > [aria-sort=ascending],
.table.b-table > tfoot > tr > [aria-sort=ascending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='black' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > [aria-sort=descending],
.table.b-table > tfoot > tr > [aria-sort=descending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='black' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-dark > thead > tr > [aria-sort=none], .table.b-table.table-dark > tfoot > tr > [aria-sort=none],
.table.b-table > .thead-dark > tr > [aria-sort=none] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-dark > thead > tr > [aria-sort=ascending], .table.b-table.table-dark > tfoot > tr > [aria-sort=ascending],
.table.b-table > .thead-dark > tr > [aria-sort=ascending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-dark > thead > tr > [aria-sort=descending], .table.b-table.table-dark > tfoot > tr > [aria-sort=descending],
.table.b-table > .thead-dark > tr > [aria-sort=descending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > .table-dark[aria-sort=none],
.table.b-table > tfoot > tr > .table-dark[aria-sort=none] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > .table-dark[aria-sort=ascending],
.table.b-table > tfoot > tr > .table-dark[aria-sort=ascending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > .table-dark[aria-sort=descending],
.table.b-table > tfoot > tr > .table-dark[aria-sort=descending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-sm > thead > tr > [aria-sort]:not(.b-table-sort-icon-left),
.table.b-table.table-sm > tfoot > tr > [aria-sort]:not(.b-table-sort-icon-left) {
  background-position: right calc(0.3rem / 2) center;
  padding-right: calc(0.3rem + 0.65em);
}
.table.b-table.table-sm > thead > tr > [aria-sort].b-table-sort-icon-left,
.table.b-table.table-sm > tfoot > tr > [aria-sort].b-table-sort-icon-left {
  background-position: left calc(0.3rem / 2) center;
  padding-left: calc(0.3rem + 0.65em);
}

.table.b-table.b-table-selectable:not(.b-table-selectable-no-click) > tbody > tr {
  cursor: pointer;
}
.table.b-table.b-table-selectable:not(.b-table-selectable-no-click).b-table-selecting.b-table-select-range > tbody > tr {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

@media (max-width: 575.98px) {
  .table.b-table.b-table-stacked-sm {
    display: block;
    width: 100%;
  }
  .table.b-table.b-table-stacked-sm > caption,
.table.b-table.b-table-stacked-sm > tbody,
.table.b-table.b-table-stacked-sm > tbody > tr,
.table.b-table.b-table-stacked-sm > tbody > tr > td,
.table.b-table.b-table-stacked-sm > tbody > tr > th {
    display: block;
  }
  .table.b-table.b-table-stacked-sm > thead,
.table.b-table.b-table-stacked-sm > tfoot {
    display: none;
  }
  .table.b-table.b-table-stacked-sm > thead > tr.b-table-top-row,
.table.b-table.b-table-stacked-sm > thead > tr.b-table-bottom-row,
.table.b-table.b-table-stacked-sm > tfoot > tr.b-table-top-row,
.table.b-table.b-table-stacked-sm > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-sm > caption {
    caption-side: top !important;
  }
  .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  .table.b-table.b-table-stacked-sm > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  .table.b-table.b-table-stacked-sm > tbody > tr.top-row, .table.b-table.b-table-stacked-sm > tbody > tr.bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-sm > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  .table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + td,
.table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@media (max-width: 767.98px) {
  .table.b-table.b-table-stacked-md {
    display: block;
    width: 100%;
  }
  .table.b-table.b-table-stacked-md > caption,
.table.b-table.b-table-stacked-md > tbody,
.table.b-table.b-table-stacked-md > tbody > tr,
.table.b-table.b-table-stacked-md > tbody > tr > td,
.table.b-table.b-table-stacked-md > tbody > tr > th {
    display: block;
  }
  .table.b-table.b-table-stacked-md > thead,
.table.b-table.b-table-stacked-md > tfoot {
    display: none;
  }
  .table.b-table.b-table-stacked-md > thead > tr.b-table-top-row,
.table.b-table.b-table-stacked-md > thead > tr.b-table-bottom-row,
.table.b-table.b-table-stacked-md > tfoot > tr.b-table-top-row,
.table.b-table.b-table-stacked-md > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-md > caption {
    caption-side: top !important;
  }
  .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  .table.b-table.b-table-stacked-md > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  .table.b-table.b-table-stacked-md > tbody > tr.top-row, .table.b-table.b-table-stacked-md > tbody > tr.bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-md > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  .table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + td,
.table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@media (max-width: 991.98px) {
  .table.b-table.b-table-stacked-lg {
    display: block;
    width: 100%;
  }
  .table.b-table.b-table-stacked-lg > caption,
.table.b-table.b-table-stacked-lg > tbody,
.table.b-table.b-table-stacked-lg > tbody > tr,
.table.b-table.b-table-stacked-lg > tbody > tr > td,
.table.b-table.b-table-stacked-lg > tbody > tr > th {
    display: block;
  }
  .table.b-table.b-table-stacked-lg > thead,
.table.b-table.b-table-stacked-lg > tfoot {
    display: none;
  }
  .table.b-table.b-table-stacked-lg > thead > tr.b-table-top-row,
.table.b-table.b-table-stacked-lg > thead > tr.b-table-bottom-row,
.table.b-table.b-table-stacked-lg > tfoot > tr.b-table-top-row,
.table.b-table.b-table-stacked-lg > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-lg > caption {
    caption-side: top !important;
  }
  .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  .table.b-table.b-table-stacked-lg > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  .table.b-table.b-table-stacked-lg > tbody > tr.top-row, .table.b-table.b-table-stacked-lg > tbody > tr.bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-lg > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  .table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + td,
.table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@media (max-width: 1199.98px) {
  .table.b-table.b-table-stacked-xl {
    display: block;
    width: 100%;
  }
  .table.b-table.b-table-stacked-xl > caption,
.table.b-table.b-table-stacked-xl > tbody,
.table.b-table.b-table-stacked-xl > tbody > tr,
.table.b-table.b-table-stacked-xl > tbody > tr > td,
.table.b-table.b-table-stacked-xl > tbody > tr > th {
    display: block;
  }
  .table.b-table.b-table-stacked-xl > thead,
.table.b-table.b-table-stacked-xl > tfoot {
    display: none;
  }
  .table.b-table.b-table-stacked-xl > thead > tr.b-table-top-row,
.table.b-table.b-table-stacked-xl > thead > tr.b-table-bottom-row,
.table.b-table.b-table-stacked-xl > tfoot > tr.b-table-top-row,
.table.b-table.b-table-stacked-xl > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-xl > caption {
    caption-side: top !important;
  }
  .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  .table.b-table.b-table-stacked-xl > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  .table.b-table.b-table-stacked-xl > tbody > tr.top-row, .table.b-table.b-table-stacked-xl > tbody > tr.bottom-row {
    display: none;
  }
  .table.b-table.b-table-stacked-xl > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  .table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + td,
.table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
.table.b-table.b-table-stacked {
  display: block;
  width: 100%;
}
.table.b-table.b-table-stacked > caption,
.table.b-table.b-table-stacked > tbody,
.table.b-table.b-table-stacked > tbody > tr,
.table.b-table.b-table-stacked > tbody > tr > td,
.table.b-table.b-table-stacked > tbody > tr > th {
  display: block;
}
.table.b-table.b-table-stacked > thead,
.table.b-table.b-table-stacked > tfoot {
  display: none;
}
.table.b-table.b-table-stacked > thead > tr.b-table-top-row,
.table.b-table.b-table-stacked > thead > tr.b-table-bottom-row,
.table.b-table.b-table-stacked > tfoot > tr.b-table-top-row,
.table.b-table.b-table-stacked > tfoot > tr.b-table-bottom-row {
  display: none;
}
.table.b-table.b-table-stacked > caption {
  caption-side: top !important;
}
.table.b-table.b-table-stacked > tbody > tr > [data-label]::before {
  content: attr(data-label);
  width: 40%;
  float: left;
  text-align: right;
  overflow-wrap: break-word;
  font-weight: bold;
  font-style: normal;
  padding: 0 calc(1rem / 2) 0 0;
  margin: 0;
}
.table.b-table.b-table-stacked > tbody > tr > [data-label]::after {
  display: block;
  clear: both;
  content: "";
}
.table.b-table.b-table-stacked > tbody > tr > [data-label] > div {
  display: inline-block;
  width: calc(100% - 40%);
  padding: 0 0 0 calc(1rem / 2);
  margin: 0;
}
.table.b-table.b-table-stacked > tbody > tr.top-row, .table.b-table.b-table-stacked > tbody > tr.bottom-row {
  display: none;
}
.table.b-table.b-table-stacked > tbody > tr > :first-child {
  border-top-width: 3px;
}
.table.b-table.b-table-stacked > tbody > tr > [rowspan] + td,
.table.b-table.b-table-stacked > tbody > tr > [rowspan] + th {
  border-top-width: 3px;
}

.b-time {
  min-width: 150px;
}
.b-time[aria-disabled=true] output, .b-time[aria-readonly=true] output,
.b-time output.disabled {
  background-color: #e9ecef;
  opacity: 1;
}
.b-time[aria-disabled=true] output {
  pointer-events: none;
}
[dir=rtl] .b-time > .d-flex:not(.flex-column) {
  flex-direction: row-reverse;
}

.b-time .b-time-header {
  margin-bottom: 0.5rem;
}
.b-time .b-time-header output {
  padding: 0.25rem;
  font-size: 80%;
}
.b-time .b-time-footer {
  margin-top: 0.5rem;
}
.b-time .b-time-ampm {
  margin-left: 0.5rem;
}

.b-toast {
  display: block;
  position: relative;
  max-width: 350px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background-clip: padding-box;
  z-index: 1;
  border-radius: 0.25rem;
}
.b-toast .toast {
  background-color: rgba(255, 255, 255, 0.85);
}
.b-toast:not(:last-child) {
  margin-bottom: 0.75rem;
}
.b-toast.b-toast-solid .toast {
  background-color: white;
}
.b-toast .toast {
  opacity: 1;
}
.b-toast .toast.fade:not(.show) {
  opacity: 0;
}
.b-toast .toast .toast-body {
  display: block;
}

.b-toast-primary .toast {
  background-color: rgba(230, 242, 255, 0.85);
  border-color: rgba(184, 218, 255, 0.85);
  color: #004085;
}
.b-toast-primary .toast .toast-header {
  color: #004085;
  background-color: rgba(204, 229, 255, 0.85);
  border-bottom-color: rgba(184, 218, 255, 0.85);
}
.b-toast-primary.b-toast-solid .toast {
  background-color: #e6f2ff;
}

.b-toast-secondary .toast {
  background-color: rgba(239, 240, 241, 0.85);
  border-color: rgba(214, 216, 219, 0.85);
  color: #383d41;
}
.b-toast-secondary .toast .toast-header {
  color: #383d41;
  background-color: rgba(226, 227, 229, 0.85);
  border-bottom-color: rgba(214, 216, 219, 0.85);
}
.b-toast-secondary.b-toast-solid .toast {
  background-color: #eff0f1;
}

.b-toast-success .toast {
  background-color: rgba(230, 245, 233, 0.85);
  border-color: rgba(195, 230, 203, 0.85);
  color: #155724;
}
.b-toast-success .toast .toast-header {
  color: #155724;
  background-color: rgba(212, 237, 218, 0.85);
  border-bottom-color: rgba(195, 230, 203, 0.85);
}
.b-toast-success.b-toast-solid .toast {
  background-color: #e6f5e9;
}

.b-toast-info .toast {
  background-color: rgba(229, 244, 247, 0.85);
  border-color: rgba(190, 229, 235, 0.85);
  color: #0c5460;
}
.b-toast-info .toast .toast-header {
  color: #0c5460;
  background-color: rgba(209, 236, 241, 0.85);
  border-bottom-color: rgba(190, 229, 235, 0.85);
}
.b-toast-info.b-toast-solid .toast {
  background-color: #e5f4f7;
}

.b-toast-warning .toast {
  background-color: rgba(255, 249, 231, 0.85);
  border-color: rgba(255, 238, 186, 0.85);
  color: #856404;
}
.b-toast-warning .toast .toast-header {
  color: #856404;
  background-color: rgba(255, 243, 205, 0.85);
  border-bottom-color: rgba(255, 238, 186, 0.85);
}
.b-toast-warning.b-toast-solid .toast {
  background-color: #fff9e7;
}

.b-toast-danger .toast {
  background-color: rgba(252, 237, 238, 0.85);
  border-color: rgba(245, 198, 203, 0.85);
  color: #721c24;
}
.b-toast-danger .toast .toast-header {
  color: #721c24;
  background-color: rgba(248, 215, 218, 0.85);
  border-bottom-color: rgba(245, 198, 203, 0.85);
}
.b-toast-danger.b-toast-solid .toast {
  background-color: #fcedee;
}

.b-toast-light .toast {
  background-color: rgba(255, 255, 255, 0.85);
  border-color: rgba(253, 253, 254, 0.85);
  color: #818182;
}
.b-toast-light .toast .toast-header {
  color: #818182;
  background-color: rgba(254, 254, 254, 0.85);
  border-bottom-color: rgba(253, 253, 254, 0.85);
}
.b-toast-light.b-toast-solid .toast {
  background-color: white;
}

.b-toast-dark .toast {
  background-color: rgba(227, 229, 229, 0.85);
  border-color: rgba(198, 200, 202, 0.85);
  color: #1b1e21;
}
.b-toast-dark .toast .toast-header {
  color: #1b1e21;
  background-color: rgba(214, 216, 217, 0.85);
  border-bottom-color: rgba(198, 200, 202, 0.85);
}
.b-toast-dark.b-toast-solid .toast {
  background-color: #e3e5e5;
}

.b-toaster {
  z-index: 1100;
}
.b-toaster .b-toaster-slot {
  position: relative;
  display: block;
}
.b-toaster .b-toaster-slot:empty {
  display: none !important;
}

.b-toaster.b-toaster-top-right, .b-toaster.b-toaster-top-left, .b-toaster.b-toaster-top-center, .b-toaster.b-toaster-top-full, .b-toaster.b-toaster-bottom-right, .b-toaster.b-toaster-bottom-left, .b-toaster.b-toaster-bottom-center, .b-toaster.b-toaster-bottom-full {
  position: fixed;
  left: 0.5rem;
  right: 0.5rem;
  margin: 0;
  padding: 0;
  height: 0;
  overflow: visible;
}
.b-toaster.b-toaster-top-right .b-toaster-slot, .b-toaster.b-toaster-top-left .b-toaster-slot, .b-toaster.b-toaster-top-center .b-toaster-slot, .b-toaster.b-toaster-top-full .b-toaster-slot, .b-toaster.b-toaster-bottom-right .b-toaster-slot, .b-toaster.b-toaster-bottom-left .b-toaster-slot, .b-toaster.b-toaster-bottom-center .b-toaster-slot, .b-toaster.b-toaster-bottom-full .b-toaster-slot {
  position: absolute;
  max-width: 350px;
  width: 100%;
  /* IE 11 fix */
  left: 0;
  right: 0;
  padding: 0;
  margin: 0;
}
.b-toaster.b-toaster-top-full .b-toaster-slot, .b-toaster.b-toaster-bottom-full .b-toaster-slot {
  width: 100%;
  max-width: 100%;
}
.b-toaster.b-toaster-top-full .b-toaster-slot .b-toast,
.b-toaster.b-toaster-top-full .b-toaster-slot .toast, .b-toaster.b-toaster-bottom-full .b-toaster-slot .b-toast,
.b-toaster.b-toaster-bottom-full .b-toaster-slot .toast {
  width: 100%;
  max-width: 100%;
}
.b-toaster.b-toaster-top-right, .b-toaster.b-toaster-top-left, .b-toaster.b-toaster-top-center, .b-toaster.b-toaster-top-full {
  top: 0;
}
.b-toaster.b-toaster-top-right .b-toaster-slot, .b-toaster.b-toaster-top-left .b-toaster-slot, .b-toaster.b-toaster-top-center .b-toaster-slot, .b-toaster.b-toaster-top-full .b-toaster-slot {
  top: 0.5rem;
}
.b-toaster.b-toaster-bottom-right, .b-toaster.b-toaster-bottom-left, .b-toaster.b-toaster-bottom-center, .b-toaster.b-toaster-bottom-full {
  bottom: 0;
}
.b-toaster.b-toaster-bottom-right .b-toaster-slot, .b-toaster.b-toaster-bottom-left .b-toaster-slot, .b-toaster.b-toaster-bottom-center .b-toaster-slot, .b-toaster.b-toaster-bottom-full .b-toaster-slot {
  bottom: 0.5rem;
}
.b-toaster.b-toaster-top-right .b-toaster-slot, .b-toaster.b-toaster-bottom-right .b-toaster-slot, .b-toaster.b-toaster-top-center .b-toaster-slot, .b-toaster.b-toaster-bottom-center .b-toaster-slot {
  margin-left: auto;
}
.b-toaster.b-toaster-top-left .b-toaster-slot, .b-toaster.b-toaster-bottom-left .b-toaster-slot, .b-toaster.b-toaster-top-center .b-toaster-slot, .b-toaster.b-toaster-bottom-center .b-toaster-slot {
  margin-right: auto;
}

.b-toaster.b-toaster-top-right .b-toast.b-toaster-enter-active, .b-toaster.b-toaster-top-right .b-toast.b-toaster-leave-active, .b-toaster.b-toaster-top-right .b-toast.b-toaster-move, .b-toaster.b-toaster-top-left .b-toast.b-toaster-enter-active, .b-toaster.b-toaster-top-left .b-toast.b-toaster-leave-active, .b-toaster.b-toaster-top-left .b-toast.b-toaster-move, .b-toaster.b-toaster-bottom-right .b-toast.b-toaster-enter-active, .b-toaster.b-toaster-bottom-right .b-toast.b-toaster-leave-active, .b-toaster.b-toaster-bottom-right .b-toast.b-toaster-move, .b-toaster.b-toaster-bottom-left .b-toast.b-toaster-enter-active, .b-toaster.b-toaster-bottom-left .b-toast.b-toaster-leave-active, .b-toaster.b-toaster-bottom-left .b-toast.b-toaster-move {
  transition: transform 0.175s;
}
.b-toaster.b-toaster-top-right .b-toast.b-toaster-enter-to .toast.fade, .b-toaster.b-toaster-top-right .b-toast.b-toaster-enter-active .toast.fade, .b-toaster.b-toaster-top-left .b-toast.b-toaster-enter-to .toast.fade, .b-toaster.b-toaster-top-left .b-toast.b-toaster-enter-active .toast.fade, .b-toaster.b-toaster-bottom-right .b-toast.b-toaster-enter-to .toast.fade, .b-toaster.b-toaster-bottom-right .b-toast.b-toaster-enter-active .toast.fade, .b-toaster.b-toaster-bottom-left .b-toast.b-toaster-enter-to .toast.fade, .b-toaster.b-toaster-bottom-left .b-toast.b-toaster-enter-active .toast.fade {
  transition-delay: 0.175s;
}
.b-toaster.b-toaster-top-right .b-toast.b-toaster-leave-active, .b-toaster.b-toaster-top-left .b-toast.b-toaster-leave-active, .b-toaster.b-toaster-bottom-right .b-toast.b-toaster-leave-active, .b-toaster.b-toaster-bottom-left .b-toast.b-toaster-leave-active {
  position: absolute;
  transition-delay: 0.175s;
}
.b-toaster.b-toaster-top-right .b-toast.b-toaster-leave-active .toast.fade, .b-toaster.b-toaster-top-left .b-toast.b-toaster-leave-active .toast.fade, .b-toaster.b-toaster-bottom-right .b-toast.b-toaster-leave-active .toast.fade, .b-toaster.b-toaster-bottom-left .b-toast.b-toaster-leave-active .toast.fade {
  transition-delay: 0s;
}
.tooltip.b-tooltip {
  display: block;
  opacity: 0.9;
  outline: 0;
}
.tooltip.b-tooltip.fade:not(.show) {
  opacity: 0;
}
.tooltip.b-tooltip.show {
  opacity: 0.9;
}
.tooltip.b-tooltip.noninteractive {
  pointer-events: none;
}
.tooltip.b-tooltip .arrow {
  margin: 0 0.25rem;
}
.tooltip.b-tooltip.bs-tooltip-right .arrow, .tooltip.b-tooltip.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip.bs-tooltip-left .arrow, .tooltip.b-tooltip.bs-tooltip-auto[x-placement^=left] .arrow {
  margin: 0.25rem 0;
}

.tooltip.b-tooltip-primary.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #007bff;
}
.tooltip.b-tooltip-primary.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #007bff;
}
.tooltip.b-tooltip-primary.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #007bff;
}
.tooltip.b-tooltip-primary.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #007bff;
}
.tooltip.b-tooltip-primary .tooltip-inner {
  color: #fff;
  background-color: #007bff;
}

.tooltip.b-tooltip-secondary.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #6c757d;
}
.tooltip.b-tooltip-secondary.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #6c757d;
}
.tooltip.b-tooltip-secondary.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #6c757d;
}
.tooltip.b-tooltip-secondary.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #6c757d;
}
.tooltip.b-tooltip-secondary .tooltip-inner {
  color: #fff;
  background-color: #6c757d;
}

.tooltip.b-tooltip-success.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #28a745;
}
.tooltip.b-tooltip-success.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #28a745;
}
.tooltip.b-tooltip-success.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #28a745;
}
.tooltip.b-tooltip-success.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #28a745;
}
.tooltip.b-tooltip-success .tooltip-inner {
  color: #fff;
  background-color: #28a745;
}

.tooltip.b-tooltip-info.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #17a2b8;
}
.tooltip.b-tooltip-info.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #17a2b8;
}
.tooltip.b-tooltip-info.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #17a2b8;
}
.tooltip.b-tooltip-info.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #17a2b8;
}
.tooltip.b-tooltip-info .tooltip-inner {
  color: #fff;
  background-color: #17a2b8;
}

.tooltip.b-tooltip-warning.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #ffc107;
}
.tooltip.b-tooltip-warning.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #ffc107;
}
.tooltip.b-tooltip-warning.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #ffc107;
}
.tooltip.b-tooltip-warning.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #ffc107;
}
.tooltip.b-tooltip-warning .tooltip-inner {
  color: #212529;
  background-color: #ffc107;
}

.tooltip.b-tooltip-danger.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #dc3545;
}
.tooltip.b-tooltip-danger.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #dc3545;
}
.tooltip.b-tooltip-danger.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #dc3545;
}
.tooltip.b-tooltip-danger.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #dc3545;
}
.tooltip.b-tooltip-danger .tooltip-inner {
  color: #fff;
  background-color: #dc3545;
}

.tooltip.b-tooltip-light.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #f8f9fa;
}
.tooltip.b-tooltip-light.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #f8f9fa;
}
.tooltip.b-tooltip-light.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #f8f9fa;
}
.tooltip.b-tooltip-light.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #f8f9fa;
}
.tooltip.b-tooltip-light .tooltip-inner {
  color: #212529;
  background-color: #f8f9fa;
}

.tooltip.b-tooltip-dark.bs-tooltip-top .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=top] .arrow::before {
  border-top-color: #343a40;
}
.tooltip.b-tooltip-dark.bs-tooltip-right .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=right] .arrow::before {
  border-right-color: #343a40;
}
.tooltip.b-tooltip-dark.bs-tooltip-bottom .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  border-bottom-color: #343a40;
}
.tooltip.b-tooltip-dark.bs-tooltip-left .arrow::before, .tooltip.b-tooltip-dark.bs-tooltip-auto[x-placement^=left] .arrow::before {
  border-left-color: #343a40;
}
.tooltip.b-tooltip-dark .tooltip-inner {
  color: #fff;
  background-color: #343a40;
}

.b-icon.bi {
  display: inline-block;
  overflow: visible;
  vertical-align: -0.15em;
}
.b-icon.b-icon-animation-cylon, .b-icon.b-iconstack .b-icon-animation-cylon > g {
  transform-origin: center;
  -webkit-animation: 0.75s infinite ease-in-out alternate b-icon-animation-cylon;
          animation: 0.75s infinite ease-in-out alternate b-icon-animation-cylon;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-cylon, .b-icon.b-iconstack .b-icon-animation-cylon > g {
    -webkit-animation: none;
            animation: none;
  }
}
.b-icon.b-icon-animation-cylon-vertical, .b-icon.b-iconstack .b-icon-animation-cylon-vertical > g {
  transform-origin: center;
  -webkit-animation: 0.75s infinite ease-in-out alternate b-icon-animation-cylon-vertical;
          animation: 0.75s infinite ease-in-out alternate b-icon-animation-cylon-vertical;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-cylon-vertical, .b-icon.b-iconstack .b-icon-animation-cylon-vertical > g {
    -webkit-animation: none;
            animation: none;
  }
}
.b-icon.b-icon-animation-fade, .b-icon.b-iconstack .b-icon-animation-fade > g {
  transform-origin: center;
  -webkit-animation: 0.75s infinite ease-in-out alternate b-icon-animation-fade;
          animation: 0.75s infinite ease-in-out alternate b-icon-animation-fade;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-fade, .b-icon.b-iconstack .b-icon-animation-fade > g {
    -webkit-animation: none;
            animation: none;
  }
}
.b-icon.b-icon-animation-spin, .b-icon.b-iconstack .b-icon-animation-spin > g {
  transform-origin: center;
  -webkit-animation: 2s infinite linear normal b-icon-animation-spin;
          animation: 2s infinite linear normal b-icon-animation-spin;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-spin, .b-icon.b-iconstack .b-icon-animation-spin > g {
    -webkit-animation: none;
            animation: none;
  }
}
.b-icon.b-icon-animation-spin-reverse, .b-icon.b-iconstack .b-icon-animation-spin-reverse > g {
  transform-origin: center;
  animation: 2s infinite linear reverse b-icon-animation-spin;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-spin-reverse, .b-icon.b-iconstack .b-icon-animation-spin-reverse > g {
    -webkit-animation: none;
            animation: none;
  }
}
.b-icon.b-icon-animation-spin-pulse, .b-icon.b-iconstack .b-icon-animation-spin-pulse > g {
  transform-origin: center;
  -webkit-animation: 1s infinite steps(8) normal b-icon-animation-spin;
          animation: 1s infinite steps(8) normal b-icon-animation-spin;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-spin-pulse, .b-icon.b-iconstack .b-icon-animation-spin-pulse > g {
    -webkit-animation: none;
            animation: none;
  }
}
.b-icon.b-icon-animation-spin-reverse-pulse, .b-icon.b-iconstack .b-icon-animation-spin-reverse-pulse > g {
  transform-origin: center;
  animation: 1s infinite steps(8) reverse b-icon-animation-spin;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-spin-reverse-pulse, .b-icon.b-iconstack .b-icon-animation-spin-reverse-pulse > g {
    -webkit-animation: none;
            animation: none;
  }
}
.b-icon.b-icon-animation-throb, .b-icon.b-iconstack .b-icon-animation-throb > g {
  transform-origin: center;
  -webkit-animation: 0.75s infinite ease-in-out alternate b-icon-animation-throb;
          animation: 0.75s infinite ease-in-out alternate b-icon-animation-throb;
}
@media (prefers-reduced-motion: reduce) {
  .b-icon.b-icon-animation-throb, .b-icon.b-iconstack .b-icon-animation-throb > g {
    -webkit-animation: none;
            animation: none;
  }
}

@-webkit-keyframes b-icon-animation-cylon {
  0% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(25%);
  }
}

@keyframes b-icon-animation-cylon {
  0% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(25%);
  }
}
@-webkit-keyframes b-icon-animation-cylon-vertical {
  0% {
    transform: translateY(25%);
  }
  100% {
    transform: translateY(-25%);
  }
}
@keyframes b-icon-animation-cylon-vertical {
  0% {
    transform: translateY(25%);
  }
  100% {
    transform: translateY(-25%);
  }
}
@-webkit-keyframes b-icon-animation-fade {
  0% {
    opacity: 0.1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes b-icon-animation-fade {
  0% {
    opacity: 0.1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes b-icon-animation-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
@keyframes b-icon-animation-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
@-webkit-keyframes b-icon-animation-throb {
  0% {
    opacity: 0.5;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes b-icon-animation-throb {
  0% {
    opacity: 0.5;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.btn .b-icon.bi,
.nav-link .b-icon.bi,
.dropdown-toggle .b-icon.bi,
.dropdown-item .b-icon.bi,
.input-group-text .b-icon.bi {
  font-size: 125%;
  vertical-align: text-bottom;
}

@font-face {
  font-family: "flags-color-world-font-f41090";
  src: url(/images/FlagsColorWorld-6YnRM.ttf) format("truetype");
}
@media (max-width: 576px) {
  .app-wrapper.container-lg {
    padding-left: 0;
    padding-right: 0;
  }
}
.b-nav-item-text-icon {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 1em;
}
.b-nav-item-text-icon small {
  font-size: 0.7em;
}

.modal-dialog.modal-xl {
  margin: 0;
  width: 100vw;
  height: 100vh;
  max-width: none;
  max-height: none;
}
.modal-dialog.modal-xl .modal-content {
  height: 100%;
}
.modal-dialog.modal-xl .modal-content .modal-body {
  overflow-y: scroll;
}
.modal-dialog.modal-lg {
  margin-left: auto;
  margin-right: auto;
  width: 90vw;
  height: 90vh;
  max-width: 90vw;
  max-height: 90vh;
}
.modal-dialog.modal-lg .modal-content {
  height: 100%;
}
.modal-dialog.modal-lg .modal-content .modal-body {
  overflow-y: scroll;
}
.modal-dialog .btn.btn-none {
  display: none;
}

.form-name {
  margin-top: 1em;
  margin-bottom: 1em;
}

.form-description {
  white-space: pre-wrap;
  font-size: inherit;
  font-family: inherit;
  margin-bottom: 3em;
}

.form-payment-bank-account {
  white-space: pre-wrap;
  font-size: inherit;
  font-family: inherit;
}

ul.form-input-description {
  line-height: 1;
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
  list-style-type: none;
  font-size: 80%;
  font-weight: 400;
}
ul.form-input-description li:before {
  content: "※";
  position: absolute;
  margin-left: -1em;
}

.editor__content .ProseMirror {
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  border: 1px solid #dbdbdb;
  display: block;
  max-width: 100%;
  min-width: 100%;
  padding: 0;
  resize: vertical;
  background-color: white;
  border-radius: 4px;
  max-height: calc(100vh - 12em);
  overflow-y: scroll;
}
.editor__content .ProseMirror[contenteditable=false] {
  overflow-y: visible;
  max-height: none;
  box-shadow: none;
  border: none;
  resize: unset;
  position: unset;
  outline: none;
}
.editor__content ul[data-type=todo_list] {
  padding-left: 0;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item] {
  display: flex;
  flex-direction: row;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item][data-done=true] > .todo-content > p {
  text-decoration: line-through;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item][data-done=true] > .todo-checkbox {
  background-color: #343a40;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item][data-done=false] {
  text-decoration: none;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item] .todo-checkbox {
  border: 2px solid #343a40;
  height: 0.9em;
  width: 0.9em;
  box-sizing: border-box;
  margin-right: 10px;
  margin-top: 0.3rem;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none;
  cursor: pointer;
  border-radius: 0.2em;
  background-color: transparent;
  transition: 0.4s background;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item] .todo-content {
  flex: 1;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item] .todo-content > p:last-of-type {
  margin-bottom: 0;
}
.editor__content ul[data-type=todo_list] li[data-type=todo_item] .todo-content > ul[data-type=todo_list] {
  margin: 0.5rem 0;
}
.editor__content ul[data-type=radio_list] {
  padding-left: 0;
}
.editor__content ul[data-type=radio_list] li[data-type=radio_item] {
  display: flex;
  flex-direction: row;
}
.editor__content ul[data-type=radio_list] li[data-type=radio_item][data-checked=true] > .radio-toggle {
  background-color: #343a40;
}
.editor__content ul[data-type=radio_list] li[data-type=radio_item][data-checked=false] {
  text-decoration: none;
}
.editor__content ul[data-type=radio_list] li[data-type=radio_item] .radio-toggle {
  border: 2px solid #343a40;
  height: 0.9em;
  width: 0.9em;
  box-sizing: border-box;
  margin-right: 10px;
  margin-top: 0.3rem;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none;
  cursor: pointer;
  border-radius: 0.5em;
  background-color: transparent;
  transition: 0.4s background;
}
.editor__content ul[data-type=radio_list] li[data-type=radio_item] .radio-content {
  flex: 1;
}
.editor__content ul[data-type=radio_list] li[data-type=radio_item] .radio-content > p:last-of-type {
  margin-bottom: 0;
}
.editor__content ul[data-type=radio_list] li[data-type=radio_item] .radio-content > ul[data-type=radio_list] {
  margin: 0.5rem 0;
}
.editor__content .iframe__embed {
  width: 100%;
  height: 15rem;
  border: 0;
}
.editor__content .iframe__input {
  display: block;
  width: 100%;
  font: inherit;
  border: 0;
  border-radius: 5px;
  background-color: rgba(52, 58, 64, 0.1);
  padding: 0.3rem 0.5rem;
}
.editor__content blockquote {
  border-left: 3px solid rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.8);
  padding-left: 0.8rem;
  font-style: italic;
}
.editor__content p code {
  padding: 0.2rem 0.4rem;
  border-radius: 5px;
  font-size: 0.8rem;
  font-weight: 700;
  background: rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.8);
}
.editor__content pre {
  padding: 0.7rem 1rem;
  border-radius: 5px;
  background: #000;
  color: #fff;
  font-size: 0.8rem;
  overflow-x: auto;
}
.editor__content pre:before {
  content: attr(data-language);
  text-transform: uppercase;
  display: block;
  text-align: right;
  font-weight: 700;
  font-size: 0.6rem;
}
.editor__content pre code {
  display: block;
}

.btn.btn-theme {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
  color: #ffffff !important;
}
.btn.btn-theme:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.btn.btn-theme:focus, .btn.btn-theme.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn.btn-theme.disabled, .btn.btn-theme:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn.btn-theme:not(:disabled):not(.disabled):active, .btn.btn-theme:not(:disabled):not(.disabled).active, .show > .btn.btn-theme.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.btn.btn-theme:not(:disabled):not(.disabled):active:focus, .btn.btn-theme:not(:disabled):not(.disabled).active:focus, .show > .btn.btn-theme.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.btn.btn-facebook {
  background-color: #3b5998 !important;
  border-color: #3b5998 !important;
}
.btn.btn-facebook:hover {
  background-color: #304d8a !important;
  border-color: #304d8a !important;
}
.btn.btn-twitter {
  background-color: #55acee !important;
  border-color: #55acee !important;
}
.btn.btn-twitter:hover {
  background-color: #35a2f4 !important;
  border-color: #35a2f4 !important;
}
.btn.btn-line {
  background-color: #21ba45 !important;
  border-color: #21ba45 !important;
}
.btn.btn-line:hover {
  background-color: #16ab39 !important;
  border-color: #16ab39 !important;
}
.btn.btn-favorite.is_my_favorite {
  background-color: #dc3545 !important;
  border-color: #dc3545 !important;
}
.btn.btn-favorite.is_my_favorite:hover {
  background-color: #c82333 !important;
  border-color: #c82333 !important;
}
.btn.btn-circle {
  text-align: center;
  width: 38px !important;
  height: 38px !important;
  border-radius: 19px !important;
  padding: 0 !important;
  font-size: 0.9rem !important;
}
.btn.btn-circle.btn-sm, .btn-group-sm > .btn.btn-circle {
  width: 30px;
  height: 30px;
  border-radius: 15px;
  font-size: 8px;
}
.btn.btn-circle.btn-lg, .btn-group-lg > .btn.btn-circle {
  width: 50px !important;
  height: 50px !important;
  border-radius: 25px !important;
  font-size: 1.25rem !important;
}
.btn.btn-circle.btn-xl {
  width: 70px !important;
  height: 70px !important;
  border-radius: 35px !important;
  font-size: 12px;
}
.btn.btn-favorite.btn-lg .btn-favorite-count, .btn-group-lg > .btn.btn-favorite .btn-favorite-count {
  margin-top: -5px;
  font-size: 0.7rem;
}

fieldset.form-group.form-group-nowrap > .form-row {
  flex-wrap: nowrap !important;
}
fieldset.form-group.required > legend.col-form-label::after {
  content: "\203B\5FC5\9808";
  color: #dc3545;
  padding-left: 1em;
}

.required::after {
  content: "\203B\5FC5\9808";
  color: #dc3545;
  padding-left: 1em;
}

.w-country {
  width: 8em;
}
.w-country .vs__selected {
  width: calc(8em - 4.5em);
  overflow-x: hidden;
  white-space: nowrap;
}

.vs__dropdown-toggle {
  padding-top: 2.5px;
}

.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok:focus, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok.disabled, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok:not(:disabled):not(.disabled):active, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok:not(:disabled):not(.disabled).active, .show > .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok:not(:disabled):not(.disabled):active:focus, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok:not(:disabled):not(.disabled).active:focus, .show > .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--ok.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel {
  background-color: transparent;
  color: #6c757d;
  border-color: #6c757d;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel:focus, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel.disabled, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel:disabled {
  color: #6c757d;
  background-color: transparent;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel:not(:disabled):not(.disabled):active, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel:not(:disabled):not(.disabled).active, .show > .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel:not(:disabled):not(.disabled):active:focus, .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel:not(:disabled):not(.disabled).active:focus, .show > .dg-container .dg-content-cont .dg-view-wrapper .dg-content-footer .dg-btn--cancel.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}
.dg-container.dg-container--has-input .dg-content-cont .dg-view-wrapper .dg-form {
  padding-left: 0;
  padding-right: 0;
  border: 0;
  background-color: transparent;
}
.dg-container.dg-container--has-input .dg-content-cont .dg-view-wrapper .dg-content-footer {
  padding: 15px 0 0;
  border: 0;
  background-color: transparent;
}
.vw-50 {
  width: 50vw !important;
}

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

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

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

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

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

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

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

.min-height-1 {
  min-height: 0.25rem !important;
}

.min-height-2 {
  min-height: 0.5rem !important;
}

.min-height-3 {
  min-height: 1rem !important;
}

.min-height-4 {
  min-height: 1.5rem !important;
}

.min-height-4-5 {
  min-height: 2rem !important;
}

.min-height-5 {
  min-height: 3em !important;
}

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

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

.min-vh-xs-50 {
  min-height: 50vh !important;
}

.min-vh-xs-90 {
  min-height: 90vh !important;
}

.vh-xs-80 {
  height: 80vh !important;
}

.vh-xs-90 {
  height: 90vh !important;
}

@media (min-width: 576px) {
  .min-h-sm-50 {
    min-height: 50% !important;
  }

  .min-vh-sm-50 {
    min-height: 50vh !important;
  }

  .min-vh-sm-90 {
    min-height: 90vh !important;
  }

  .vh-sm-80 {
    height: 80vh !important;
  }

  .vh-sm-90 {
    height: 90vh !important;
  }
}
@media (min-width: 768px) {
  .min-h-md-50 {
    min-height: 50% !important;
  }

  .min-vh-md-50 {
    min-height: 50vh !important;
  }

  .min-vh-md-90 {
    min-height: 90vh !important;
  }

  .vh-md-80 {
    height: 80vh !important;
  }

  .vh-md-90 {
    height: 90vh !important;
  }
}
@media (min-width: 992px) {
  .min-h-lg-50 {
    min-height: 50% !important;
  }

  .min-vh-lg-50 {
    min-height: 50vh !important;
  }

  .min-vh-lg-90 {
    min-height: 90vh !important;
  }

  .vh-lg-80 {
    height: 80vh !important;
  }

  .vh-lg-90 {
    height: 90vh !important;
  }
}
@media (min-width: 1200px) {
  .min-h-xl-50 {
    min-height: 50% !important;
  }

  .min-vh-xl-50 {
    min-height: 50vh !important;
  }

  .min-vh-xl-90 {
    min-height: 90vh !important;
  }

  .vh-xl-80 {
    height: 80vh !important;
  }

  .vh-xl-90 {
    height: 90vh !important;
  }
}
.m--1 {
  margin: -0.25rem !important;
}

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

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

.m--4 {
  margin: -1.5rem !important;
}

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

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

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

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

.mx--4 {
  margin-left: -1.5rem !important;
  margin-right: -1.5rem !important;
}

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

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

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

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

.my--4 {
  margin-top: -1.5rem !important;
  margin-bottom: -1.5rem !important;
}

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

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

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

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

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

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

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

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

.overflow-x-visible {
  overflow-x: visible !important;
}

.overflow-x-scroll {
  overflow-x: scroll !important;
}

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

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

.overflow-y-visible {
  overflow-y: visible !important;
}

.overflow-y-scroll {
  overflow-y: scroll !important;
}

.flex-even {
  flex: 1;
}

.fc {
  font-family: "flags-color-world-font-f41090";
  font-style: unset;
  font-size: 2em;
  line-height: 100%;
}

.fc-amazon::after,
.fc-ebay::after {
  content: "u";
}

.fc-amazon_au::after,
.fc-ebay_au::after {
  content: "^";
}

.fc-amazon_ca::after,
.fc-ebay_ca::after {
  content: "c";
}

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

@media (min-width: 576px) {
  .w-sm-25 {
    width: 25% !important;
  }

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

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

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

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

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

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

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

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

  .h-sm-auto {
    height: auto !important;
  }
}
@media (min-width: 768px) {
  .w-md-25 {
    width: 25% !important;
  }

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

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

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

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

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

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

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

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

  .h-md-auto {
    height: auto !important;
  }
}
@media (min-width: 992px) {
  .w-lg-25 {
    width: 25% !important;
  }

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

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

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

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

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

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

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

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

  .h-lg-auto {
    height: auto !important;
  }
}
@media (min-width: 1200px) {
  .w-xl-25 {
    width: 25% !important;
  }

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

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

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

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

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

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

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

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

  .h-xl-auto {
    height: auto !important;
  }
}
.htDatepickerHolder {
  position: fixed !important;
  left: 50% !important;
  top: 50% !important;
  transform: translateX(-50%) translateY(-50%) !important;
}

.handsontable[mode]:not([mode=read]) .htDimmed {
  color: #000000;
  background: #eeeeee;
}

.blink {
  -webkit-animation: blink 1s ease-in-out infinite alternate;
  animation: blink 1s ease-in-out infinite alternate;
}

@-webkit-keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.filter-item .filter-item-option[data-v-7464c454] {
  display: block;
}
.filter-item .filter-item-option[data-v-7464c454]:not([active]) {
  opacity: 0.3;
}
.filter-item .filter-item-option [type=radio][data-v-7464c454] {
  display: none;
}
.filter-item .filter-item-option .filter-item-option-text[data-v-7464c454] {
  cursor: pointer;
}
@charset "UTF-8";
.filter-item .b-form-datepicker [aria-haspopup=dialog] {
  width: 0px;
  padding: 0;
  overflow: hidden;
}
.filter-item .month-picker__container .month-picker__year button {
  width: 1.5em;
  line-height: 1em;
}
.filter-item .month-picker__container .month-picker__year p {
  font-size: 1.2em;
}
.filter-item .month-picker__container .month-picker__year p::after {
  content: "年";
}
.filter-item-option[data-v-4096bc41] {
  display: block;
}
.filter-item-option[data-v-4096bc41]:not([active]) {
  opacity: 0.3;
}
.filter-item-option [type=radio][data-v-4096bc41] {
  display: none;
}
.filter-item-option .filter-item-option-text[data-v-4096bc41] {
  cursor: pointer;
}
.filter-item-option[data-v-57203c40] {
  display: block;
}
.filter-item-option[data-v-57203c40]:not([active]) {
  opacity: 0.3;
}
.filter-item-option [type=radio][data-v-57203c40] {
  display: none;
}
.filter-item-option .filter-item-option-text[data-v-57203c40] {
  cursor: pointer;
}
.input-error small[data-v-52822609] {
  display: block;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}


.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.item-name[data-v-2c619f04] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-2c619f04] {
  font-size: 1.6em;
  margin-bottom: 0;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}
.vs__search {
    color: #6c757d;
}

.item-name[data-v-0a2f8461] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-0a2f8461] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.order-provider[data-v-0a2f8461] {
  max-width: 8em;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.item-name[data-v-47538690] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-47538690] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.table.b-table.b-table-stacked > tbody > tr > th[data-v-47538690] {
  display: flex;
  padding-bottom: 0;
}
.table.b-table.b-table-stacked > tbody > tr > td[data-v-47538690] {
  padding-top: 0;
}
.table.b-table.b-table-stacked > tbody > tr > td > div > .example[data-v-47538690] {
  display: none;
}
.item-name[data-v-2ac815fa] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-2ac815fa] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-2ac815fa] {
  width: 0.1%;
  white-space: nowrap;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.item-name[data-v-6ab4446a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-6ab4446a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-6ab4446a] {
  width: 0.1%;
  white-space: nowrap;
}
.item-name[data-v-54d629d9] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-54d629d9] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-54d629d9] {
  width: 0.1%;
  white-space: nowrap;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.insurance-table .handsontable[mode=read] table thead th:nth-child(2), .insurance-table .handsontable[mode=update] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(3), .insurance-table .handsontable[mode=update] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(4), .insurance-table .handsontable[mode=update] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(5), .insurance-table .handsontable[mode=update] table thead th:nth-child(5) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(6), .insurance-table .handsontable[mode=update] table thead th:nth-child(6) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(7), .insurance-table .handsontable[mode=update] table thead th:nth-child(7) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(8), .insurance-table .handsontable[mode=update] table thead th:nth-child(8) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(9), .insurance-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(9), .insurance-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #111111;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(9), .insurance-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #777777;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(9), .insurance-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(10), .insurance-table .handsontable[mode=update] table thead th:nth-child(10) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(11), .insurance-table .handsontable[mode=update] table thead th:nth-child(11) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(12), .insurance-table .handsontable[mode=update] table thead th:nth-child(12) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(13), .insurance-table .handsontable[mode=update] table thead th:nth-child(13) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(14), .insurance-table .handsontable[mode=update] table thead th:nth-child(14) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(14), .insurance-table .handsontable[mode=update] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(15), .insurance-table .handsontable[mode=update] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(16), .insurance-table .handsontable[mode=update] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(17), .insurance-table .handsontable[mode=update] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(18), .insurance-table .handsontable[mode=update] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(19), .insurance-table .handsontable[mode=update] table thead th:nth-child(19) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(20), .insurance-table .handsontable[mode=update] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(21), .insurance-table .handsontable[mode=update] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(22), .insurance-table .handsontable[mode=update] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(23), .insurance-table .handsontable[mode=update] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(24), .insurance-table .handsontable[mode=update] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(24), .insurance-table .handsontable[mode=update] table thead th:nth-child(24) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(25), .insurance-table .handsontable[mode=update] table thead th:nth-child(25) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(26), .insurance-table .handsontable[mode=update] table thead th:nth-child(26) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(27), .insurance-table .handsontable[mode=update] table thead th:nth-child(27) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(28), .insurance-table .handsontable[mode=update] table thead th:nth-child(28) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(29), .insurance-table .handsontable[mode=update] table thead th:nth-child(29) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(30), .insurance-table .handsontable[mode=update] table thead th:nth-child(30) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(31), .insurance-table .handsontable[mode=update] table thead th:nth-child(31) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(32), .insurance-table .handsontable[mode=update] table thead th:nth-child(32) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(33), .insurance-table .handsontable[mode=update] table thead th:nth-child(33) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(34), .insurance-table .handsontable[mode=update] table thead th:nth-child(34) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(35), .insurance-table .handsontable[mode=update] table thead th:nth-child(35) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(36), .insurance-table .handsontable[mode=update] table thead th:nth-child(36) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(37), .insurance-table .handsontable[mode=update] table thead th:nth-child(37) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th:nth-child(38), .insurance-table .handsontable[mode=update] table thead th:nth-child(38) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #111111;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #777777;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #efefef;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(27) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(28) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(29) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(30) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=create] table thead th:nth-child(31) {
  background-color: #d9d9d9;
}
.insurance-table .handsontable[mode=read] table thead th i.required {
  display: none;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #111111;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #777777;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #efefef;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #efefef;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #efefef;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #efefef;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #efefef;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #efefef;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(27) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(28) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(29) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(30) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(31) {
  background-color: #d9d9d9;
}
[auth_level="200"] .insurance-table .handsontable[mode=create] table thead th:nth-child(32) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #111111;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #777777;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #efefef;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #efefef;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #efefef;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #efefef;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #efefef;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #efefef;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(27) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(28) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(29) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(30) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(31) {
  background-color: #d9d9d9;
}
[auth_level="300"] .insurance-table .handsontable[mode=create] table thead th:nth-child(32) {
  background-color: #d9d9d9;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}


.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.item-name[data-v-5a6294fe] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-5a6294fe] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.inventory-info button[data-v-23c24a62] {
  line-height: 1;
}
.item-name[data-v-37301906] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-37301906] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.store-info button[data-v-972e1858] {
  line-height: 1;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}


.square {
    aspect-ratio: 1 / 1; /* 正方形 */
    width: 100%;
    overflow: hidden; /* 画像がはみ出さないように */
    position: relative;
}
.square img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; /* トリミングして枠いっぱいに表示 */
}


.file-drop-area {
    border-style: dotted !important;
    border-width: 5px !important;
}
.file-drop-enter {
    border-color: powderblue !important;
}


.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}


.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.item-name[data-v-ffda5ac4] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-ffda5ac4] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(2), .marunage-table .handsontable[mode=update] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(3), .marunage-table .handsontable[mode=update] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(4), .marunage-table .handsontable[mode=update] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(4), .marunage-table .handsontable[mode=update] table thead th:nth-child(4) {
  background-color: #111111;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(4), .marunage-table .handsontable[mode=update] table thead th:nth-child(4) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(5), .marunage-table .handsontable[mode=update] table thead th:nth-child(5) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(6), .marunage-table .handsontable[mode=update] table thead th:nth-child(6) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(7), .marunage-table .handsontable[mode=update] table thead th:nth-child(7) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(8), .marunage-table .handsontable[mode=update] table thead th:nth-child(8) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(9), .marunage-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(9), .marunage-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(10), .marunage-table .handsontable[mode=update] table thead th:nth-child(10) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(11), .marunage-table .handsontable[mode=update] table thead th:nth-child(11) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(12), .marunage-table .handsontable[mode=update] table thead th:nth-child(12) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(13), .marunage-table .handsontable[mode=update] table thead th:nth-child(13) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(14), .marunage-table .handsontable[mode=update] table thead th:nth-child(14) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(14), .marunage-table .handsontable[mode=update] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(15), .marunage-table .handsontable[mode=update] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(16), .marunage-table .handsontable[mode=update] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(17), .marunage-table .handsontable[mode=update] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(18), .marunage-table .handsontable[mode=update] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(19), .marunage-table .handsontable[mode=update] table thead th:nth-child(19) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(20), .marunage-table .handsontable[mode=update] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(21), .marunage-table .handsontable[mode=update] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(22), .marunage-table .handsontable[mode=update] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(23), .marunage-table .handsontable[mode=update] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(24), .marunage-table .handsontable[mode=update] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(25), .marunage-table .handsontable[mode=update] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(26), .marunage-table .handsontable[mode=update] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(27), .marunage-table .handsontable[mode=update] table thead th:nth-child(27) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th:nth-child(28), .marunage-table .handsontable[mode=update] table thead th:nth-child(28) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #111111;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #777777;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #efefef;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
.marunage-table .handsontable[mode=read] table thead th i.required {
  display: none;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #111111;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #777777;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #777777;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #777777;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #777777;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #777777;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #777777;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #efefef;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #efefef;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #efefef;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #efefef;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #efefef;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #efefef;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(27) {
  background-color: #d9ead3;
}
[auth_level="200"] .marunage-table .handsontable[mode=create] table thead th:nth-child(28) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #111111;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #777777;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #777777;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #777777;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #777777;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #777777;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #777777;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #efefef;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #efefef;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #efefef;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #efefef;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #efefef;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #efefef;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(27) {
  background-color: #d9ead3;
}
[auth_level="300"] .marunage-table .handsontable[mode=create] table thead th:nth-child(28) {
  background-color: #d9ead3;
}
.item-name[data-v-8a2502da] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-8a2502da] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-8a2502da] {
  width: 0.1%;
  white-space: nowrap;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.item-name[data-v-299611ac] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-299611ac] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-299611ac] {
  width: 0.1%;
  white-space: nowrap;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}

.item-name[data-v-5f8e0c8a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-5f8e0c8a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-5f8e0c8a] {
  width: 0.1%;
  white-space: nowrap;
}
.item-name[data-v-d6775c92] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-d6775c92] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-d6775c92] {
  width: 0.1%;
  white-space: nowrap;
}
.item-name[data-v-15cea24a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-15cea24a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.order-provider[data-v-15cea24a] {
  max-width: 8em;
}
.item-name[data-v-91e29292] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-91e29292] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-91e29292] {
  width: 0.1%;
  white-space: nowrap;
}
.item-name[data-v-026f6c19] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-026f6c19] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-026f6c19] {
  width: 0.1%;
  white-space: nowrap;
}
.item-name[data-v-7092ac5b] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-7092ac5b] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-7092ac5b] {
  width: 0.1%;
  white-space: nowrap;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(2), .shipping-table .handsontable[mode=update] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(3), .shipping-table .handsontable[mode=update] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(4), .shipping-table .handsontable[mode=update] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(5), .shipping-table .handsontable[mode=update] table thead th:nth-child(5) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(6), .shipping-table .handsontable[mode=update] table thead th:nth-child(6) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(6), .shipping-table .handsontable[mode=update] table thead th:nth-child(6) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(7), .shipping-table .handsontable[mode=update] table thead th:nth-child(7) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(8), .shipping-table .handsontable[mode=update] table thead th:nth-child(8) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(8), .shipping-table .handsontable[mode=update] table thead th:nth-child(8) {
  background-color: #111111;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(8), .shipping-table .handsontable[mode=update] table thead th:nth-child(8) {
  background-color: #777777;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(8), .shipping-table .handsontable[mode=update] table thead th:nth-child(8) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(9), .shipping-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(10), .shipping-table .handsontable[mode=update] table thead th:nth-child(10) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(11), .shipping-table .handsontable[mode=update] table thead th:nth-child(11) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(12), .shipping-table .handsontable[mode=update] table thead th:nth-child(12) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(13), .shipping-table .handsontable[mode=update] table thead th:nth-child(13) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(14), .shipping-table .handsontable[mode=update] table thead th:nth-child(14) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(15), .shipping-table .handsontable[mode=update] table thead th:nth-child(15) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(16), .shipping-table .handsontable[mode=update] table thead th:nth-child(16) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(17), .shipping-table .handsontable[mode=update] table thead th:nth-child(17) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(18), .shipping-table .handsontable[mode=update] table thead th:nth-child(18) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(19), .shipping-table .handsontable[mode=update] table thead th:nth-child(19) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(20), .shipping-table .handsontable[mode=update] table thead th:nth-child(20) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(21), .shipping-table .handsontable[mode=update] table thead th:nth-child(21) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(21), .shipping-table .handsontable[mode=update] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(22), .shipping-table .handsontable[mode=update] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(23), .shipping-table .handsontable[mode=update] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(24), .shipping-table .handsontable[mode=update] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(25), .shipping-table .handsontable[mode=update] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(26), .shipping-table .handsontable[mode=update] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(27), .shipping-table .handsontable[mode=update] table thead th:nth-child(27) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(28), .shipping-table .handsontable[mode=update] table thead th:nth-child(28) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(29), .shipping-table .handsontable[mode=update] table thead th:nth-child(29) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(30), .shipping-table .handsontable[mode=update] table thead th:nth-child(30) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(31), .shipping-table .handsontable[mode=update] table thead th:nth-child(31) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(32), .shipping-table .handsontable[mode=update] table thead th:nth-child(32) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(33), .shipping-table .handsontable[mode=update] table thead th:nth-child(33) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(34), .shipping-table .handsontable[mode=update] table thead th:nth-child(34) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(34), .shipping-table .handsontable[mode=update] table thead th:nth-child(34) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(35), .shipping-table .handsontable[mode=update] table thead th:nth-child(35) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(36), .shipping-table .handsontable[mode=update] table thead th:nth-child(36) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(37), .shipping-table .handsontable[mode=update] table thead th:nth-child(37) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(38), .shipping-table .handsontable[mode=update] table thead th:nth-child(38) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(39), .shipping-table .handsontable[mode=update] table thead th:nth-child(39) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(40), .shipping-table .handsontable[mode=update] table thead th:nth-child(40) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(41), .shipping-table .handsontable[mode=update] table thead th:nth-child(41) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(42), .shipping-table .handsontable[mode=update] table thead th:nth-child(42) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(43), .shipping-table .handsontable[mode=update] table thead th:nth-child(43) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(44), .shipping-table .handsontable[mode=update] table thead th:nth-child(44) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(45), .shipping-table .handsontable[mode=update] table thead th:nth-child(45) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(46), .shipping-table .handsontable[mode=update] table thead th:nth-child(46) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(47), .shipping-table .handsontable[mode=update] table thead th:nth-child(47) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(47), .shipping-table .handsontable[mode=update] table thead th:nth-child(47) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(48), .shipping-table .handsontable[mode=update] table thead th:nth-child(48) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(49), .shipping-table .handsontable[mode=update] table thead th:nth-child(49) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(50), .shipping-table .handsontable[mode=update] table thead th:nth-child(50) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(51), .shipping-table .handsontable[mode=update] table thead th:nth-child(51) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(52), .shipping-table .handsontable[mode=update] table thead th:nth-child(52) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(53), .shipping-table .handsontable[mode=update] table thead th:nth-child(53) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(54), .shipping-table .handsontable[mode=update] table thead th:nth-child(54) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(55), .shipping-table .handsontable[mode=update] table thead th:nth-child(55) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(56), .shipping-table .handsontable[mode=update] table thead th:nth-child(56) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(57), .shipping-table .handsontable[mode=update] table thead th:nth-child(57) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(58), .shipping-table .handsontable[mode=update] table thead th:nth-child(58) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(59), .shipping-table .handsontable[mode=update] table thead th:nth-child(59) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(60), .shipping-table .handsontable[mode=update] table thead th:nth-child(60) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(61), .shipping-table .handsontable[mode=update] table thead th:nth-child(61) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #111111;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #777777;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(27) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(28) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(29) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(30) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(30) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(31) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(32) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(33) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(34) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(35) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(36) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(37) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(38) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(39) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(40) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(41) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(42) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(43) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(43) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(44) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(45) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(46) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(47) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(48) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(49) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(50) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(51) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(52) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(53) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(54) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(55) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(56) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(57) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th i.required {
  display: none;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(2), .shipping-table .handsontable[mode=update] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(3), .shipping-table .handsontable[mode=update] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(4), .shipping-table .handsontable[mode=update] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(5), .shipping-table .handsontable[mode=update] table thead th:nth-child(5) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(5), .shipping-table .handsontable[mode=update] table thead th:nth-child(5) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(6), .shipping-table .handsontable[mode=update] table thead th:nth-child(6) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(7), .shipping-table .handsontable[mode=update] table thead th:nth-child(7) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(7), .shipping-table .handsontable[mode=update] table thead th:nth-child(7) {
  background-color: #111111;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(7), .shipping-table .handsontable[mode=update] table thead th:nth-child(7) {
  background-color: #777777;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(7), .shipping-table .handsontable[mode=update] table thead th:nth-child(7) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(8), .shipping-table .handsontable[mode=update] table thead th:nth-child(8) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(9), .shipping-table .handsontable[mode=update] table thead th:nth-child(9) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(10), .shipping-table .handsontable[mode=update] table thead th:nth-child(10) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(11), .shipping-table .handsontable[mode=update] table thead th:nth-child(11) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(12), .shipping-table .handsontable[mode=update] table thead th:nth-child(12) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(13), .shipping-table .handsontable[mode=update] table thead th:nth-child(13) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(14), .shipping-table .handsontable[mode=update] table thead th:nth-child(14) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(15), .shipping-table .handsontable[mode=update] table thead th:nth-child(15) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(16), .shipping-table .handsontable[mode=update] table thead th:nth-child(16) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(17), .shipping-table .handsontable[mode=update] table thead th:nth-child(17) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(18), .shipping-table .handsontable[mode=update] table thead th:nth-child(18) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(19), .shipping-table .handsontable[mode=update] table thead th:nth-child(19) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(20), .shipping-table .handsontable[mode=update] table thead th:nth-child(20) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(20), .shipping-table .handsontable[mode=update] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(21), .shipping-table .handsontable[mode=update] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(22), .shipping-table .handsontable[mode=update] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(23), .shipping-table .handsontable[mode=update] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(24), .shipping-table .handsontable[mode=update] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(25), .shipping-table .handsontable[mode=update] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(26), .shipping-table .handsontable[mode=update] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(27), .shipping-table .handsontable[mode=update] table thead th:nth-child(27) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(28), .shipping-table .handsontable[mode=update] table thead th:nth-child(28) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(29), .shipping-table .handsontable[mode=update] table thead th:nth-child(29) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(30), .shipping-table .handsontable[mode=update] table thead th:nth-child(30) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(31), .shipping-table .handsontable[mode=update] table thead th:nth-child(31) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(32), .shipping-table .handsontable[mode=update] table thead th:nth-child(32) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(33), .shipping-table .handsontable[mode=update] table thead th:nth-child(33) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(33), .shipping-table .handsontable[mode=update] table thead th:nth-child(33) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(34), .shipping-table .handsontable[mode=update] table thead th:nth-child(34) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(35), .shipping-table .handsontable[mode=update] table thead th:nth-child(35) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(36), .shipping-table .handsontable[mode=update] table thead th:nth-child(36) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(37), .shipping-table .handsontable[mode=update] table thead th:nth-child(37) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(38), .shipping-table .handsontable[mode=update] table thead th:nth-child(38) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(39), .shipping-table .handsontable[mode=update] table thead th:nth-child(39) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(40), .shipping-table .handsontable[mode=update] table thead th:nth-child(40) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(41), .shipping-table .handsontable[mode=update] table thead th:nth-child(41) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(42), .shipping-table .handsontable[mode=update] table thead th:nth-child(42) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(43), .shipping-table .handsontable[mode=update] table thead th:nth-child(43) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(44), .shipping-table .handsontable[mode=update] table thead th:nth-child(44) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(45), .shipping-table .handsontable[mode=update] table thead th:nth-child(45) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(46), .shipping-table .handsontable[mode=update] table thead th:nth-child(46) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(46), .shipping-table .handsontable[mode=update] table thead th:nth-child(46) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(47), .shipping-table .handsontable[mode=update] table thead th:nth-child(47) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(48), .shipping-table .handsontable[mode=update] table thead th:nth-child(48) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(49), .shipping-table .handsontable[mode=update] table thead th:nth-child(49) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(50), .shipping-table .handsontable[mode=update] table thead th:nth-child(50) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(51), .shipping-table .handsontable[mode=update] table thead th:nth-child(51) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(52), .shipping-table .handsontable[mode=update] table thead th:nth-child(52) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(53), .shipping-table .handsontable[mode=update] table thead th:nth-child(53) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(54), .shipping-table .handsontable[mode=update] table thead th:nth-child(54) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(55), .shipping-table .handsontable[mode=update] table thead th:nth-child(55) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(56), .shipping-table .handsontable[mode=update] table thead th:nth-child(56) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(57), .shipping-table .handsontable[mode=update] table thead th:nth-child(57) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(58), .shipping-table .handsontable[mode=update] table thead th:nth-child(58) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(59), .shipping-table .handsontable[mode=update] table thead th:nth-child(59) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th:nth-child(60), .shipping-table .handsontable[mode=update] table thead th:nth-child(60) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(2) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(3) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #fdfdfd;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #111111;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #777777;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(4) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(5) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(6) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(7) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(8) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(9) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(10) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(11) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(12) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(13) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(14) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(15) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(16) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #efefef;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(17) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(18) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(19) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(20) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(21) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(22) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(23) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(24) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(25) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(26) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(27) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(28) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(29) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(30) {
  background-color: #d9ead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(30) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(31) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(32) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(33) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(34) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(35) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(36) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(37) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(38) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(39) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(40) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(41) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(42) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(43) {
  background-color: #9dead3;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(43) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(44) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(45) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(46) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(47) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(48) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(49) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(50) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(51) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(52) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(53) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(54) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(55) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(56) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=create] table thead th:nth-child(57) {
  background-color: #d9d9d9;
}
.shipping-table .handsontable[mode=read] table thead th i.required {
  display: none;
}
.item-name[data-v-359d679a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-359d679a] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-359d679a] {
  width: 0.1%;
  white-space: nowrap;
}

.v-select.drop-up.vs--open .vs__dropdown-toggle {
    border-radius: 0 0 4px 4px;
    border-top-color: transparent;
    border-bottom-color: rgba(60, 60, 60, 0.26);
}
[data-popper-placement='top'] {
    border-radius: 4px 4px 0 0;
    border-top-style: solid;
    border-bottom-style: none;
    box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.15);
}


.vs__dropdown-menu {
    z-index: 2000;
}
.vs__search {
    color: #6c757d;
}

.item-name[data-v-b70b5802] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.item-price[data-v-b70b5802] {
  font-size: 1.6em;
  margin-bottom: 0;
}
.shipping-address-th[data-v-b70b5802] {
  width: 0.1%;
  white-space: nowrap;
}
.diff[data-v-8fe1c392] {
  background: #ff0000;
}

.month-picker__container {
    width: 400px;
    position: relative;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1),
        inset 0 -1px 0 rgba(0, 0, 0, 0.1);
    border-radius: 5px;
}
.month-picker__container.year-picker {
    width: 20rem;
}
.month-picker {
    box-sizing: border-box;
    flex: 1;
    width: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.1);
    font-family: sans-serif;
    border-radius: 5px;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
.month-picker__year {
    padding: 0.2rem;
    background-color: #fcfcfc;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1),
        inset 0 -1px 0 rgba(0, 0, 0, 0.1);
}
.month-picker__year p {
    width: 100%;
    font-weight: 600;
    letter-spacing: 1px;
    font-size: 1.2rem;
    margin: 1rem 0;
}
.month-picker__year input {
    padding: 0;
    font-weight: 600;
    border-radius: 5px 5px 0 0;
    outline: none;
    border: none;
    font-size: 1.2rem;
    width: auto;
    text-align: center;
    box-sizing: border-box;
    width: 100%;
    height: 3.5rem;
    position: relative;
    z-index: 1;
}
.month-picker__year input:focus {
    border: 1px solid #55b0f2;
}
.month-picker__year div,
.month-picker__year button,
.month-picker__year p {
    text-align: center;
    flex: 1;
}
.month-picker__year button {
    background-color: #f4f4f4;
    position: absolute;
    width: 5rem;
    height: 2.75rem;
    font-size: 2rem;
    border-radius: 5px;
    outline: none;
    border: 0;
    top: 0.5rem;
    border: 1px solid #e8e8e8;
    z-index: 2;
    color: #686868;
}
.month-picker__year button:hover {
    background-color: rgba(0, 0, 0, 0.025);
}
.month-picker__year button:active {
    background-color: rgba(0, 0, 0, 0.04);
}
.month-picker__year button:first-child {
    left: 10px;
}
.month-picker__year button:last-child {
    right: 10px;
}
.month-picker__month {
    padding: 0.85rem 0.25rem;
    flex-basis: calc(33.333% - 10px);
    padding: 0.75rem 0.25rem;
    cursor: pointer;
    text-align: center;
    border: 1px solid rgba(245, 245, 245, 0.75);
    transition: all 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
    background-color: #fefefe;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    position: relative;
}
.month-picker__month:hover::after {
    display: block;
    content: '';
    position: absolute;
    width: 95%;
    height: 95%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 10;
}
.month-picker__month.selected,
.month-picker__month.selected-range-first,
.month-picker__month.selected-range-second {
    background-color: #55b0f2;
    color: #ffffff;
    border-radius: 5px;
    box-shadow: inset 0 0 3px #3490d2, 0px 2px 5px rgba(85, 176, 242, 0.2);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
}
.month-picker__month.selected-range-first,
.month-picker__month.selected-range-second {
    border-color: transparent;
}
.month-picker__month.selected-range {
    background-color: #7eb9e2;
    color: #ffffff;
    border-color: transparent;
}
.month-picker__month.inactive {
    background-color: #f0f0f0;
    color: #8a8a8a;
    cursor: not-allowed;
    box-shadow: none;
    text-shadow: none;
}
.month-picker__month.inactive:hover {
    box-shadow: none;
}

/* Dark threme */
.month-picker--dark {
    background-color: #5f5f5f;
}
.month-picker--dark .month-picker__year {
    background-color: #2f2f30;
}
.month-picker--dark .month-picker__year p,
.month-picker--dark .month-picker__year input {
    color: #ebebeb;
}
.month-picker--dark .month-picker__year input {
    background-color: #5f5f5f;
}
.month-picker--dark .month-picker__year button {
    background-color: #505050;
    color: #c9c9c9;
    border-color: #1e1e1e;
}
.month-picker--dark .month-picker__year button:hover {
    background-color: rgba(0, 0, 0, 0.3);
}
.month-picker--dark .month-picker__year button:active {
    background-color: rgba(0, 0, 0, 0.6);
}
.month-picker--dark .month-picker__month {
    background-color: #2f2f30;
    border-color: rgba(245, 245, 245, 0.15);
    color: #c9c9c9;
}
.month-picker--dark .month-picker__month.selected,
.month-picker--dark .month-picker__month.selected-range-first,
.month-picker--dark .month-picker__month.selected-range-second {
    background-color: #505050;
    box-shadow: inset 0 0 3px #505050, 0px 2px 5px #505050;
    color: #ffffff;
    border-color: #1d1b1b;
}
.month-picker--dark .month-picker__month.selected-range {
    background-color: #636363;
    color: #ffffff;
    border-color: transparent;
}
.month-picker--dark .month-picker__month:hover {
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.8);
    z-index: 10;
}
.month-picker--dark .month-picker__month.inactive {
    background-color: #3f3f3f;
    color: #8a8a8a;
    cursor: not-allowed;
    box-shadow: none;
    text-shadow: none;
}
@media only screen and (max-width: 768px) {
.month-picker__container {
        width: 100%;
}
}


.month-picker-input-container[data-v-201d773d] {
    position: relative;
    width: 180px;
    min-width: 140px;
}
.month-picker-input[data-v-201d773d] {
    padding: 1em 1.5em;
    font-size: 0.85em;
    border-radius: 5px;
    outline: none;
    border: 1px solid rgba(0, 0, 0, 0.15);
    transition: all 350ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
.month-picker-input[data-v-201d773d]:focus {
    border-color: rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.month-picker__container[data-v-201d773d] {
    position: absolute;
    top: 3.5em;
}


.auth-mask {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;

    background: #fff;
}


.load-mask {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 3000;

    background: rgba(255,255,255,0.5);
}

.notification-wrapper[data-v-d7f806e6] {
  position: fixed;
  top: 1em;
  text-align: left;
  z-index: 2000;
}
.notification-wrapper .alert[data-v-d7f806e6] {
  cursor: pointer;
  border-radius: 0;
  margin-bottom: 0.1rem;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2FwcC5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBOzs7OztFQ0tFO0FDTEY7RUFHSSxlQUFjO0VBQWQsaUJBQWM7RUFBZCxpQkFBYztFQUFkLGVBQWM7RUFBZCxjQUFjO0VBQWQsaUJBQWM7RUFBZCxpQkFBYztFQUFkLGdCQUFjO0VBQWQsZUFBYztFQUFkLGVBQWM7RUFBZCxhQUFjO0VBQWQsZUFBYztFQUFkLG9CQUFjO0VBSWQsa0JBQWM7RUFBZCxvQkFBYztFQUFkLGtCQUFjO0VBQWQsZUFBYztFQUFkLGtCQUFjO0VBQWQsaUJBQWM7RUFBZCxnQkFBYztFQUFkLGVBQWM7RUFJZCxrQkFBaUM7RUFBakMsc0JBQWlDO0VBQWpDLHNCQUFpQztFQUFqQyxzQkFBaUM7RUFBakMsdUJBQWlDO0VBS25DLGtPQUF5QjtFQUN6Qiw2R0FBd0I7QURrQjFCOztBRWpCQTs7O0VBR0Usc0JBQXNCO0FGb0J4Qjs7QUVqQkE7RUFDRSx1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLDhCQUE4QjtFQUM5Qiw2Q0NYYTtBSCtCZjs7QUVkQTtFQUNFLGNBQWM7QUZpQmhCOztBRVBBO0VBQ0UsU0FBUztFQUNULHFOQ3FPb087RUNySmhPLGVBdENZO0VGeENoQixnQkM4TytCO0VEN08vQixnQkNrUCtCO0VEalAvQixjQ25DZ0I7RURvQ2hCLGdCQUFnQjtFQUNoQixzQkM5Q2E7QUh3RGY7O0FBRUE7RUVDRSxxQkFBcUI7QUZDdkI7O0FFUUE7RUFDRSx1QkFBdUI7RUFDdkIsU0FBUztFQUNULGlCQUFpQjtBRkxuQjs7QUVrQkE7RUFDRSxhQUFhO0VBQ2IscUJDZ051QztBSC9OekM7O0FFc0JBO0VBQ0UsYUFBYTtFQUNiLG1CQ29GOEI7QUh2R2hDOztBRThCQTs7RUFFRSwwQkFBMEI7RUFDMUIseUNBQWlDO0VBQWpDLGlDQUFpQztFQUNqQyxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNDQUE4QjtFQUE5Qiw4QkFBOEI7QUYzQmhDOztBRThCQTtFQUNFLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsb0JBQW9CO0FGM0J0Qjs7QUU4QkE7OztFQUdFLGFBQWE7RUFDYixtQkFBbUI7QUYzQnJCOztBRThCQTs7OztFQUlFLGdCQUFnQjtBRjNCbEI7O0FFOEJBO0VBQ0UsZ0JDaUorQjtBSDVLakM7O0FFOEJBO0VBQ0Usb0JBQW9CO0VBQ3BCLGNBQWM7QUYzQmhCOztBRThCQTtFQUNFLGdCQUFnQjtBRjNCbEI7O0FFOEJBOztFQUVFLG1CQ29Ja0M7QUgvSnBDOztBRThCQTtFRXhGSSxjQUFXO0FKOERmOztBRW1DQTs7RUFFRSxrQkFBa0I7RUVuR2hCLGNBQVc7RUZxR2IsY0FBYztFQUNkLHdCQUF3QjtBRmhDMUI7O0FFbUNBO0VBQU0sY0FBYztBRi9CcEI7O0FFZ0NBO0VBQU0sVUFBVTtBRjVCaEI7O0FFbUNBO0VBQ0UsY0N2SmU7RUR3SmYscUJDWDRDO0VEWTVDLDZCQUE2QjtBRmhDL0I7O0FLaEpFO0VIbUxFLGNDZDhEO0VEZTlELDBCQ2QrQztBSGpCbkQ7O0FFd0NBO0VBQ0UsY0FBYztFQUNkLHFCQUFxQjtBRnJDdkI7O0FLMUpFO0VIa01FLGNBQWM7RUFDZCxxQkFBcUI7QUZwQ3pCOztBRTZDQTs7OztFQUlFLGlHQ3lEZ0g7RUM3TTlHLGNBQVc7QUoyR2Y7O0FFNkNBO0VBRUUsYUFBYTtFQUViLG1CQUFtQjtFQUVuQixjQUFjO0VBR2QsNkJBQTZCO0FGL0MvQjs7QUV1REE7RUFFRSxnQkFBZ0I7QUZyRGxCOztBRTZEQTtFQUNFLHNCQUFzQjtFQUN0QixrQkFBa0I7QUYxRHBCOztBRTZEQTtFQUdFLGdCQUFnQjtFQUNoQixzQkFBc0I7QUY1RHhCOztBRW9FQTtFQUNFLHlCQUF5QjtBRmpFM0I7O0FFb0VBO0VBQ0Usb0JDNkVrQztFRDVFbEMsdUJDNEVrQztFRDNFbEMsY0N0UWdCO0VEdVFoQixnQkFBZ0I7RUFDaEIsb0JBQW9CO0FGakV0Qjs7QUV3RUE7RUFFRSxtQkFBbUI7RUFDbkIsZ0NBQWdDO0FGdEVsQzs7QUU4RUE7RUFFRSxxQkFBcUI7RUFDckIscUJDMkoyQztBSHZPN0M7O0FFa0ZBO0VBRUUsZ0JBQWdCO0FGaEZsQjs7QUV3RkE7RUFDRSxVQUFVO0FGckZaOztBRXdGQTs7Ozs7RUFLRSxTQUFTO0VBQ1Qsb0JBQW9CO0VFNVBsQixrQkFBVztFRjhQYixvQkFBb0I7QUZyRnRCOztBRXdGQTs7RUFFRSxpQkFBaUI7QUZyRm5COztBRXdGQTs7RUFFRSxvQkFBb0I7QUZyRnRCOztBQUVBO0VFMEZFLGVBQWU7QUZ4RmpCOztBRThGQTtFQUNFLGlCQUFpQjtBRjNGbkI7O0FFa0dBOzs7O0VBSUUsMEJBQTBCO0FGL0Y1Qjs7QUVvR0U7Ozs7RUFLSSxlQUFlO0FGbEdyQjs7QUV3R0E7Ozs7RUFJRSxVQUFVO0VBQ1Ysa0JBQWtCO0FGckdwQjs7QUV3R0E7O0VBRUUsc0JBQXNCO0VBQ3RCLFVBQVU7QUZyR1o7O0FFeUdBO0VBQ0UsY0FBYztFQUVkLGdCQUFnQjtBRnZHbEI7O0FFMEdBO0VBTUUsWUFBWTtFQUVaLFVBQVU7RUFDVixTQUFTO0VBQ1QsU0FBUztBRjdHWDs7QUVrSEE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLGVBQWU7RUFDZixVQUFVO0VBQ1Ysb0JBQW9CO0VFblNoQixpQkF0Q1k7RUYyVWhCLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsbUJBQW1CO0FGL0dyQjs7QUVrSEE7RUFDRSx3QkFBd0I7QUYvRzFCOztBQUVBOztFRW1IRSxZQUFZO0FGaEhkOztBQUVBO0VFc0hFLG9CQUFvQjtFQUNwQix3QkFBd0I7QUZwSDFCOztBQUVBO0VFMEhFLHdCQUF3QjtBRnhIMUI7O0FFZ0lBO0VBQ0UsYUFBYTtFQUNiLDBCQUEwQjtBRjdINUI7O0FFb0lBO0VBQ0UscUJBQXFCO0FGakl2Qjs7QUVvSUE7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtBRmpJakI7O0FFb0lBO0VBQ0UsYUFBYTtBRmpJZjs7QUFFQTtFRXFJRSx3QkFBd0I7QUZuSTFCOztBTXpWQTs7RUFFRSxxQkhxU3VDO0VHblN2QyxnQkhxUytCO0VHcFMvQixnQkhxUytCO0FIc0RqQzs7QU12VkE7RUZnSE0saUJBdENZO0FKaVJsQjs7QU0xVkE7RUYrR00sZUF0Q1k7QUpxUmxCOztBTTdWQTtFRjhHTSxrQkF0Q1k7QUp5UmxCOztBTWhXQTtFRjZHTSxpQkF0Q1k7QUo2UmxCOztBTW5XQTtFRjRHTSxrQkF0Q1k7QUppU2xCOztBTXRXQTtFRjJHTSxlQXRDWTtBSnFTbEI7O0FNeFdBO0VGeUdNLGtCQXRDWTtFRWpFaEIsZ0JIdVMrQjtBSG9FakM7O0FNdldBO0VGbUdNLGVBdENZO0VFM0RoQixnQkgwUitCO0VHelIvQixnQkhpUitCO0FIeUZqQzs7QU14V0E7RUY4Rk0saUJBdENZO0VFdERoQixnQkhzUitCO0VHclIvQixnQkg0UStCO0FIK0ZqQzs7QU16V0E7RUZ5Rk0saUJBdENZO0VFakRoQixnQkhrUitCO0VHalIvQixnQkh1UStCO0FIcUdqQzs7QU0xV0E7RUZvRk0saUJBdENZO0VFNUNoQixnQkg4UStCO0VHN1EvQixnQkhrUStCO0FIMkdqQzs7QUVoVkE7RUlwQkUsZ0JIZ0ZXO0VHL0VYLG1CSCtFVztFRzlFWCxTQUFTO0VBQ1Qsd0NIekNhO0FIaVpmOztBTWhXQTs7RUZNSSxjQUFXO0VFSGIsZ0JIME4rQjtBSHlJakM7O0FNaFdBOztFQUVFLGNIa1FnQztFR2pRaEMseUJIMFFtQztBSHlGckM7O0FNM1ZBO0VDL0VFLGVBQWU7RUFDZixnQkFBZ0I7QVA4YWxCOztBTTNWQTtFQ3BGRSxlQUFlO0VBQ2YsZ0JBQWdCO0FQbWJsQjs7QU03VkE7RUFDRSxxQkFBcUI7QU5nV3ZCOztBTWpXQTtFQUlJLG9CSG9QK0I7QUg2R25DOztBTXZWQTtFRmpDSSxjQUFXO0VFbUNiLHlCQUF5QjtBTjBWM0I7O0FNdFZBO0VBQ0UsbUJIdUJXO0VDUlAsa0JBdENZO0FKaVhsQjs7QU10VkE7RUFDRSxjQUFjO0VGN0NaLGNBQVc7RUUrQ2IsY0gxR2dCO0FIbWNsQjs7QU01VkE7RUFNSSxxQkFBcUI7QU4wVnpCOztBUTdjQTtFQ0lFLGVBQWU7RUFHZixZQUFZO0FUMmNkOztBUTVjQTtFQUNFLGdCTG1nQ3dDO0VLbGdDeEMsc0JMUmE7RUtTYix5QkxOZ0I7RU9RZCxzQlA2TmdDO0VNcE9sQyxlQUFlO0VBR2YsWUFBWTtBVG9kZDs7QVF0Y0E7RUFFRSxxQkFBcUI7QVJ3Y3ZCOztBUXJjQTtFQUNFLHFCQUEwQjtFQUMxQixjQUFjO0FSd2NoQjs7QVFyY0E7RUprQ0ksY0FBVztFSWhDYixjTDNCZ0I7QUhtZWxCOztBVy9lQTtFUHVFSSxnQkFBVztFT3JFYixjUm1DZTtFUWxDZixxQkFBcUI7QVhrZnZCOztBVy9lRTtFQUNFLGNBQWM7QVhrZmxCOztBVzdlQTtFQUNFLHNCUnVsQ3VDO0VDN2hDckMsZ0JBQVc7RU94RGIsV1JUYTtFUVViLHlCUkRnQjtFT0VkLHFCUCtOK0I7QUhpUm5DOztBV3JmQTtFQVNJLFVBQVU7RVBrRFYsZUFBVztFT2hEWCxnQlJ3UTZCO0FId09qQzs7QUV4U0E7RVNqTUUsY0FBYztFUHlDWixnQkFBVztFT3ZDYixjUmpCZ0I7QUg4ZmxCOztBV2hmQTtFUDBDSSxrQkFBVztFT2xDWCxjQUFjO0VBQ2Qsa0JBQWtCO0FYNmV0Qjs7QVd4ZUE7RUFDRSxpQlI4akN1QztFUTdqQ3ZDLGtCQUFrQjtBWDJlcEI7O0FZbmhCRTs7Ozs7O0VDREEsV0FBVztFQUNYLG1CQUEwQjtFQUMxQixrQkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBYjZoQm5COztBYzFlSTtFRnpDRTtJQUNFLGdCVCtMRztFSHdWVDtBQUNGOztBY2hmSTtFRnpDRTtJQUNFLGdCVGdNRztFSDZWVDtBQUNGOztBY3RmSTtFRnpDRTtJQUNFLGdCVGlNRztFSGtXVDtBQUNGOztBYzVmSTtFRnpDRTtJQUNFLGlCVGtNSTtFSHVXVjtBQUNGOztBWTlnQkU7RUNuQ0EsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBMEI7RUFDMUIsa0JBQXlCO0FicWpCM0I7O0FZL2dCRTtFQUNFLGVBQWU7RUFDZixjQUFjO0Faa2hCbEI7O0FZcGhCRTs7RUFNSSxnQkFBZ0I7RUFDaEIsZUFBZTtBWm1oQnJCOztBZXprQkU7Ozs7OztFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsbUJBQTBCO0VBQzFCLGtCQUF5QjtBZmlsQjdCOztBZTNqQk07RUFDRSxhQUFhO0VBQ2IsWUFBWTtFQUNaLGVBQWU7QWY4akJ2Qjs7QWV6akJVO0VGd0JOLGNBQXVCO0VBQ3ZCLGVBQXdCO0FicWlCNUI7O0FlOWpCVTtFRndCTixhQUF1QjtFQUN2QixjQUF3QjtBYjBpQjVCOztBZW5rQlU7RUZ3Qk4sb0JBQXVCO0VBQ3ZCLHFCQUF3QjtBYitpQjVCOztBZXhrQlU7RUZ3Qk4sYUFBdUI7RUFDdkIsY0FBd0I7QWJvakI1Qjs7QWU3a0JVO0VGd0JOLGFBQXVCO0VBQ3ZCLGNBQXdCO0FieWpCNUI7O0FlbGxCVTtFRndCTixvQkFBdUI7RUFDdkIscUJBQXdCO0FiOGpCNUI7O0FlamxCTTtFRkNKLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZUFBZTtBYm9sQmpCOztBZWpsQlU7RUZiUixtQkFBc0M7RUFJdEMsb0JBQXVDO0FiK2xCekM7O0FldGxCVTtFRmJSLG9CQUFzQztFQUl0QyxxQkFBdUM7QWJvbUJ6Qzs7QWUzbEJVO0VGYlIsYUFBc0M7RUFJdEMsY0FBdUM7QWJ5bUJ6Qzs7QWVobUJVO0VGYlIsb0JBQXNDO0VBSXRDLHFCQUF1QztBYjhtQnpDOztBZXJtQlU7RUZiUixvQkFBc0M7RUFJdEMscUJBQXVDO0FibW5CekM7O0FlMW1CVTtFRmJSLGFBQXNDO0VBSXRDLGNBQXVDO0Fid25CekM7O0FlL21CVTtFRmJSLG9CQUFzQztFQUl0QyxxQkFBdUM7QWI2bkJ6Qzs7QWVwbkJVO0VGYlIsb0JBQXNDO0VBSXRDLHFCQUF1QztBYmtvQnpDOztBZXpuQlU7RUZiUixhQUFzQztFQUl0QyxjQUF1QztBYnVvQnpDOztBZTluQlU7RUZiUixvQkFBc0M7RUFJdEMscUJBQXVDO0FiNG9CekM7O0Flbm9CVTtFRmJSLG9CQUFzQztFQUl0QyxxQkFBdUM7QWJpcEJ6Qzs7QWV4b0JVO0VGYlIsY0FBc0M7RUFJdEMsZUFBdUM7QWJzcEJ6Qzs7QWV2b0JNO0VBQXdCLFNBQVM7QWYyb0J2Qzs7QWV6b0JNO0VBQXVCLFNabUtHO0FIMGVoQzs7QWUxb0JRO0VBQXdCLFFBRFo7QWYrb0JwQjs7QWU5b0JRO0VBQXdCLFFBRFo7QWZtcEJwQjs7QWVscEJRO0VBQXdCLFFBRFo7QWZ1cEJwQjs7QWV0cEJRO0VBQXdCLFFBRFo7QWYycEJwQjs7QWUxcEJRO0VBQXdCLFFBRFo7QWYrcEJwQjs7QWU5cEJRO0VBQXdCLFFBRFo7QWZtcUJwQjs7QWVscUJRO0VBQXdCLFFBRFo7QWZ1cUJwQjs7QWV0cUJRO0VBQXdCLFFBRFo7QWYycUJwQjs7QWUxcUJRO0VBQXdCLFFBRFo7QWYrcUJwQjs7QWU5cUJRO0VBQXdCLFFBRFo7QWZtckJwQjs7QWVsckJRO0VBQXdCLFNBRFo7QWZ1ckJwQjs7QWV0ckJRO0VBQXdCLFNBRFo7QWYyckJwQjs7QWUxckJRO0VBQXdCLFNBRFo7QWYrckJwQjs7QWV2ckJZO0VGaEJWLHNCQUE4QztBYjJzQmhEOztBZTNyQlk7RUZoQlYsdUJBQThDO0FiK3NCaEQ7O0FlL3JCWTtFRmhCVixnQkFBOEM7QWJtdEJoRDs7QWVuc0JZO0VGaEJWLHVCQUE4QztBYnV0QmhEOztBZXZzQlk7RUZoQlYsdUJBQThDO0FiMnRCaEQ7O0FlM3NCWTtFRmhCVixnQkFBOEM7QWIrdEJoRDs7QWUvc0JZO0VGaEJWLHVCQUE4QztBYm11QmhEOztBZW50Qlk7RUZoQlYsdUJBQThDO0FidXVCaEQ7O0FldnRCWTtFRmhCVixnQkFBOEM7QWIydUJoRDs7QWUzdEJZO0VGaEJWLHVCQUE4QztBYit1QmhEOztBZS90Qlk7RUZoQlYsdUJBQThDO0FibXZCaEQ7O0FjOXVCSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFZjZ3QnJCO0VleHdCUTtJRndCTixjQUF1QjtJQUN2QixlQUF3QjtFYm12QjFCO0VlNXdCUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnV2QjFCO0VlaHhCUTtJRndCTixvQkFBdUI7SUFDdkIscUJBQXdCO0ViMnZCMUI7RWVweEJRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0ViK3ZCMUI7RWV4eEJRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VibXdCMUI7RWU1eEJRO0lGd0JOLG9CQUF1QjtJQUN2QixxQkFBd0I7RWJ1d0IxQjtFZTF4Qkk7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWI0eEJmO0VlenhCUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RWJzeUJ2QztFZTd4QlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViMHlCdkM7RWVqeUJRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWI4eUJ2QztFZXJ5QlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0Via3pCdkM7RWV6eUJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnN6QnZDO0VlN3lCUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0ViMHpCdkM7RWVqekJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYjh6QnZDO0VlcnpCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJrMEJ2QztFZXp6QlE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYnMwQnZDO0VlN3pCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWIwMEJ2QztFZWowQlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViODBCdkM7RWVyMEJRO0lGYlIsY0FBc0M7SUFJdEMsZUFBdUM7RWJrMUJ2QztFZW4wQkk7SUFBd0IsU0FBUztFZnMwQnJDO0VlcDBCSTtJQUF1QixTWm1LRztFSG9xQjlCO0VlcDBCTTtJQUF3QixRQURaO0VmdzBCbEI7RWV2MEJNO0lBQXdCLFFBRFo7RWYyMEJsQjtFZTEwQk07SUFBd0IsUUFEWjtFZjgwQmxCO0VlNzBCTTtJQUF3QixRQURaO0VmaTFCbEI7RWVoMUJNO0lBQXdCLFFBRFo7RWZvMUJsQjtFZW4xQk07SUFBd0IsUUFEWjtFZnUxQmxCO0VldDFCTTtJQUF3QixRQURaO0VmMDFCbEI7RWV6MUJNO0lBQXdCLFFBRFo7RWY2MUJsQjtFZTUxQk07SUFBd0IsUUFEWjtFZmcyQmxCO0VlLzFCTTtJQUF3QixRQURaO0VmbTJCbEI7RWVsMkJNO0lBQXdCLFNBRFo7RWZzMkJsQjtFZXIyQk07SUFBd0IsU0FEWjtFZnkyQmxCO0VleDJCTTtJQUF3QixTQURaO0VmNDJCbEI7RWVwMkJVO0lGaEJWLGNBQTRCO0VidTNCNUI7RWV2MkJVO0lGaEJWLHNCQUE4QztFYjAzQjlDO0VlMTJCVTtJRmhCVix1QkFBOEM7RWI2M0I5QztFZTcyQlU7SUZoQlYsZ0JBQThDO0ViZzRCOUM7RWVoM0JVO0lGaEJWLHVCQUE4QztFYm00QjlDO0VlbjNCVTtJRmhCVix1QkFBOEM7RWJzNEI5QztFZXQzQlU7SUZoQlYsZ0JBQThDO0VieTRCOUM7RWV6M0JVO0lGaEJWLHVCQUE4QztFYjQ0QjlDO0VlNTNCVTtJRmhCVix1QkFBOEM7RWIrNEI5QztFZS8zQlU7SUZoQlYsZ0JBQThDO0ViazVCOUM7RWVsNEJVO0lGaEJWLHVCQUE4QztFYnE1QjlDO0VlcjRCVTtJRmhCVix1QkFBOEM7RWJ3NUI5QztBQUNGOztBY3A1Qkk7RUMzQkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RWZtN0JyQjtFZTk2QlE7SUZ3Qk4sY0FBdUI7SUFDdkIsZUFBd0I7RWJ5NUIxQjtFZWw3QlE7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RWI2NUIxQjtFZXQ3QlE7SUZ3Qk4sb0JBQXVCO0lBQ3ZCLHFCQUF3QjtFYmk2QjFCO0VlMTdCUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnE2QjFCO0VlOTdCUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnk2QjFCO0VlbDhCUTtJRndCTixvQkFBdUI7SUFDdkIscUJBQXdCO0ViNjZCMUI7RWVoOEJJO0lGQ0osY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0ViazhCZjtFZS83QlE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0ViNDhCdkM7RWVuOEJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYmc5QnZDO0VldjhCUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0VibzlCdkM7RWUzOEJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnc5QnZDO0VlLzhCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWI0OUJ2QztFZW45QlE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYmcrQnZDO0VldjlCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJvK0J2QztFZTM5QlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0VidytCdkM7RWUvOUJRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWI0K0J2QztFZW4rQlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViZy9CdkM7RWV2K0JRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYm8vQnZDO0VlMytCUTtJRmJSLGNBQXNDO0lBSXRDLGVBQXVDO0Vidy9CdkM7RWV6K0JJO0lBQXdCLFNBQVM7RWY0K0JyQztFZTErQkk7SUFBdUIsU1ptS0c7RUgwMEI5QjtFZTErQk07SUFBd0IsUUFEWjtFZjgrQmxCO0VlNytCTTtJQUF3QixRQURaO0VmaS9CbEI7RWVoL0JNO0lBQXdCLFFBRFo7RWZvL0JsQjtFZW4vQk07SUFBd0IsUUFEWjtFZnUvQmxCO0VldC9CTTtJQUF3QixRQURaO0VmMC9CbEI7RWV6L0JNO0lBQXdCLFFBRFo7RWY2L0JsQjtFZTUvQk07SUFBd0IsUUFEWjtFZmdnQ2xCO0VlLy9CTTtJQUF3QixRQURaO0VmbWdDbEI7RWVsZ0NNO0lBQXdCLFFBRFo7RWZzZ0NsQjtFZXJnQ007SUFBd0IsUUFEWjtFZnlnQ2xCO0VleGdDTTtJQUF3QixTQURaO0VmNGdDbEI7RWUzZ0NNO0lBQXdCLFNBRFo7RWYrZ0NsQjtFZTlnQ007SUFBd0IsU0FEWjtFZmtoQ2xCO0VlMWdDVTtJRmhCVixjQUE0QjtFYjZoQzVCO0VlN2dDVTtJRmhCVixzQkFBOEM7RWJnaUM5QztFZWhoQ1U7SUZoQlYsdUJBQThDO0VibWlDOUM7RWVuaENVO0lGaEJWLGdCQUE4QztFYnNpQzlDO0VldGhDVTtJRmhCVix1QkFBOEM7RWJ5aUM5QztFZXpoQ1U7SUZoQlYsdUJBQThDO0ViNGlDOUM7RWU1aENVO0lGaEJWLGdCQUE4QztFYitpQzlDO0VlL2hDVTtJRmhCVix1QkFBOEM7RWJrakM5QztFZWxpQ1U7SUZoQlYsdUJBQThDO0VicWpDOUM7RWVyaUNVO0lGaEJWLGdCQUE4QztFYndqQzlDO0VleGlDVTtJRmhCVix1QkFBOEM7RWIyakM5QztFZTNpQ1U7SUZoQlYsdUJBQThDO0ViOGpDOUM7QUFDRjs7QWMxakNJO0VDM0JFO0lBQ0UsYUFBYTtJQUNiLFlBQVk7SUFDWixlQUFlO0VmeWxDckI7RWVwbENRO0lGd0JOLGNBQXVCO0lBQ3ZCLGVBQXdCO0ViK2pDMUI7RWV4bENRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VibWtDMUI7RWU1bENRO0lGd0JOLG9CQUF1QjtJQUN2QixxQkFBd0I7RWJ1a0MxQjtFZWhtQ1E7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RWIya0MxQjtFZXBtQ1E7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RWIra0MxQjtFZXhtQ1E7SUZ3Qk4sb0JBQXVCO0lBQ3ZCLHFCQUF3QjtFYm1sQzFCO0VldG1DSTtJRkNKLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFYndtQ2Y7RWVybUNRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFYmtuQ3ZDO0Vlem1DUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJzbkN2QztFZTdtQ1E7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYjBuQ3ZDO0Vlam5DUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWI4bkN2QztFZXJuQ1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0Via29DdkM7RWV6bkNRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWJzb0N2QztFZTduQ1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViMG9DdkM7RWVqb0NRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYjhvQ3ZDO0Vlcm9DUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0Via3BDdkM7RWV6b0NRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnNwQ3ZDO0VlN29DUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWIwcEN2QztFZWpwQ1E7SUZiUixjQUFzQztJQUl0QyxlQUF1QztFYjhwQ3ZDO0VlL29DSTtJQUF3QixTQUFTO0Vma3BDckM7RWVocENJO0lBQXVCLFNabUtHO0VIZy9COUI7RWVocENNO0lBQXdCLFFBRFo7RWZvcENsQjtFZW5wQ007SUFBd0IsUUFEWjtFZnVwQ2xCO0VldHBDTTtJQUF3QixRQURaO0VmMHBDbEI7RWV6cENNO0lBQXdCLFFBRFo7RWY2cENsQjtFZTVwQ007SUFBd0IsUUFEWjtFZmdxQ2xCO0VlL3BDTTtJQUF3QixRQURaO0VmbXFDbEI7RWVscUNNO0lBQXdCLFFBRFo7RWZzcUNsQjtFZXJxQ007SUFBd0IsUUFEWjtFZnlxQ2xCO0VleHFDTTtJQUF3QixRQURaO0VmNHFDbEI7RWUzcUNNO0lBQXdCLFFBRFo7RWYrcUNsQjtFZTlxQ007SUFBd0IsU0FEWjtFZmtyQ2xCO0VlanJDTTtJQUF3QixTQURaO0VmcXJDbEI7RWVwckNNO0lBQXdCLFNBRFo7RWZ3ckNsQjtFZWhyQ1U7SUZoQlYsY0FBNEI7RWJtc0M1QjtFZW5yQ1U7SUZoQlYsc0JBQThDO0Vic3NDOUM7RWV0ckNVO0lGaEJWLHVCQUE4QztFYnlzQzlDO0VlenJDVTtJRmhCVixnQkFBOEM7RWI0c0M5QztFZTVyQ1U7SUZoQlYsdUJBQThDO0ViK3NDOUM7RWUvckNVO0lGaEJWLHVCQUE4QztFYmt0QzlDO0VlbHNDVTtJRmhCVixnQkFBOEM7RWJxdEM5QztFZXJzQ1U7SUZoQlYsdUJBQThDO0Vid3RDOUM7RWV4c0NVO0lGaEJWLHVCQUE4QztFYjJ0QzlDO0VlM3NDVTtJRmhCVixnQkFBOEM7RWI4dEM5QztFZTlzQ1U7SUZoQlYsdUJBQThDO0ViaXVDOUM7RWVqdENVO0lGaEJWLHVCQUE4QztFYm91QzlDO0FBQ0Y7O0FjaHVDSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFZit2Q3JCO0VlMXZDUTtJRndCTixjQUF1QjtJQUN2QixlQUF3QjtFYnF1QzFCO0VlOXZDUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnl1QzFCO0VlbHdDUTtJRndCTixvQkFBdUI7SUFDdkIscUJBQXdCO0ViNnVDMUI7RWV0d0NRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0ViaXZDMUI7RWUxd0NRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VicXZDMUI7RWU5d0NRO0lGd0JOLG9CQUF1QjtJQUN2QixxQkFBd0I7RWJ5dkMxQjtFZTV3Q0k7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWI4d0NmO0VlM3dDUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RWJ3eEN2QztFZS93Q1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViNHhDdkM7RWVueENRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWJneUN2QztFZXZ4Q1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0Vib3lDdkM7RWUzeENRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnd5Q3ZDO0VlL3hDUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0ViNHlDdkM7RWVueUNRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYmd6Q3ZDO0VldnlDUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJvekN2QztFZTN5Q1E7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYnd6Q3ZDO0VlL3lDUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWI0ekN2QztFZW56Q1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViZzBDdkM7RWV2ekNRO0lGYlIsY0FBc0M7SUFJdEMsZUFBdUM7RWJvMEN2QztFZXJ6Q0k7SUFBd0IsU0FBUztFZnd6Q3JDO0VldHpDSTtJQUF1QixTWm1LRztFSHNwQzlCO0VldHpDTTtJQUF3QixRQURaO0VmMHpDbEI7RWV6ekNNO0lBQXdCLFFBRFo7RWY2ekNsQjtFZTV6Q007SUFBd0IsUUFEWjtFZmcwQ2xCO0VlL3pDTTtJQUF3QixRQURaO0VmbTBDbEI7RWVsMENNO0lBQXdCLFFBRFo7RWZzMENsQjtFZXIwQ007SUFBd0IsUUFEWjtFZnkwQ2xCO0VleDBDTTtJQUF3QixRQURaO0VmNDBDbEI7RWUzMENNO0lBQXdCLFFBRFo7RWYrMENsQjtFZTkwQ007SUFBd0IsUUFEWjtFZmsxQ2xCO0VlajFDTTtJQUF3QixRQURaO0VmcTFDbEI7RWVwMUNNO0lBQXdCLFNBRFo7RWZ3MUNsQjtFZXYxQ007SUFBd0IsU0FEWjtFZjIxQ2xCO0VlMTFDTTtJQUF3QixTQURaO0VmODFDbEI7RWV0MUNVO0lGaEJWLGNBQTRCO0VieTJDNUI7RWV6MUNVO0lGaEJWLHNCQUE4QztFYjQyQzlDO0VlNTFDVTtJRmhCVix1QkFBOEM7RWIrMkM5QztFZS8xQ1U7SUZoQlYsZ0JBQThDO0ViazNDOUM7RWVsMkNVO0lGaEJWLHVCQUE4QztFYnEzQzlDO0VlcjJDVTtJRmhCVix1QkFBOEM7RWJ3M0M5QztFZXgyQ1U7SUZoQlYsZ0JBQThDO0ViMjNDOUM7RWUzMkNVO0lGaEJWLHVCQUE4QztFYjgzQzlDO0VlOTJDVTtJRmhCVix1QkFBOEM7RWJpNEM5QztFZWozQ1U7SUZoQlYsZ0JBQThDO0VibzRDOUM7RWVwM0NVO0lGaEJWLHVCQUE4QztFYnU0QzlDO0VldjNDVTtJRmhCVix1QkFBOEM7RWIwNEM5QztBQUNGOztBZ0I5N0NBO0VBQ0UsV0FBVztFQUNYLG1CYmlJVztFYWhJWCxjYlNnQjtBSHc3Q2xCOztBZ0JwOENBOztFQVFJLGdCYmtWZ0M7RWFqVmhDLG1CQUFtQjtFQUNuQiw2QmJKYztBSHE4Q2xCOztBZ0IzOENBO0VBY0ksc0JBQXNCO0VBQ3RCLGdDYlRjO0FIMDhDbEI7O0FnQmg5Q0E7RUFtQkksNkJiYmM7QUg4OENsQjs7QWdCeDdDQTs7RUFHSSxlYjRUK0I7QUg4bkNuQzs7QWdCajdDQTtFQUNFLHlCYm5DZ0I7QUh1OUNsQjs7QWdCcjdDQTs7RUFLSSx5QmJ2Q2M7QUg0OUNsQjs7QWdCMTdDQTs7RUFXTSx3QkFBNEM7QWhCbzdDbEQ7O0FnQi82Q0E7Ozs7RUFLSSxTQUFTO0FoQmk3Q2I7O0FnQno2Q0E7RUFFSSxxQ2IxRFc7QUhxK0NmOztBSzErQ0U7RVcyRUksY2J2RVk7RWF3RVosc0NidkVTO0FIMCtDZjs7QWlCdC9DRTs7O0VBSUkseUJDZ0c0RDtBbEJ3NUNsRTs7QWlCNS9DRTs7OztFQVlNLHFCQ3dGMEQ7QWxCKzVDbEU7O0FLNS9DRTtFWWlCTSx5QkFKc0M7QWpCbS9DOUM7O0FpQnAvQ0U7O0VBU1EseUJBUm9DO0FqQncvQzlDOztBaUI1Z0RFOzs7RUFJSSx5QkNnRzREO0FsQjg2Q2xFOztBaUJsaERFOzs7O0VBWU0scUJDd0YwRDtBbEJxN0NsRTs7QUtsaERFO0VZaUJNLHlCQUpzQztBakJ5Z0Q5Qzs7QWlCMWdERTs7RUFTUSx5QkFSb0M7QWpCOGdEOUM7O0FpQmxpREU7OztFQUlJLHlCQ2dHNEQ7QWxCbzhDbEU7O0FpQnhpREU7Ozs7RUFZTSxxQkN3RjBEO0FsQjI4Q2xFOztBS3hpREU7RVlpQk0seUJBSnNDO0FqQitoRDlDOztBaUJoaURFOztFQVNRLHlCQVJvQztBakJvaUQ5Qzs7QWlCeGpERTs7O0VBSUkseUJDZ0c0RDtBbEIwOUNsRTs7QWlCOWpERTs7OztFQVlNLHFCQ3dGMEQ7QWxCaStDbEU7O0FLOWpERTtFWWlCTSx5QkFKc0M7QWpCcWpEOUM7O0FpQnRqREU7O0VBU1EseUJBUm9DO0FqQjBqRDlDOztBaUI5a0RFOzs7RUFJSSx5QkNnRzREO0FsQmcvQ2xFOztBaUJwbERFOzs7O0VBWU0scUJDd0YwRDtBbEJ1L0NsRTs7QUtwbERFO0VZaUJNLHlCQUpzQztBakIya0Q5Qzs7QWlCNWtERTs7RUFTUSx5QkFSb0M7QWpCZ2xEOUM7O0FpQnBtREU7OztFQUlJLHlCQ2dHNEQ7QWxCc2dEbEU7O0FpQjFtREU7Ozs7RUFZTSxxQkN3RjBEO0FsQjZnRGxFOztBSzFtREU7RVlpQk0seUJBSnNDO0FqQmltRDlDOztBaUJsbURFOztFQVNRLHlCQVJvQztBakJzbUQ5Qzs7QWlCMW5ERTs7O0VBSUkseUJDZ0c0RDtBbEI0aERsRTs7QWlCaG9ERTs7OztFQVlNLHFCQ3dGMEQ7QWxCbWlEbEU7O0FLaG9ERTtFWWlCTSx5QkFKc0M7QWpCdW5EOUM7O0FpQnhuREU7O0VBU1EseUJBUm9DO0FqQjRuRDlDOztBaUJocERFOzs7RUFJSSx5QkNnRzREO0FsQmtqRGxFOztBaUJ0cERFOzs7O0VBWU0scUJDd0YwRDtBbEJ5akRsRTs7QUt0cERFO0VZaUJNLHlCQUpzQztBakI2b0Q5Qzs7QWlCOW9ERTs7RUFTUSx5QkFSb0M7QWpCa3BEOUM7O0FpQnRxREU7OztFQUlJLHNDZFFTO0FIZ3FEZjs7QUtycURFO0VZaUJNLHNDQUpzQztBakI0cEQ5Qzs7QWlCN3BERTs7RUFTUSxzQ0FSb0M7QWpCaXFEOUM7O0FnQjNrREE7RUFHTSxXYjNHUztFYTRHVCx5QmJwR1k7RWFxR1oscUJiZ1FxRDtBSDQwQzNEOztBZ0JqbERBO0VBV00sY2I1R1k7RWE2R1oseUJibEhZO0VhbUhaLHFCYmxIWTtBSDRyRGxCOztBZ0Jya0RBO0VBQ0UsV2IzSGE7RWE0SGIseUJicEhnQjtBSDRyRGxCOztBZ0Ixa0RBOzs7RUFPSSxxQmI0T3VEO0FINjFDM0Q7O0FnQmhsREE7RUFXSSxTQUFTO0FoQnlrRGI7O0FnQnBsREE7RUFnQk0sMkNiMUlTO0FIa3REZjs7QUs3c0RFO0VXNElNLFdiakpPO0Vha0pQLDRDYmxKTztBSHV0RGY7O0FjcnBESTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFaEJ1akR2QztFZ0I1akRHO0lBU0ssU0FBUztFaEJzakRqQjtBQUNGOztBY2pxREk7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RWhCbWtEdkM7RWdCeGtERztJQVNLLFNBQVM7RWhCa2tEakI7QUFDRjs7QWM3cURJO0VFaUdBO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0VoQitrRHZDO0VnQnBsREc7SUFTSyxTQUFTO0VoQjhrRGpCO0FBQ0Y7O0FjenJESTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFaEIybER2QztFZ0JobURHO0lBU0ssU0FBUztFaEIwbERqQjtBQUNGOztBZ0J6bURBO0VBT1EsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsaUNBQWlDO0FoQnNtRHpDOztBZ0JobkRBO0VBY1UsU0FBUztBaEJzbURuQjs7QW1CbnhEQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUNEaUg4RDtFQ2hIOUQseUJoQnlYa0M7RUNwUTlCLGVBdENZO0VlNUVoQixnQmhCa1IrQjtFZ0JqUi9CLGdCaEJzUitCO0VnQnJSL0IsY2hCRGdCO0VnQkVoQixzQmhCVGE7RWdCVWIsNEJBQTRCO0VBQzVCLHlCaEJQZ0I7RU9PZCxzQlA2TmdDO0VpQi9OOUIsd0VqQnVlNEY7QUhrekNsRzs7QW9CcnhETTtFRGROO0lDZVEsZ0JBQWdCO0VwQnl4RHRCO0FBQ0Y7O0FtQnp5REE7RUFzQkksNkJBQTZCO0VBQzdCLFNBQVM7QW5CdXhEYjs7QW1COXlEQTtFQTRCSSxrQkFBa0I7RUFDbEIsMEJoQnJCYztBSDJ5RGxCOztBcUI1eURFO0VBQ0UsY2xCQWM7RWtCQ2Qsc0JsQlJXO0VrQlNYLHFCbEJxZHNFO0VrQnBkdEUsVUFBVTtFQUtSLGdEbEJhVztBSDh4RGpCOztBbUIzekRBO0VBcUNJLGNoQjlCYztFZ0JnQ2QsVUFBVTtBbkJ5eERkOztBbUJoMERBO0VBcUNJLGNoQjlCYztFZ0JnQ2QsVUFBVTtBbkJ5eERkOztBbUJoMERBO0VBcUNJLGNoQjlCYztFZ0JnQ2QsVUFBVTtBbkJ5eERkOztBbUJoMERBO0VBaURJLHlCaEI5Q2M7RWdCZ0RkLFVBQVU7QW5Ca3hEZDs7QW1COXdEQTs7OztFQUtJLHdCQUFnQjtFQUFoQixxQkFBZ0I7RUFBaEIsZ0JBQWdCO0FuQmd4RHBCOztBbUI1d0RBO0VBT0ksY2hCL0RjO0VnQmdFZCxzQmhCdkVXO0FIZzFEZjs7QW1CcHdEQTs7RUFFRSxjQUFjO0VBQ2QsV0FBVztBbkJ1d0RiOztBbUI3dkRBO0VBQ0UsaUNEeUI4RDtFQ3hCOUQsb0NEd0I4RDtFQ3ZCOUQsZ0JBQWdCO0VmM0JkLGtCQUFXO0VlNkJiLGdCaEIrTCtCO0FIaWtEakM7O0FtQjd2REE7RUFDRSwrQkRpQjhEO0VDaEI5RCxrQ0RnQjhEO0VkSzFELGtCQXRDWTtFZW1CaEIsZ0JoQjZIK0I7QUhtb0RqQzs7QW1CN3ZEQTtFQUNFLGdDRFU4RDtFQ1Q5RCxtQ0RTOEQ7RWRLMUQsbUJBdENZO0VlMEJoQixnQmhCdUgrQjtBSHlvRGpDOztBbUJ2dkRBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxtQkFBMkI7RUFDM0IsZ0JBQWdCO0VmRFosZUF0Q1k7RWV5Q2hCLGdCaEJrSytCO0VnQmpLL0IsY2hCbkhnQjtFZ0JvSGhCLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsbUJBQW1DO0FuQjB2RHJDOztBbUJwd0RBO0VBY0ksZ0JBQWdCO0VBQ2hCLGVBQWU7QW5CMHZEbkI7O0FtQjl1REE7RUFDRSxrQ0Q5QjhEO0VDK0I5RCx1QmhCb1BpQztFQzlRN0IsbUJBdENZO0Vla0VoQixnQmhCK0UrQjtFT3hON0IscUJQK04rQjtBSDRwRG5DOztBbUI5dURBO0VBQ0UsZ0NEdEM4RDtFQ3VDOUQsb0JoQmlQZ0M7RUNuUjVCLGtCQXRDWTtFZTBFaEIsZ0JoQnNFK0I7RU92TjdCLHFCUDhOK0I7QUhxcURuQzs7QW1CN3VEQTtFQUdJLFlBQVk7QW5COHVEaEI7O0FtQjF1REE7RUFDRSxZQUFZO0FuQjZ1RGQ7O0FtQnJ1REE7RUFDRSxtQmhCMFUwQztBSDg1QzVDOztBbUJydURBO0VBQ0UsY0FBYztFQUNkLG1CaEIyVDRDO0FINjZDOUM7O0FtQmh1REE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGtCQUEwQztFQUMxQyxpQkFBeUM7QW5CbXVEM0M7O0FtQnZ1REE7O0VBUUksa0JBQTBDO0VBQzFDLGlCQUF5QztBbkJvdUQ3Qzs7QW1CM3REQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QscUJoQmdTNkM7QUg4N0MvQzs7QW1CM3REQTtFQUNFLGtCQUFrQjtFQUNsQixrQmhCNFIyQztFZ0IzUjNDLHFCaEIwUjZDO0FIbzhDL0M7O0FtQmp1REE7O0VBUUksY2hCek5jO0FIdTdEbEI7O0FtQjF0REE7RUFDRSxnQkFBZ0I7QW5CNnREbEI7O0FtQjF0REE7RUFDRSxvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixxQmhCNlE0QztBSGc5QzlDOztBbUJqdURBO0VBUUksZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYix1QmhCd1E0QztFZ0J2UTVDLGNBQWM7QW5CNnREbEI7O0FxQjE2REU7RUFDRSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CbEIwYzBDO0VDamIxQyxjQUFXO0VpQnZCWCxjbEJQYTtBSG83RGpCOztBcUIxNkRFO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJsQm95QnFDO0VrQm55QnJDLGlCQUFpQjtFakJtRWYsbUJBdENZO0VpQjNCZCxnQmxCc082QjtFa0JyTzdCLFdsQnhEVztFa0J5RFgsd0NsQnRCYTtFT3hCYixzQlA2TmdDO0FIK3ZEcEM7O0FxQno2REk7O0VBRUUsU0FBaUM7QXJCNDZEdkM7O0FxQm45REk7Ozs7RUE4Q0UsY0FBYztBckI0NkRwQjs7QXFCMTlESTtFQW9ERSxxQmxCMUNXO0VrQjZDVCxvQ0htQ3dEO0VHbEN4RCxpUkgzQjBFO0VHNEIxRSw0QkFBNEI7RUFDNUIsMkRBQTZEO0VBQzdELGdFSCtCd0Q7QWxCeTREaEU7O0FxQm4rREk7RUErREkscUJsQnJEUztFa0JzRFQsZ0RsQnREUztBSDg5RGpCOztBcUJ4K0RJO0VBeUVJLG9DSGlCd0Q7RUdoQnhELGtGSGdCd0Q7QWxCbTVEaEU7O0FxQjcrREk7RUFpRkUscUJsQnZFVztFa0IwRVQsdUNITXdEO0VHTHhELHVqQkFBOEo7QXJCODVEdEs7O0FxQm4vREk7RUF5RkkscUJsQi9FUztFa0JnRlQsZ0RsQmhGUztBSDgrRGpCOztBcUJ4L0RJO0VBa0dJLGNsQnhGUztBSGsvRGpCOztBcUI1L0RJOzs7RUF1R0ksY0FBYztBckIyNUR0Qjs7QXFCbGdFSTtFQStHSSxjbEJyR1M7QUg0L0RqQjs7QXFCdGdFSTtFQWtITSxxQmxCeEdPO0FIZ2dFakI7O0FxQjFnRUk7RUF3SE0scUJBQWtDO0VDbEp4Qyx5QkRtSitDO0FyQnM1RG5EOztBcUIvZ0VJO0VBK0hNLGdEbEJySE87QUh5Z0VqQjs7QXFCbmhFSTtFQW1JTSxxQmxCekhPO0FINmdFakI7O0FxQnZoRUk7RUE2SUkscUJsQm5JUztBSGloRWpCOztBcUIzaEVJO0VBa0pNLHFCbEJ4SU87RWtCeUlQLGdEbEJ6SU87QUhzaEVqQjs7QXFCcGhFRTtFQUNFLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJsQjBjMEM7RUNqYjFDLGNBQVc7RWlCdkJYLGNsQlZhO0FIaWlFakI7O0FxQnBoRUU7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QmxCb3lCcUM7RWtCbnlCckMsaUJBQWlCO0VqQm1FZixtQkF0Q1k7RWlCM0JkLGdCbEJzTzZCO0VrQnJPN0IsV2xCeERXO0VrQnlEWCx3Q2xCekJhO0VPckJiLHNCUDZOZ0M7QUh5MkRwQzs7QXFCbmhFSTs7RUFFRSxTQUFpQztBckJzaEV2Qzs7QXFCN2pFSTs7OztFQThDRSxjQUFjO0FyQnNoRXBCOztBcUJwa0VJO0VBb0RFLHFCbEI3Q1c7RWtCZ0RULG9DSG1Dd0Q7RUdsQ3hELDRVSDNCMEU7RUc0QjFFLDRCQUE0QjtFQUM1QiwyREFBNkQ7RUFDN0QsZ0VIK0J3RDtBbEJtL0RoRTs7QXFCN2tFSTtFQStESSxxQmxCeERTO0VrQnlEVCxnRGxCekRTO0FIMmtFakI7O0FxQmxsRUk7RUF5RUksb0NIaUJ3RDtFR2hCeEQsa0ZIZ0J3RDtBbEI2L0RoRTs7QXFCdmxFSTtFQWlGRSxxQmxCMUVXO0VrQjZFVCx1Q0hNd0Q7RUdMeEQsa25CQUE4SjtBckJ3Z0V0Szs7QXFCN2xFSTtFQXlGSSxxQmxCbEZTO0VrQm1GVCxnRGxCbkZTO0FIMmxFakI7O0FxQmxtRUk7RUFrR0ksY2xCM0ZTO0FIK2xFakI7O0FxQnRtRUk7OztFQXVHSSxjQUFjO0FyQnFnRXRCOztBcUI1bUVJO0VBK0dJLGNsQnhHUztBSHltRWpCOztBcUJobkVJO0VBa0hNLHFCbEIzR087QUg2bUVqQjs7QXFCcG5FSTtFQXdITSxxQkFBa0M7RUNsSnhDLHlCRG1KK0M7QXJCZ2dFbkQ7O0FxQnpuRUk7RUErSE0sZ0RsQnhITztBSHNuRWpCOztBcUI3bkVJO0VBbUlNLHFCbEI1SE87QUgwbkVqQjs7QXFCam9FSTtFQTZJSSxxQmxCdElTO0FIOG5FakI7O0FxQnJvRUk7RUFrSk0scUJsQjNJTztFa0I0SVAsZ0RsQjVJTztBSG1vRWpCOztBbUJ4NURBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixtQkFBbUI7QW5CMjVEckI7O0FtQjk1REE7RUFTSSxXQUFXO0FuQnk1RGY7O0FjeG5FSTtFS3NOSjtJQWVNLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLGdCQUFnQjtFbkJ3NURwQjtFbUIxNkRGO0lBdUJNLGFBQWE7SUFDYixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixnQkFBZ0I7RW5CczVEcEI7RW1CajdERjtJQWdDTSxxQkFBcUI7SUFDckIsV0FBVztJQUNYLHNCQUFzQjtFbkJvNUQxQjtFbUJ0N0RGO0lBdUNNLHFCQUFxQjtFbkJrNUR6QjtFbUJ6N0RGOztJQTRDTSxXQUFXO0VuQmk1RGY7RW1CNzdERjtJQWtETSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixXQUFXO0lBQ1gsZUFBZTtFbkI4NERuQjtFbUJwOERGO0lBeURNLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsYUFBYTtJQUNiLHFCaEIrS3dDO0lnQjlLeEMsY0FBYztFbkI4NERsQjtFbUIzOERGO0lBaUVNLG1CQUFtQjtJQUNuQix1QkFBdUI7RW5CNjREM0I7RW1CLzhERjtJQXFFTSxnQkFBZ0I7RW5CNjREcEI7QUFDRjs7QXVCL3RFQTtFQUNFLHFCQUFxQjtFQUVyQixnQnBCc1IrQjtFb0JyUi9CLGNwQk1nQjtFb0JMaEIsa0JBQWtCO0VBR2xCLHNCQUFzQjtFQUN0Qix5QkFBaUI7RUFBakIsc0JBQWlCO0VBQWpCLHFCQUFpQjtFQUFqQixpQkFBaUI7RUFDakIsNkJBQTZCO0VBQzdCLDZCQUEyQztFQ3VGM0MseUJyQjJSa0M7RUNwUTlCLGVBdENZO0VvQmlCaEIsZ0JyQjBMK0I7RU9sUjdCLHNCUDZOZ0M7RWlCL045QixxSWpCZ2I2STtBSHF6RG5KOztBb0JqdUVNO0VHZE47SUhlUSxnQkFBZ0I7RXBCcXVFdEI7QUFDRjs7QUsvdUVFO0VrQlVFLGNwQk5jO0VvQk9kLHFCQUFxQjtBdkJ5dUV6Qjs7QXVCMXZFQTtFQXNCSSxVQUFVO0VBQ1YsZ0RwQk1hO0FIa3VFakI7O0F1Qi92RUE7RUE2QkksYXBCaVo2QjtBSHExRGpDOztBdUJud0VBO0VBa0NJLGVBQXNEO0F2QnF1RTFEOztBdUJ2dEVBOztFQUVFLG9CQUFvQjtBdkIwdEV0Qjs7QXVCanRFRTtFQzNEQSxXckJDYTtFbUJEWCx5Qm5CNkJhO0VxQjNCZixxQnJCMkJlO0FIcXZFakI7O0FLNXdFRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F4Qnl4RTdIOztBd0I3d0VFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxnREFBaUY7QXhCMndFdkY7O0F3QnR3RUU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJDYTtFcUJBYixxQnJCQWE7QUh3d0VqQjs7QXdCandFRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXhCNnlFbk47O0F3Qjl2RUk7O0VBS0ksZ0RBQWlGO0F4Qjh2RXpGOztBdUJ0dkVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJPYztFcUJMaEIscUJyQktnQjtBSGd6RWxCOztBS2p6RUU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBeEI4ekU3SDs7QXdCbHpFRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsaURBQWlGO0F4Qmd6RXZGOztBd0IzeUVFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCckJjO0VxQnNCZCxxQnJCdEJjO0FIbTBFbEI7O0F3QnR5RUU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F4QmsxRW5OOztBd0JueUVJOztFQUtJLGlEQUFpRjtBeEJteUV6Rjs7QXVCM3hFRTtFQzNEQSxXckJDYTtFbUJEWCx5Qm5Cb0NhO0VxQmxDZixxQnJCa0NlO0FId3pFakI7O0FLdDFFRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F4Qm0yRTdIOztBd0J2MUVFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCwrQ0FBaUY7QXhCcTFFdkY7O0F3QmgxRUU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJRYTtFcUJQYixxQnJCT2E7QUgyMEVqQjs7QXdCMzBFRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXhCdTNFbk47O0F3QngwRUk7O0VBS0ksK0NBQWlGO0F4QncwRXpGOztBdUJoMEVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJzQ2E7RXFCcENmLHFCckJvQ2U7QUgyMUVqQjs7QUszM0VFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QXhCdzRFN0g7O0F3QjUzRUU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGdEQUFpRjtBeEIwM0V2Rjs7QXdCcjNFRTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQlVhO0VxQlRiLHFCckJTYTtBSDgyRWpCOztBd0JoM0VFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBeEI0NUVuTjs7QXdCNzJFSTs7RUFLSSxnREFBaUY7QXhCNjJFekY7O0F1QnIyRUU7RUMzREEsY3JCVWdCO0VtQlZkLHlCbkJtQ2E7RXFCakNmLHFCckJpQ2U7QUhtNEVqQjs7QUtoNkVFO0VtQkFFLGNyQkljO0VtQlZkLHlCRURvRjtFQVNwRixxQkFUeUg7QXhCNjZFN0g7O0F3Qmo2RUU7RUFFRSxjckJIYztFbUJWZCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGdEQUFpRjtBeEIrNUV2Rjs7QXdCMTVFRTtFQUVFLGNyQmpCYztFcUJrQmQseUJyQk9hO0VxQk5iLHFCckJNYTtBSHM1RWpCOztBd0JyNUVFOztFQUdFLGNyQjdCYztFcUI4QmQseUJBekN1SztFQTZDdksscUJBN0MrTTtBeEJpOEVuTjs7QXdCbDVFSTs7RUFLSSxnREFBaUY7QXhCazVFekY7O0F1QjE0RUU7RUMzREEsV3JCQ2E7RW1CRFgseUJuQmlDYTtFcUIvQmYscUJyQitCZTtBSDA2RWpCOztBS3I4RUU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBeEJrOUU3SDs7QXdCdDhFRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsK0NBQWlGO0F4Qm84RXZGOztBd0IvN0VFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCS2E7RXFCSmIscUJyQklhO0FINjdFakI7O0F3QjE3RUU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F4QnMrRW5OOztBd0J2N0VJOztFQUtJLCtDQUFpRjtBeEJ1N0V6Rjs7QXVCLzZFRTtFQzNEQSxjckJVZ0I7RW1CVmQseUJuQkVjO0VxQkFoQixxQnJCQWdCO0FIOCtFbEI7O0FLMStFRTtFbUJBRSxjckJJYztFbUJWZCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F4QnUvRTdIOztBd0IzK0VFO0VBRUUsY3JCSGM7RW1CVmQseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxpREFBaUY7QXhCeStFdkY7O0F3QnArRUU7RUFFRSxjckJqQmM7RXFCa0JkLHlCckIxQmM7RXFCMkJkLHFCckIzQmM7QUhpZ0ZsQjs7QXdCLzlFRTs7RUFHRSxjckI3QmM7RXFCOEJkLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXhCMmdGbk47O0F3QjU5RUk7O0VBS0ksaURBQWlGO0F4QjQ5RXpGOztBdUJwOUVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJTYztFcUJQaEIscUJyQk9nQjtBSDRnRmxCOztBSy9nRkU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBeEI0aEY3SDs7QXdCaGhGRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsOENBQWlGO0F4QjhnRnZGOztBd0J6Z0ZFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCbkJjO0VxQm9CZCxxQnJCcEJjO0FIK2hGbEI7O0F3QnBnRkU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F4QmdqRm5OOztBd0JqZ0ZJOztFQUtJLDhDQUFpRjtBeEJpZ0Z6Rjs7QXVCbi9FRTtFQ1BBLGNyQjdCZTtFcUI4QmYscUJyQjlCZTtBSDRoRmpCOztBS25qRkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQmxDYTtFcUJtQ2IscUJyQm5DYTtBSGtpRmpCOztBd0I1L0VFO0VBRUUsK0NyQnhDYTtBSHNpRmpCOztBd0IzL0VFO0VBRUUsY3JCN0NhO0VxQjhDYiw2QkFBNkI7QXhCNi9FakM7O0F3QjEvRUU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCckRhO0VxQnNEYixxQnJCdERhO0FIa2pGakI7O0F3QjEvRUk7O0VBS0ksK0NyQjdEUztBSHVqRmpCOztBdUJuaEZFO0VDUEEsY3JCbkRnQjtFcUJvRGhCLHFCckJwRGdCO0FIa2xGbEI7O0FLbmxGRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCeERjO0VxQnlEZCxxQnJCekRjO0FId2xGbEI7O0F3QjVoRkU7RUFFRSxpRHJCOURjO0FINGxGbEI7O0F3QjNoRkU7RUFFRSxjckJuRWM7RXFCb0VkLDZCQUE2QjtBeEI2aEZqQzs7QXdCMWhGRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckIzRWM7RXFCNEVkLHFCckI1RWM7QUh3bUZsQjs7QXdCMWhGSTs7RUFLSSxpRHJCbkZVO0FINm1GbEI7O0F1Qm5qRkU7RUNQQSxjckJ0QmU7RXFCdUJmLHFCckJ2QmU7QUhxbEZqQjs7QUtubkZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckIzQmE7RXFCNEJiLHFCckI1QmE7QUgybEZqQjs7QXdCNWpGRTtFQUVFLCtDckJqQ2E7QUgrbEZqQjs7QXdCM2pGRTtFQUVFLGNyQnRDYTtFcUJ1Q2IsNkJBQTZCO0F4QjZqRmpDOztBd0IxakZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQjlDYTtFcUIrQ2IscUJyQi9DYTtBSDJtRmpCOztBd0IxakZJOztFQUtJLCtDckJ0RFM7QUhnbkZqQjs7QXVCbmxGRTtFQ1BBLGNyQnBCZTtFcUJxQmYscUJyQnJCZTtBSG1uRmpCOztBS25wRkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQnpCYTtFcUIwQmIscUJyQjFCYTtBSHluRmpCOztBd0I1bEZFO0VBRUUsZ0RyQi9CYTtBSDZuRmpCOztBd0IzbEZFO0VBRUUsY3JCcENhO0VxQnFDYiw2QkFBNkI7QXhCNmxGakM7O0F3QjFsRkU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCNUNhO0VxQjZDYixxQnJCN0NhO0FIeW9GakI7O0F3QjFsRkk7O0VBS0ksZ0RyQnBEUztBSDhvRmpCOztBdUJubkZFO0VDUEEsY3JCdkJlO0VxQndCZixxQnJCeEJlO0FIc3BGakI7O0FLbnJGRTtFbUJ3REUsY3JCcERjO0VxQnFEZCx5QnJCNUJhO0VxQjZCYixxQnJCN0JhO0FINHBGakI7O0F3QjVuRkU7RUFFRSwrQ3JCbENhO0FIZ3FGakI7O0F3QjNuRkU7RUFFRSxjckJ2Q2E7RXFCd0NiLDZCQUE2QjtBeEI2bkZqQzs7QXdCMW5GRTs7RUFHRSxjckJ2RWM7RXFCd0VkLHlCckIvQ2E7RXFCZ0RiLHFCckJoRGE7QUg0cUZqQjs7QXdCMW5GSTs7RUFLSSwrQ3JCdkRTO0FIaXJGakI7O0F1Qm5wRkU7RUNQQSxjckJ6QmU7RXFCMEJmLHFCckIxQmU7QUh3ckZqQjs7QUtudEZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckI5QmE7RXFCK0JiLHFCckIvQmE7QUg4ckZqQjs7QXdCNXBGRTtFQUVFLCtDckJwQ2E7QUhrc0ZqQjs7QXdCM3BGRTtFQUVFLGNyQnpDYTtFcUIwQ2IsNkJBQTZCO0F4QjZwRmpDOztBd0IxcEZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQmpEYTtFcUJrRGIscUJyQmxEYTtBSDhzRmpCOztBd0IxcEZJOztFQUtJLCtDckJ6RFM7QUhtdEZqQjs7QXVCbnJGRTtFQ1BBLGNyQnhEZ0I7RXFCeURoQixxQnJCekRnQjtBSHV2RmxCOztBS252RkU7RW1Cd0RFLGNyQnBEYztFcUJxRGQseUJyQjdEYztFcUI4RGQscUJyQjlEYztBSDZ2RmxCOztBd0I1ckZFO0VBRUUsaURyQm5FYztBSGl3RmxCOztBd0IzckZFO0VBRUUsY3JCeEVjO0VxQnlFZCw2QkFBNkI7QXhCNnJGakM7O0F3QjFyRkU7O0VBR0UsY3JCdkVjO0VxQndFZCx5QnJCaEZjO0VxQmlGZCxxQnJCakZjO0FINndGbEI7O0F3QjFyRkk7O0VBS0ksaURyQnhGVTtBSGt4RmxCOztBdUJudEZFO0VDUEEsY3JCakRnQjtFcUJrRGhCLHFCckJsRGdCO0FIZ3hGbEI7O0FLbnhGRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCdERjO0VxQnVEZCxxQnJCdkRjO0FIc3hGbEI7O0F3QjV0RkU7RUFFRSw4Q3JCNURjO0FIMHhGbEI7O0F3QjN0RkU7RUFFRSxjckJqRWM7RXFCa0VkLDZCQUE2QjtBeEI2dEZqQzs7QXdCMXRGRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckJ6RWM7RXFCMEVkLHFCckIxRWM7QUhzeUZsQjs7QXdCMXRGSTs7RUFLSSw4Q3JCakZVO0FIMnlGbEI7O0F1Qnh1RkE7RUFDRSxnQnBCNE0rQjtFb0IzTS9CLGNwQmpEZTtFb0JrRGYscUJwQjJGNEM7QUhncEY5Qzs7QUtwekZFO0VrQjRFRSxjcEJ5RjhEO0VvQnhGOUQsMEJwQnlGK0M7QUhtcEZuRDs7QXVCbnZGQTtFQVlJLDBCcEJvRitDO0FIdXBGbkQ7O0F1QnZ2RkE7RUFpQkksY3BCdEZjO0VvQnVGZCxvQkFBb0I7QXZCMHVGeEI7O0F1Qi90RkE7RUNQRSxvQnJCMFNnQztFQ25SNUIsa0JBdENZO0VvQmlCaEIsZ0JyQitIK0I7RU92TjdCLHFCUDhOK0I7QUhxbUZuQzs7QXVCbHVGQTtFQ1hFLHVCckJxU2lDO0VDOVE3QixtQkF0Q1k7RW9CaUJoQixnQnJCZ0krQjtFT3hON0IscUJQK04rQjtBSDJtRm5DOztBdUJodUZBO0VBQ0UsY0FBYztFQUNkLFdBQVc7QXZCbXVGYjs7QXVCcnVGQTtFQU1JLGtCcEJ1VCtCO0FINDZFbkM7O0F1Qjl0RkE7OztFQUlJLFdBQVc7QXZCZ3VGZjs7QXlCMzJGQTtFTGdCTSxnQ2pCaVAyQztBSDhtRmpEOztBb0IzMUZNO0VLcEJOO0lMcUJRLGdCQUFnQjtFcEIrMUZ0QjtBQUNGOztBeUJyM0ZBO0VBSUksVUFBVTtBekJxM0ZkOztBeUJqM0ZBO0VBRUksYUFBYTtBekJtM0ZqQjs7QXlCLzJGQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsZ0JBQWdCO0VMRFosNkJqQmtQd0M7QUhrb0Y5Qzs7QW9CaDNGTTtFS05OO0lMT1EsZ0JBQWdCO0VwQm8zRnRCO0FBQ0Y7O0EwQno0RkE7Ozs7RUFJRSxrQkFBa0I7QTFCNDRGcEI7O0EwQno0RkE7RUFDRSxtQkFBbUI7QTFCNDRGckI7O0EyQngzRkk7RUFDRSxxQkFBcUI7RUFDckIsb0J4QitOMEM7RXdCOU4xQyx1QnhCNk4wQztFd0I1TjFDLFdBQVc7RUFoQ2YsdUJBQThCO0VBQzlCLHFDQUE0QztFQUM1QyxnQkFBZ0I7RUFDaEIsb0NBQTJDO0EzQjQ1RjdDOztBMkJ2MkZJO0VBQ0UsY0FBYztBM0IwMkZwQjs7QTBCcDVGQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsT0FBTztFQUNQLGF2QndwQnNDO0V1QnZwQnRDLGFBQWE7RUFDYixXQUFXO0VBQ1gsZ0J2Qmd1QnVDO0V1Qi90QnZDLGlCdkJndUJtQztFdUIvdEJuQyxvQkFBNEI7RXRCc0d4QixlQXRDWTtFc0I5RGhCLGN2QlhnQjtFdUJZaEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixzQnZCdkJhO0V1QndCYiw0QkFBNEI7RUFDNUIscUN2QmZhO0VPQ1gsc0JQNk5nQztBSHlzRnBDOztBMEIvNEZJO0VBQ0UsV0FBVztFQUNYLE9BQU87QTFCazVGYjs7QTBCLzRGSTtFQUNFLFFBQVE7RUFDUixVQUFVO0ExQms1RmhCOztBY3Q0Rkk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFMUI2NUZYO0UwQjE1RkU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFMUI0NUZkO0FBQ0Y7O0FjajVGSTtFWW5CQTtJQUNFLFdBQVc7SUFDWCxPQUFPO0UxQnc2Rlg7RTBCcjZGRTtJQUNFLFFBQVE7SUFDUixVQUFVO0UxQnU2RmQ7QUFDRjs7QWM1NUZJO0VZbkJBO0lBQ0UsV0FBVztJQUNYLE9BQU87RTFCbTdGWDtFMEJoN0ZFO0lBQ0UsUUFBUTtJQUNSLFVBQVU7RTFCazdGZDtBQUNGOztBY3Y2Rkk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFMUI4N0ZYO0UwQjM3RkU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFMUI2N0ZkO0FBQ0Y7O0EwQnY3RkE7RUFFSSxTQUFTO0VBQ1QsWUFBWTtFQUNaLGFBQWE7RUFDYix1QnZCOHJCdUM7QUgydkUzQzs7QTJCeDlGSTtFQUNFLHFCQUFxQjtFQUNyQixvQnhCK04wQztFd0I5TjFDLHVCeEI2TjBDO0V3QjVOMUMsV0FBVztFQXpCZixhQUFhO0VBQ2IscUNBQTRDO0VBQzVDLDBCQUFpQztFQUNqQyxvQ0FBMkM7QTNCcS9GN0M7O0EyQnY4Rkk7RUFDRSxjQUFjO0EzQjA4RnBCOztBMEJoOEZBO0VBRUksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHFCdkJnckJ1QztBSGt4RTNDOztBMkIvK0ZJO0VBQ0UscUJBQXFCO0VBQ3JCLG9CeEIrTjBDO0V3QjlOMUMsdUJ4QjZOMEM7RXdCNU4xQyxXQUFXO0VBbEJmLG1DQUEwQztFQUMxQyxlQUFlO0VBQ2Ysc0NBQTZDO0VBQzdDLHdCQUErQjtBM0JxZ0dqQzs7QTJCOTlGSTtFQUNFLGNBQWM7QTNCaStGcEI7O0EyQjkvRkk7RURtREUsaUJBQWlCO0ExQis4RnZCOztBMEIxOEZBO0VBRUksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHNCdkIrcEJ1QztBSDZ5RTNDOztBMkIxZ0dJO0VBQ0UscUJBQXFCO0VBQ3JCLG9CeEIrTjBDO0V3QjlOMUMsdUJ4QjZOMEM7RXdCNU4xQyxXQUFXO0EzQjZnR2pCOztBMkJqaEdJO0VBZ0JJLGFBQWE7QTNCcWdHckI7O0EyQmxnR007RUFDRSxxQkFBcUI7RUFDckIscUJ4QjRNd0M7RXdCM014Qyx1QnhCME13QztFd0J6TXhDLFdBQVc7RUE5QmpCLG1DQUEwQztFQUMxQyx5QkFBZ0M7RUFDaEMsc0NBQTZDO0EzQm9pRy9DOztBMkJuZ0dJO0VBQ0UsY0FBYztBM0JzZ0dwQjs7QTJCaGhHTTtFRGlEQSxpQkFBaUI7QTFCbStGdkI7O0EwQjU5RkE7RUFLSSxXQUFXO0VBQ1gsWUFBWTtBMUIyOUZoQjs7QTBCdDlGQTtFRTlHRSxTQUFTO0VBQ1QsZ0JBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQiw2QnpCQ2dCO0FIdWtHbEI7O0EwQnQ5RkE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLHVCdkJtcEJ3QztFdUJscEJ4QyxXQUFXO0VBQ1gsZ0J2QmdLK0I7RXVCL0ovQixjdkJoSGdCO0V1QmlIaEIsbUJBQW1CO0VBRW5CLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0IsU0FBUztBMUJ3OUZYOztBSzdrR0U7RXFCb0lFLGN2Qm1uQnFEO0V1QmxuQnJELHFCQUFxQjtFSi9JckIseUJuQkdjO0FIMGxHbEI7O0EwQnorRkE7RUFpQ0ksV3ZCcEpXO0V1QnFKWCxxQkFBcUI7RUp0SnJCLHlCbkI2QmE7QUhza0dqQjs7QTBCLytGQTtFQXdDSSxjdkJ0SmM7RXVCdUpkLG9CQUFvQjtFQUNwQiw2QkFBNkI7QTFCMjhGakM7O0EwQm44RkE7RUFDRSxjQUFjO0ExQnM4RmhCOztBMEJsOEZBO0VBQ0UsY0FBYztFQUNkLHNCdkI2bEJ3QztFdUI1bEJ4QyxnQkFBZ0I7RXRCckRaLG1CQXRDWTtFc0I2RmhCLGN2QnpLZ0I7RXVCMEtoQixtQkFBbUI7QTFCcThGckI7O0EwQmo4RkE7RUFDRSxjQUFjO0VBQ2QsdUJ2Qm1sQndDO0V1QmxsQnhDLGN2QjlLZ0I7QUhrbkdsQjs7QTZCL25HQTs7RUFFRSxrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtBN0Jrb0d4Qjs7QTZCdG9HQTs7RUFPSSxrQkFBa0I7RUFDbEIsY0FBYztBN0Jvb0dsQjs7QUtub0dFOztFd0JJSSxVQUFVO0E3Qm9vR2hCOztBNkJqcEdBOzs7O0VBa0JNLFVBQVU7QTdCc29HaEI7O0E2QmhvR0E7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLDJCQUEyQjtBN0Jtb0c3Qjs7QTZCdG9HQTtFQU1JLFdBQVc7QTdCb29HZjs7QTZCaG9HQTs7RUFJSSxpQjFCbU02QjtBSDg3RmpDOztBNkJyb0dBOztFbkJISSwwQm1CYThCO0VuQlo5Qiw2Qm1CWThCO0E3QmlvR2xDOztBNkIzb0dBOztFbkJXSSx5Qm1CSTZCO0VuQkg3Qiw0Qm1CRzZCO0E3QmtvR2pDOztBNkJsbkdBO0VBQ0Usd0JBQW1DO0VBQ25DLHVCQUFrQztBN0JxbkdwQzs7QTZCdm5HQTs7O0VBT0ksY0FBYztBN0JzbkdsQjs7QTZCbm5HRTtFQUNFLGVBQWU7QTdCc25HbkI7O0E2QmxuR0E7RUFDRSx1QkFBc0M7RUFDdEMsc0JBQXFDO0E3QnFuR3ZDOztBNkJsbkdBO0VBQ0Usc0JBQXNDO0VBQ3RDLHFCQUFxQztBN0Jxbkd2Qzs7QTZCam1HQTtFQUNFLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsdUJBQXVCO0E3Qm9tR3pCOztBNkJ2bUdBOztFQU9JLFdBQVc7QTdCcW1HZjs7QTZCNW1HQTs7RUFZSSxnQjFCa0g2QjtBSG0vRmpDOztBNkJqbkdBOztFbkJyRUksNkJtQnVGK0I7RW5CdEYvQiw0Qm1Cc0YrQjtBN0JxbUduQzs7QTZCdm5HQTs7RW5CbkZJLHlCbUIwRzRCO0VuQnpHNUIsMEJtQnlHNEI7QTdCc21HaEM7O0E2QnJsR0E7O0VBR0ksZ0JBQWdCO0E3QnVsR3BCOztBNkIxbEdBOzs7O0VBT00sa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixvQkFBb0I7QTdCMGxHMUI7O0E4Qm52R0E7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsV0FBVztBOUJzdkdiOztBOEIzdkdBOzs7O0VBV0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxTQUFTO0VBQ1QsWUFBWTtFQUNaLGdCQUFnQjtBOUJ1dkdwQjs7QThCdHdHQTs7Ozs7Ozs7Ozs7O0VBb0JNLGlCM0JrTjJCO0FIK2lHakM7O0E4QnJ4R0E7OztFQTRCSSxVQUFVO0E5Qit2R2Q7O0E4QjN4R0E7RUFpQ0ksVUFBVTtBOUI4dkdkOztBOEIveEdBOztFcEIwQ0kseUJvQkptRDtFcEJLbkQsNEJvQkxtRDtBOUIrdkd2RDs7QThCcnlHQTtFQTRDSSxhQUFhO0VBQ2IsbUJBQW1CO0E5QjZ2R3ZCOztBOEIxeUdBOztFcEIwQ0kseUJvQk1zRTtFcEJMdEUsNEJvQktzRTtBOUJnd0cxRTs7QThCaHpHQTs7O0VwQjRCSSwwQm9CMkJnQztFcEIxQmhDLDZCb0IwQmdDO0E5Qmd3R3BDOztBOEJ2ekdBOzs7RXBCNEJJLDBCb0JtQ2dDO0VwQmxDaEMsNkJvQmtDZ0M7QTlCK3ZHcEM7O0E4Qm52R0E7O0VBRUUsYUFBYTtBOUJzdkdmOztBOEJ4dkdBOztFQVFJLGtCQUFrQjtFQUNsQixVQUFVO0E5QnF2R2Q7O0E4Qjl2R0E7O0VBWU0sVUFBVTtBOUJ1dkdoQjs7QThCbndHQTs7Ozs7Ozs7RUFvQkksaUIzQnVJNkI7QUhtbkdqQzs7QThCdHZHQTtFQUF1QixrQjNCbUlVO0FIdW5HakM7O0E4Qnp2R0E7RUFBc0IsaUIzQmtJVztBSDJuR2pDOztBOEJydkdBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix5QjNCOFFrQztFMkI3UWxDLGdCQUFnQjtFMUJTWixlQXRDWTtFMEIrQmhCLGdCM0J1SytCO0UyQnRLL0IsZ0IzQjJLK0I7RTJCMUsvQixjM0I1R2dCO0UyQjZHaEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QjNCcEhnQjtFMkJxSGhCLHlCM0JuSGdCO0VPT2Qsc0JQNk5nQztBSHdvR3BDOztBOEJyd0dBOztFQWtCSSxhQUFhO0E5Qnd2R2pCOztBOEI5dUdBOztFQUVFLGdDWnRCOEQ7QWxCdXdHaEU7O0E4Qjl1R0E7Ozs7OztFQU1FLG9CM0J5UGdDO0VDblI1QixrQkF0Q1k7RTBCa0VoQixnQjNCOEUrQjtFT3ZON0IscUJQOE4rQjtBSDZwR25DOztBOEI5dUdBOztFQUVFLGtDWnZDOEQ7QWxCd3hHaEU7O0E4Qjl1R0E7Ozs7OztFQU1FLHVCM0JtT2lDO0VDOVE3QixtQkF0Q1k7RTBCbUZoQixnQjNCOEQrQjtFT3hON0IscUJQK04rQjtBSDZxR25DOztBOEI5dUdBOztFQUVFLHNCQUEwRTtBOUJpdkc1RTs7QThCdHVHQTs7Ozs7Ozs7RXBCM0pJLDBCb0JtSzRCO0VwQmxLNUIsNkJvQmtLNEI7QTlCMHVHaEM7O0E4QnZ1R0E7Ozs7OztFcEJ4SkkseUJvQjhKMkI7RXBCN0ozQiw0Qm9CNkoyQjtBOUIydUcvQjs7QStCaDdHQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsY0FBYztFQUNkLGtCQUErQztFQUMvQyxvQkFBcUU7RUFDckUsaUNBQW1CO0VBQW5CLG1CQUFtQjtBL0JtN0dyQjs7QStCaDdHQTtFQUNFLG9CQUFvQjtFQUNwQixrQjVCd2YwQztBSDI3RjVDOztBK0JoN0dBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsVzVCb2YwQztFNEJuZjFDLGVBQWtGO0VBQ2xGLFVBQVU7QS9CbTdHWjs7QStCejdHQTtFQVNJLFc1QnpCVztFNEIwQlgscUI1QkVhO0VtQjdCYix5Qm5CNkJhO0FIbTdHakI7O0ErQi83R0E7RUFvQk0sZ0Q1QlJXO0FIdTdHakI7O0ErQm44R0E7RUF5QkkscUI1QnFic0U7QUh5L0YxRTs7QStCdjhHQTtFQTZCSSxXNUI3Q1c7RTRCOENYLHlCNUJpZjhFO0U0QmhmOUUscUI1QmdmOEU7QUg4N0ZsRjs7QStCNzhHQTtFQXVDTSxjNUJqRFk7QUgyOUdsQjs7QStCajlHQTtFQTBDUSx5QjVCeERVO0FIbStHbEI7O0ErQmo2R0E7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBRWhCLG1CQUFtQjtBL0JtNkdyQjs7QStCdjZHQTtFQVNJLGtCQUFrQjtFQUNsQixZQUErRTtFQUMvRSxhQUErRDtFQUMvRCxjQUFjO0VBQ2QsVzVCdWJ3QztFNEJ0YnhDLFk1QnNid0M7RTRCcmJ4QyxvQkFBb0I7RUFDcEIsV0FBVztFQUNYLHNCNUJyRlc7RTRCc0ZYLHlCNUIrSTZCO0FIbXhHakM7O0ErQnA3R0E7RUF3Qkksa0JBQWtCO0VBQ2xCLFlBQStFO0VBQy9FLGFBQStEO0VBQy9ELGNBQWM7RUFDZCxXNUJ3YXdDO0U0QnZheEMsWTVCdWF3QztFNEJ0YXhDLFdBQVc7RUFDWCxtQ0FBZ0U7QS9CZzZHcEU7O0ErQnY1R0E7RXJCakdJLHNCUDZOZ0M7QUgreEdwQzs7QStCMzVHQTtFQU9NLGtPYjdENEU7QWxCcTlHbEY7O0ErQi81R0E7RUFhTSxxQjVCN0ZXO0VtQjdCYix5Qm5CNkJhO0FIby9HakI7O0ErQnA2R0E7RUFrQk0sK0tieEU0RTtBbEI4OUdsRjs7QStCeDZHQTtFVDdHSSx3Q25CNkJhO0FINC9HakI7O0ErQjU2R0E7RVQ3R0ksd0NuQjZCYTtBSGdnSGpCOztBK0I1NEdBO0VBR0ksa0I1QnlaK0M7QUhvL0ZuRDs7QStCaDVHQTtFQVFNLDhLYmxHNEU7QWxCOCtHbEY7O0ErQnA1R0E7RVRqSkksd0NuQjZCYTtBSDRnSGpCOztBK0JoNEdBO0VBQ0UscUJBQTJEO0EvQm00RzdEOztBK0JwNEdBO0VBS00sY0FBcUQ7RUFDckQsYzVCaVkrRTtFNEJoWS9FLG1CQUFtQjtFQUVuQixxQjVCK1g0RTtBSG1nR2xGOztBK0IzNEdBO0VBYU0sd0JibEUwRDtFYW1FMUQsMEJibkUwRDtFYW9FMUQsdUJiaEQwRDtFYWlEMUQsd0JiakQwRDtFYWtEMUQseUI1QnBMWTtFNEJzTFoscUI1QnFYNEU7RWlCdmlCNUUseUlqQnlmK0g7QUgyakdySTs7QW9CaGpITTtFVzJKTjtJWDFKUSxnQkFBZ0I7RXBCb2pIdEI7QUFDRjs7QStCMzVHQTtFQTBCTSxzQjVCbE1TO0U0Qm1NVCw4QkFBNEU7QS9CcTRHbEY7O0ErQmg2R0E7RVR6S0ksd0NuQjZCYTtBSGdqSGpCOztBK0J2M0dBO0VBQ0UscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQ2JyRzhEO0Vhc0c5RCwwQzVCbUtrQztFQ3BROUIsZUF0Q1k7RTJCMEloQixnQjVCNEQrQjtFNEIzRC9CLGdCNUJnRStCO0U0Qi9EL0IsYzVCdk5nQjtFNEJ3TmhCLHNCQUFzQjtFQUN0Qix1TzVCa1crSTtFNEJqVy9JLHlCNUI3TmdCO0VPT2Qsc0JQNk5nQztFNEJKbEMsd0JBQWdCO0VBQWhCLHFCQUFnQjtFQUFoQixnQkFBZ0I7QS9CdzNHbEI7O0ErQnY0R0E7RUFrQkkscUI1QnVQc0U7RTRCdFB0RSxVQUFVO0VBS1IsZ0Q1QmpOVztBSHNrSGpCOztBK0I3NEdBO0VBaUNNLGM1Qi9PWTtFNEJnUFosc0I1QnZQUztBSHVtSGY7O0ErQmw1R0E7RUF3Q0ksWUFBWTtFQUNaLHNCNUI4SGdDO0U0QjdIaEMsc0JBQXNCO0EvQjgyRzFCOztBK0J4NUdBO0VBOENJLGM1QjdQYztFNEI4UGQseUI1QmxRYztBSGduSGxCOztBK0I3NUdBO0VBb0RJLGFBQWE7QS9CNjJHakI7O0ErQmo2R0E7RUF5REksa0JBQWtCO0VBQ2xCLDBCNUJ4UWM7QUhvbkhsQjs7QStCeDJHQTtFQUNFLGtDYmpLOEQ7RWFrSzlELG9CNUJnSGtDO0U0Qi9HbEMsdUI1QitHa0M7RTRCOUdsQyxvQjVCK0dpQztFQzlRN0IsbUJBdENZO0FKaWpIbEI7O0ErQngyR0E7RUFDRSxnQ2J6SzhEO0VhMEs5RCxtQjVCNkdpQztFNEI1R2pDLHNCNUI0R2lDO0U0QjNHakMsa0I1QjRHZ0M7RUNuUjVCLGtCQXRDWTtBSnlqSGxCOztBK0JuMkdBO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsbUNiekw4RDtFYTBMOUQsZ0JBQWdCO0EvQnMyR2xCOztBK0JuMkdBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsbUNiak04RDtFYWtNOUQsU0FBUztFQUNULGdCQUFnQjtFQUNoQixVQUFVO0EvQnMyR1o7O0ErQjcyR0E7RUFVSSxxQjVCb0tzRTtFNEJuS3RFLGdENUIvUmE7QUhzb0hqQjs7QStCbDNHQTs7RUFpQkkseUI1Qi9UYztBSHFxSGxCOztBK0J2M0dBO0VBc0JNLGlCNUIyVFE7QUgwaUdkOztBK0IzM0dBO0VBMkJJLDBCQUEwQjtBL0JvMkc5Qjs7QStCaDJHQTtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxVQUFVO0VBQ1YsbUNibE84RDtFYW1POUQseUI1QnNDa0M7RTRCckNsQyxnQkFBZ0I7RUFFaEIsZ0I1QmpFK0I7RTRCa0UvQixnQjVCN0QrQjtFNEI4RC9CLGM1QnBWZ0I7RTRCcVZoQixzQjVCNVZhO0U0QjZWYix5QjVCelZnQjtFT09kLHNCUDZOZ0M7QUh3OUdwQzs7QStCajNHQTtFQW1CSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsVUFBVTtFQUNWLGNBQWM7RUFDZCw2QmJyUDREO0Vhc1A1RCx5QjVCbUJnQztFNEJsQmhDLGdCNUI3RTZCO0U0QjhFN0IsYzVCcFdjO0U0QnFXZCxpQkFBaUI7RVQ3V2pCLHlCbkJHYztFNEI0V2Qsb0JBQW9CO0VyQm5XcEIsa0NxQm9XZ0Y7QS9CazJHcEY7O0ErQngxR0E7RUFDRSxXQUFXO0VBQ1gsY2IzUTJCO0VhNFEzQixVQUFVO0VBQ1YsNkJBQTZCO0VBQzdCLHdCQUFnQjtFQUFoQixxQkFBZ0I7RUFBaEIsZ0JBQWdCO0EvQjIxR2xCOztBK0JoMkdBO0VBUUksVUFBVTtBL0I0MUdkOztBK0JwMkdBO0VBWThCLGdFNUJ6V2I7QUhxc0hqQjs7QStCeDJHQTtFQWE4QixnRTVCMVdiO0FIeXNIakI7O0ErQjUyR0E7RUFjOEIsZ0U1QjNXYjtBSDZzSGpCOztBK0JoM0dBO0VBa0JJLFNBQVM7QS9CazJHYjs7QStCcDNHQTtFQXNCSSxXNUJtTjZDO0U0QmxON0MsWTVCa042QztFNEJqTjdDLG9CQUF5RTtFVGxaekUseUJuQjZCYTtFNEJ1WGIsUzVCa04wQztFTzFsQjFDLG1CUDJsQjZDO0VpQjdsQjNDLG9IakJ5ZitIO0VpQnpmL0gsNEdqQnlmK0g7RTRCM0dqSSx3QkFBZ0I7RUFBaEIsZ0JBQWdCO0EvQmkyR3BCOztBb0IzdUhNO0VXNFdOO0lYM1dRLHdCQUFnQjtJQUFoQixnQkFBZ0I7RXBCK3VIdEI7QUFDRjs7QStCcjRHQTtFVDFYSSx5Qm5CMm1CMkU7QUh3cEcvRTs7QStCejRHQTtFQXNDSSxXNUI0TG9DO0U0QjNMcEMsYzVCNExxQztFNEIzTHJDLGtCQUFrQjtFQUNsQixlNUIyTHVDO0U0QjFMdkMseUI1QmhhYztFNEJpYWQseUJBQXlCO0VyQnpaekIsbUJQb2xCb0M7QUg2cUd4Qzs7QStCbjVHQTtFQWlESSxXNUJ3TDZDO0U0QnZMN0MsWTVCdUw2QztFbUJubUI3Qyx5Qm5CNkJhO0U0QmlaYixTNUJ3TDBDO0VPMWxCMUMsbUJQMmxCNkM7RWlCN2xCM0MsaUhqQnlmK0g7RWlCemYvSCw0R2pCeWYrSDtFNEJqRmpJLHFCQUFnQjtFQUFoQixnQkFBZ0I7QS9CcTJHcEI7O0FvQnp3SE07RVc0V047SVgzV1EscUJBQWdCO0lBQWhCLGdCQUFnQjtFcEI2d0h0QjtBQUNGOztBK0JuNkdBO0VUMVhJLHlCbkIybUIyRTtBSHNyRy9FOztBK0J2NkdBO0VBZ0VJLFc1QmtLb0M7RTRCaktwQyxjNUJrS3FDO0U0QmpLckMsa0JBQWtCO0VBQ2xCLGU1QmlLdUM7RTRCaEt2Qyx5QjVCMWJjO0U0QjJiZCx5QkFBeUI7RXJCbmJ6QixtQlBvbEJvQztBSDJzR3hDOztBK0JqN0dBO0VBMkVJLFc1QjhKNkM7RTRCN0o3QyxZNUI2SjZDO0U0QjVKN0MsYUFBYTtFQUNiLG9CNUJ0RStCO0U0QnVFL0IsbUI1QnZFK0I7RW1CbFkvQix5Qm5CNkJhO0U0QjhhYixTNUIySjBDO0VPMWxCMUMsbUJQMmxCNkM7RWlCN2xCM0MsZ0hqQnlmK0g7RWlCemYvSCw0R2pCeWYrSDtFNEJwRGpJLGdCQUFnQjtBL0J5MkdwQjs7QW9CMXlITTtFVzRXTjtJWDNXUSxvQkFBZ0I7SUFBaEIsZ0JBQWdCO0VwQjh5SHRCO0FBQ0Y7O0ErQnA4R0E7RVQxWEkseUJuQjJtQjJFO0FIdXRHL0U7O0ErQng4R0E7RUE2RkksVzVCcUlvQztFNEJwSXBDLGM1QnFJcUM7RTRCcElyQyxrQkFBa0I7RUFDbEIsZTVCb0l1QztFNEJuSXZDLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsb0JBQTRDO0EvQisyR2hEOztBK0JsOUdBO0VBd0dJLHlCNUI5ZGM7RU9RZCxtQlBvbEJvQztBSGl2R3hDOztBK0J2OUdBO0VBNkdJLGtCQUFrQjtFQUNsQix5QjVCcGVjO0VPUWQsbUJQb2xCb0M7QUh1dkd4Qzs7QStCNzlHQTtFQW9ITSx5QjVCeGVZO0FIcTFIbEI7O0ErQmorR0E7RUF3SE0sZUFBZTtBL0I2MkdyQjs7QStCcitHQTtFQTRITSx5QjVCaGZZO0FINjFIbEI7O0ErQnorR0E7RUFnSU0sZUFBZTtBL0I2MkdyQjs7QStCNytHQTtFQW9JTSx5QjVCeGZZO0FIcTJIbEI7O0ErQngyR0E7OztFWHpmTSw0R2pCeWYrSDtBSDgyR3JJOztBb0JuMkhNO0VXcWZOOzs7SVhwZlEsZ0JBQWdCO0VwQnkySHRCO0FBQ0Y7O0FnQzEzSEE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FoQzYzSGxCOztBZ0MxM0hBO0VBQ0UsY0FBYztFQUNkLG9CN0J5cUJzQztBSG90R3hDOztBSzUzSEU7RTJCR0UscUJBQXFCO0FoQzYzSHpCOztBZ0NuNEhBO0VBV0ksYzdCWGM7RTZCWWQsb0JBQW9CO0VBQ3BCLGVBQWU7QWhDNDNIbkI7O0FnQ3AzSEE7RUFDRSxnQzdCekJnQjtBSGc1SGxCOztBZ0N4M0hBO0VBSUksbUI3QnNNNkI7RTZCck03Qiw2QkFBZ0Q7RXRCWmhELCtCUG9OZ0M7RU9uTmhDLGdDUG1OZ0M7QUhrckhwQzs7QUtqNUhFO0UyQjJCSSxxQzdCakNZO0FIMjVIbEI7O0FnQ240SEE7RUFhTSxjN0JsQ1k7RTZCbUNaLDZCQUE2QjtFQUM3Qix5QkFBeUI7QWhDMDNIL0I7O0FnQ3o0SEE7O0VBcUJJLGM3QnpDYztFNkIwQ2Qsc0I3QmpEVztFNkJrRFgsa0M3QmxEVztBSDI2SGY7O0FnQ2g1SEE7RUE0QkksZ0I3QjhLNkI7RU9qTjdCLHlCc0JxQzRCO0V0QnBDNUIsMEJzQm9DNEI7QWhDdzNIaEM7O0FnQy8ySEE7RXRCdkRJLHNCUDZOZ0M7QUg2c0hwQzs7QWdDbjNIQTs7RUFPSSxXN0J6RVc7RTZCMEVYLHlCN0I5Q2E7QUgrNUhqQjs7QWdDeDJIQTs7RUFHSSxjQUFjO0VBQ2Qsa0JBQWtCO0FoQzAySHRCOztBZ0N0MkhBOztFQUdJLGFBQWE7RUFDYixZQUFZO0VBQ1osa0JBQWtCO0FoQ3cySHRCOztBZ0MvMUhBO0VBRUksYUFBYTtBaENpMkhqQjs7QWdDbjJIQTtFQUtJLGNBQWM7QWhDazJIbEI7O0FpQ3Q4SEE7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsOEJBQThCO0VBQzlCLG9COUJnSFc7QUh5MUhiOztBaUMvOEhBOztFQVdJLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLDhCQUE4QjtBakN5OEhsQzs7QWlDcjdIQTtFQUNFLHFCQUFxQjtFQUNyQixzQjlCaXFCK0U7RThCaHFCL0UseUI5QmdxQitFO0U4Qi9wQi9FLGtCOUJnRlc7RUNSUCxrQkF0Q1k7RTZCaENoQixvQkFBb0I7RUFDcEIsbUJBQW1CO0FqQ3c3SHJCOztBS2wrSEU7RTRCNkNFLHFCQUFxQjtBakN5N0h6Qjs7QWlDaDdIQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixnQkFBZ0I7QWpDbTdIbEI7O0FpQ3g3SEE7RUFRSSxnQkFBZ0I7RUFDaEIsZUFBZTtBakNvN0huQjs7QWlDNzdIQTtFQWFJLGdCQUFnQjtFQUNoQixXQUFXO0FqQ283SGY7O0FpQzM2SEE7RUFDRSxxQkFBcUI7RUFDckIsbUI5QndsQnVDO0U4QnZsQnZDLHNCOUJ1bEJ1QztBSHUxR3pDOztBaUNsNkhBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFHWixtQkFBbUI7QWpDbTZIckI7O0FpQy81SEE7RUFDRSx3QjlCbW1Cd0M7RUMxbEJwQyxrQkF0Q1k7RTZCK0JoQixjQUFjO0VBQ2QsNkJBQTZCO0VBQzdCLDZCQUF1QztFdkJ4R3JDLHNCUDZOZ0M7QUg4eUhwQzs7QUs3Z0lFO0U0QjhHRSxxQkFBcUI7QWpDbTZIekI7O0FpQzc1SEE7RUFDRSxxQkFBcUI7RUFDckIsWUFBWTtFQUNaLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLHFDQUFxQztBakNnNkh2Qzs7QWlDNzVIQTtFQUNFLGdCOUIra0JzQztFOEI5a0J0QyxnQkFBZ0I7QWpDZzZIbEI7O0FjdCtISTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDeTVIdkI7QUFDRjs7QWMzL0hJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQys0SGpDO0VpQ3A2SEc7SUF3QkssbUJBQW1CO0VqQys0SDNCO0VpQ3Y2SEc7SUEyQk8sa0JBQWtCO0VqQys0SDVCO0VpQzE2SEc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSHUzR3ZDO0VpQzk2SEc7O0lBc0NLLGlCQUFpQjtFakM0NEh6QjtFaUNsN0hHO0lBcURLLGlCQUFpQjtFakNnNEh6QjtFaUNyN0hHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDNjNIeEI7RWlDejdIRztJQWdFSyxhQUFhO0VqQzQzSHJCO0FBQ0Y7O0FjN2dJSTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDZzhIdkI7QUFDRjs7QWNsaUlJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQ3M3SGpDO0VpQzM4SEc7SUF3QkssbUJBQW1CO0VqQ3M3SDNCO0VpQzk4SEc7SUEyQk8sa0JBQWtCO0VqQ3M3SDVCO0VpQ2o5SEc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSDg1R3ZDO0VpQ3I5SEc7O0lBc0NLLGlCQUFpQjtFakNtN0h6QjtFaUN6OUhHO0lBcURLLGlCQUFpQjtFakN1Nkh6QjtFaUM1OUhHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDbzZIeEI7RWlDaCtIRztJQWdFSyxhQUFhO0VqQ202SHJCO0FBQ0Y7O0FjcGpJSTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDdStIdkI7QUFDRjs7QWN6a0lJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQzY5SGpDO0VpQ2wvSEc7SUF3QkssbUJBQW1CO0VqQzY5SDNCO0VpQ3IvSEc7SUEyQk8sa0JBQWtCO0VqQzY5SDVCO0VpQ3gvSEc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSHE4R3ZDO0VpQzUvSEc7O0lBc0NLLGlCQUFpQjtFakMwOUh6QjtFaUNoZ0lHO0lBcURLLGlCQUFpQjtFakM4OEh6QjtFaUNuZ0lHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDMjhIeEI7RWlDdmdJRztJQWdFSyxhQUFhO0VqQzA4SHJCO0FBQ0Y7O0FjM2xJSTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDOGdJdkI7QUFDRjs7QWNobklJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQ29nSWpDO0VpQ3poSUc7SUF3QkssbUJBQW1CO0VqQ29nSTNCO0VpQzVoSUc7SUEyQk8sa0JBQWtCO0VqQ29nSTVCO0VpQy9oSUc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSDQrR3ZDO0VpQ25pSUc7O0lBc0NLLGlCQUFpQjtFakNpZ0l6QjtFaUN2aUlHO0lBcURLLGlCQUFpQjtFakNxL0h6QjtFaUMxaUlHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDay9IeEI7RWlDOWlJRztJQWdFSyxhQUFhO0VqQ2kvSHJCO0FBQ0Y7O0FpQ3ZqSUE7RUF5QlEscUJBQXFCO0VBQ3JCLDJCQUEyQjtBakNraUluQzs7QWlDNWpJQTs7RUFRVSxnQkFBZ0I7RUFDaEIsZUFBZTtBakN5akl6Qjs7QWlDbGtJQTtFQTZCVSxtQkFBbUI7QWpDeWlJN0I7O0FpQ3RrSUE7RUFnQ1ksa0JBQWtCO0FqQzBpSTlCOztBaUMxa0lBO0VBb0NZLHFCOUJ3aEI2QjtFOEJ2aEI3QixvQjlCdWhCNkI7QUhtaEh6Qzs7QWlDL2tJQTs7RUEyQ1UsaUJBQWlCO0FqQ3lpSTNCOztBaUNwbElBO0VBMERVLGlCQUFpQjtBakM4aEkzQjs7QWlDeGxJQTtFQThEVSx3QkFBd0I7RUFHeEIsZ0JBQWdCO0FqQzRoSTFCOztBaUM3bElBO0VBcUVVLGFBQWE7QWpDNGhJdkI7O0FpQy9nSUE7RUFFSSx5QjlCdk5XO0FId3VJZjs7QUt6dUlFO0U0QjJOSSx5QjlCMU5TO0FINHVJZjs7QWlDdmhJQTtFQVdNLHlCOUJoT1M7QUhndklmOztBS2p2SUU7RTRCb09NLHlCOUJuT087QUhvdklmOztBaUMvaElBO0VBa0JRLHlCOUJ2T087QUh3dklmOztBaUNuaUlBOzs7O0VBMEJNLHlCOUIvT1M7QUgrdklmOztBaUMxaUlBO0VBK0JJLHlCOUJwUFc7RThCcVBYLGdDOUJyUFc7QUhvd0lmOztBaUMvaUlBO0VBb0NJLG1SZjdNOEU7QWxCNHRJbEY7O0FpQ25qSUE7RUF3Q0kseUI5QjdQVztBSDR3SWY7O0FpQ3ZqSUE7RUEwQ00seUI5Qi9QUztBSGd4SWY7O0FLanhJRTtFNEJtUU0seUI5QmxRTztBSG94SWY7O0FpQzNnSUE7RUFFSSxXOUJyUlc7QUhreUlmOztBS3p4SUU7RTRCK1FJLFc5QnhSUztBSHN5SWY7O0FpQ25oSUE7RUFXTSwrQjlCOVJTO0FIMHlJZjs7QUtqeUlFO0U0QndSTSxnQzlCalNPO0FIOHlJZjs7QWlDM2hJQTtFQWtCUSxnQzlCclNPO0FIa3pJZjs7QWlDL2hJQTs7OztFQTBCTSxXOUI3U1M7QUh5eklmOztBaUN0aUlBO0VBK0JJLCtCOUJsVFc7RThCbVRYLHNDOUJuVFc7QUg4eklmOztBaUMzaUlBO0VBb0NJLHlSZmpROEU7QWxCNHdJbEY7O0FpQy9pSUE7RUF3Q0ksK0I5QjNUVztBSHMwSWY7O0FpQ25qSUE7RUEwQ00sVzlCN1RTO0FIMDBJZjs7QUtqMElFO0U0QnVUTSxXOUJoVU87QUg4MElmOztBa0NqMUlBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUVaLHFCQUFxQjtFQUNyQixzQi9CSmE7RStCS2IsMkJBQTJCO0VBQzNCLHNDL0JJYTtFT0NYLHNCUDZOZ0M7QUhrbklwQzs7QWtDNzFJQTtFQWFJLGVBQWU7RUFDZixjQUFjO0FsQ28xSWxCOztBa0NsMklBO0VBa0JJLG1CQUFtQjtFQUNuQixzQkFBc0I7QWxDbzFJMUI7O0FrQ3YySUE7RUFzQk0sbUJBQW1CO0V4QkNyQiwyQ1FtSDREO0VSbEg1RCw0Q1FrSDREO0FsQm11SWhFOztBa0M3MklBO0VBMkJNLHNCQUFzQjtFeEJVeEIsK0NRcUc0RDtFUnBHNUQsOENRb0c0RDtBbEJ5dUloRTs7QWtDbjNJQTs7RUFvQ0ksYUFBYTtBbENvMUlqQjs7QWtDaDFJQTtFQUdFLGNBQWM7RUFHZCxlQUFlO0VBQ2YsZ0IvQjh3QnlDO0FIaWtIM0M7O0FrQzMwSUE7RUFDRSxzQi9Cd3dCd0M7QUhza0gxQzs7QWtDMzBJQTtFQUNFLHFCQUErQjtFQUMvQixnQkFBZ0I7QWxDODBJbEI7O0FrQzMwSUE7RUFDRSxnQkFBZ0I7QWxDODBJbEI7O0FLbjRJRTtFNkIwREUscUJBQXFCO0FsQzYwSXpCOztBa0MvMElBO0VBTUksb0IvQnV2QnVDO0FIc2xIM0M7O0FrQ3IwSUE7RUFDRSx3Qi9COHVCeUM7RStCN3VCekMsZ0JBQWdCO0VBRWhCLHFDL0JyRWE7RStCc0ViLDZDL0J0RWE7QUg2NElmOztBa0M1MElBO0V4QmhFSSwwRHdCd0U4RTtBbEN3MElsRjs7QWtDcDBJQTtFQUNFLHdCL0JrdUJ5QztFK0JodUJ6QyxxQy9CaEZhO0UrQmlGYiwwQy9CakZhO0FIdTVJZjs7QWtDMTBJQTtFeEI1RUksMERRNEg0RDtBbEI4eEloRTs7QWtDOXpJQTtFQUNFLHVCQUFpQztFQUNqQyx1Qi9CZ3RCd0M7RStCL3NCeEMsc0JBQWdDO0VBQ2hDLGdCQUFnQjtBbENpMElsQjs7QWtDOXpJQTtFQUNFLHVCQUFpQztFQUNqQyxzQkFBZ0M7QWxDaTBJbEM7O0FrQzd6SUE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGdCL0Iyc0J5QztFTzF6QnZDLGtDUTRINEQ7QWxCb3pJaEU7O0FrQzd6SUE7OztFQUdFLGNBQWM7RUFDZCxXQUFXO0FsQ2cwSWI7O0FrQzd6SUE7O0V4QmpISSwyQ1FtSDREO0VSbEg1RCw0Q1FrSDREO0FsQmkwSWhFOztBa0M5eklBOztFeEJ4R0ksK0NRcUc0RDtFUnBHNUQsOENRb0c0RDtBbEJ1MEloRTs7QWtDNXpJQTtFQUVJLG1CL0JtckJzRDtBSDJvSDFEOztBYzc1SUk7RW9CNkZKO0lBTUksYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixtQi9CNnFCc0Q7SStCNXFCdEQsa0IvQjRxQnNEO0VIbXBIeEQ7RWtDeDBJRjtJQWFNLFlBQVk7SUFDWixrQi9CdXFCb0Q7SStCdHFCcEQsZ0JBQWdCO0lBQ2hCLGlCL0JxcUJvRDtFSHlwSHhEO0FBQ0Y7O0FrQ3J6SUE7RUFJSSxtQi9CdXBCc0Q7QUg4cEgxRDs7QWNoN0lJO0VvQnVISjtJQVFJLGFBQWE7SUFDYixtQkFBbUI7RWxDc3pJckI7RWtDL3pJRjtJQWNNLFlBQVk7SUFDWixnQkFBZ0I7RWxDb3pJcEI7RWtDbjBJRjtJQWtCUSxjQUFjO0lBQ2QsY0FBYztFbENveklwQjtFa0N2MElGO0l4QmpKSSwwQndCMEtvQztJeEJ6S3BDLDZCd0J5S29DO0VsQ2t6SXRDO0VrQzMwSUY7O0lBOEJZLDBCQUEwQjtFbENpeklwQztFa0MvMElGOztJQW1DWSw2QkFBNkI7RWxDZ3pJdkM7RWtDbjFJRjtJeEJuSUkseUJ3QjJLbUM7SXhCMUtuQyw0QndCMEttQztFbEMreUlyQztFa0N2MUlGOztJQTZDWSx5QkFBeUI7RWxDOHlJbkM7RWtDMzFJRjs7SUFrRFksNEJBQTRCO0VsQzZ5SXRDO0FBQ0Y7O0FrQ2p5SUE7RUFFSSxzQi9CNGtCc0M7QUh1dEgxQzs7QWMzOUlJO0VvQnNMSjtJQU1JLG9CL0J5bEJpQztJK0J6bEJqQyxlL0J5bEJpQztJK0J4bEJqQyx3Qi9CeWxCdUM7SStCemxCdkMsbUIvQnlsQnVDO0krQnhsQnZDLFVBQVU7SUFDVixTQUFTO0VsQ295SVg7RWtDN3lJRjtJQVlNLHFCQUFxQjtJQUNyQixXQUFXO0VsQ295SWY7QUFDRjs7QWtDM3hJQTtFQUNFLHFCQUFxQjtBbEM4eEl2Qjs7QWtDL3hJQTtFQUlJLGdCQUFnQjtBbEMreElwQjs7QWtDbnlJQTtFQU9NLGdCQUFnQjtFeEJ2T2xCLDZCd0J3T2lDO0V4QnZPakMsNEJ3QnVPaUM7QWxDaXlJckM7O0FrQ3p5SUE7RXhCOU9JLHlCd0IwUDhCO0V4QnpQOUIsMEJ3QnlQOEI7QWxDa3lJbEM7O0FrQzl5SUE7RXhCdlBJLGdCd0J1UTBCO0VBQ3hCLG1CL0I5QzJCO0FIZzFJakM7O0FtQzVqSkE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLHFCaENpaUNzQztFZ0NoaUN0QyxtQmhDbWlDc0M7RWdDamlDdEMsZ0JBQWdCO0VBQ2hCLHlCaENFZ0I7RU9TZCxzQlA2TmdDO0FIdTFJcEM7O0FtQzNqSkE7RUFHSSxvQmhDdWhDcUM7QUhxaUh6Qzs7QW1DL2pKQTtFQU1NLFdBQVc7RUFDWCxxQmhDbWhDbUM7RWdDbGhDbkMsY2hDTlk7RWdDT1osWWhDd2hDdUM7QUhxaUg3Qzs7QW1DdGtKQTtFQW9CSSwwQkFBMEI7QW5Dc2pKOUI7O0FtQzFrSkE7RUF3QkkscUJBQXFCO0FuQ3NqSnpCOztBbUM5a0pBO0VBNEJJLGNoQzFCYztBSGdsSmxCOztBb0M3bEpBO0VBQ0UsYUFBYTtFN0JHYixlQUFlO0VBQ2YsZ0JBQWdCO0VHYWQsc0JQNk5nQztBSHEzSXBDOztBb0M5bEpBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCx1QmpDZ3hCd0M7RWlDL3dCeEMsaUJqQ2tPK0I7RWlDak8vQixpQmpDbXhCc0M7RWlDbHhCdEMsY2pDdUJlO0VpQ3JCZixzQmpDUGE7RWlDUWIseUJqQ0xnQjtBSHFtSmxCOztBb0N6bUpBO0VBWUksVUFBVTtFQUNWLGNqQzhKOEQ7RWlDN0o5RCxxQkFBcUI7RUFDckIseUJqQ1pjO0VpQ2FkLHFCakNaYztBSDZtSmxCOztBb0NqbkpBO0VBb0JJLFVBQVU7RUFDVixVakMyd0JpQztFaUMxd0JqQyxnRGpDT2E7QUgwbEpqQjs7QW9DN2xKQTtFQUdNLGNBQWM7RTFCYWhCLCtCUCtMZ0M7RU85TGhDLGtDUDhMZ0M7QUhvNUlwQzs7QW9Dbm1KQTtFMUJFSSxnQ1A2TWdDO0VPNU1oQyxtQ1A0TWdDO0FIeTVJcEM7O0FvQ3htSkE7RUFjSSxVQUFVO0VBQ1YsV2pDeENXO0VpQ3lDWCx5QmpDYmE7RWlDY2IscUJqQ2RhO0FING1KakI7O0FvQy9tSkE7RUFxQkksY2pDeENjO0VpQ3lDZCxvQkFBb0I7RUFFcEIsWUFBWTtFQUNaLHNCakNsRFc7RWlDbURYLHFCakNoRGM7QUg2b0psQjs7QXFDcHBKRTtFQUNFLHVCbEN5eEJzQztFQzlwQnBDLGtCQXRDWTtFaUNuRmQsZ0JsQ21PNkI7QUhvN0lqQzs7QXFDbHBKTTtFM0JxQ0YsOEJQZ00rQjtFTy9ML0IsaUNQK0wrQjtBSGs3SW5DOztBcUNscEpNO0UzQmtCRiwrQlA4TStCO0VPN00vQixrQ1A2TStCO0FIdTdJbkM7O0FxQ3BxSkU7RUFDRSx1QmxDdXhCcUM7RUM1cEJuQyxtQkF0Q1k7RWlDbkZkLGdCbENvTzZCO0FIbThJakM7O0FxQ2xxSk07RTNCcUNGLDhCUGlNK0I7RU9oTS9CLGlDUGdNK0I7QUhpOEluQzs7QXFDbHFKTTtFM0JrQkYsK0JQK00rQjtFTzlNL0Isa0NQOE0rQjtBSHM4SW5DOztBc0NsckpBO0VBQ0UscUJBQXFCO0VBQ3JCLHFCbkMwNUJzQztFQ3oxQnBDLGNBQVc7RWtDL0RiLGdCbkN1UitCO0VtQ3RSL0IsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsd0JBQXdCO0U1Qkt0QixzQlA2TmdDO0VpQi9OOUIscUlqQmdiNkk7QUhvd0luSjs7QW9CaHJKTTtFa0JmTjtJbEJnQlEsZ0JBQWdCO0VwQm9ySnRCO0FBQ0Y7O0FLMXJKRTtFaUNHSSxxQkFBcUI7QXRDMnJKM0I7O0FzQ3pzSkE7RUFvQkksYUFBYTtBdEN5ckpqQjs7QXNDcHJKQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0F0Q3VySlg7O0FzQ2hySkE7RUFDRSxvQm5DKzNCc0M7RW1DOTNCdEMsbUJuQzgzQnNDO0VPcjVCcEMsb0JQdzVCcUM7QUhtekh6Qzs7QXNDM3FKRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDaUNlO0FIK3JKakI7O0FLbHRKRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QXZDZ3VKeEM7O0F1Q251SlU7RUFRSixVQUFVO0VBQ1YsK0NwQ3NCVztBSHlzSmpCOztBc0MxckpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENXZ0I7QUhvdUpsQjs7QUtqdUpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBdkMrdUp4Qzs7QXVDbHZKVTtFQVFKLFVBQVU7RUFDVixpRHBDQVk7QUg4dUpsQjs7QXNDenNKRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDd0NlO0FIc3RKakI7O0FLaHZKRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QXZDOHZKeEM7O0F1Q2p3SlU7RUFRSixVQUFVO0VBQ1YsK0NwQzZCVztBSGd1SmpCOztBc0N4dEpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcEMwQ2U7QUhtdUpqQjs7QUsvdkpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBdkM2d0p4Qzs7QXVDaHhKVTtFQVFKLFVBQVU7RUFDVixnRHBDK0JXO0FINnVKakI7O0FzQ3Z1SkU7RUNqREEsY3BDZWdCO0VvQ2RoQix5QnBDdUNlO0FIcXZKakI7O0FLOXdKRTtFa0NWSSxjcENVWTtFb0NUWix5QkFBa0M7QXZDNHhKeEM7O0F1Qy94SlU7RUFRSixVQUFVO0VBQ1YsK0NwQzRCVztBSCt2SmpCOztBc0N0dkpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENxQ2U7QUhzd0pqQjs7QUs3eEpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBdkMyeUp4Qzs7QXVDOXlKVTtFQVFKLFVBQVU7RUFDViwrQ3BDMEJXO0FIZ3hKakI7O0FzQ3J3SkU7RUNqREEsY3BDZWdCO0VvQ2RoQix5QnBDTWdCO0FIb3pKbEI7O0FLNXlKRTtFa0NWSSxjcENVWTtFb0NUWix5QkFBa0M7QXZDMHpKeEM7O0F1Qzd6SlU7RUFRSixVQUFVO0VBQ1YsaURwQ0xZO0FIOHpKbEI7O0FzQ3B4SkU7RUNqREEsV3BDTWE7RW9DTGIseUJwQ2FnQjtBSDR6SmxCOztBSzN6SkU7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F2Q3kwSnhDOztBdUM1MEpVO0VBUUosVUFBVTtFQUNWLDhDcENFWTtBSHMwSmxCOztBd0NyMUpBO0VBQ0Usa0JBQW9EO0VBQ3BELG1CckN1ekJzQztFcUNyekJ0Qyx5QnJDS2dCO0VPU2QscUJQOE4rQjtBSDRtSm5DOztBY2h5Skk7RTBCNURKO0lBUUksa0JyQ2l6Qm9DO0VId2lJdEM7QUFDRjs7QXdDdDFKQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0U5QkliLGdCOEJIc0I7QXhDeTFKMUI7O0F5Q3AySkE7RUFDRSxrQkFBa0I7RUFDbEIsd0J0Q3U5QnlDO0VzQ3Q5QnpDLG1CdEN1OUJzQztFc0N0OUJ0Qyw2QkFBNkM7RS9CVTNDLHNCUDZOZ0M7QUhpb0pwQzs7QXlDbjJKQTtFQUVFLGNBQWM7QXpDcTJKaEI7O0F5Q2oySkE7RUFDRSxnQnRDNFErQjtBSHdsSmpDOztBeUM1MUpBO0VBQ0UsbUJBQXNEO0F6QysxSnhEOztBeUNoMkpBO0VBS0ksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsVUFBVTtFQUNWLHdCdEN3N0J1QztFc0N2N0J2QyxjQUFjO0F6QysxSmxCOztBeUNyMUpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJreUpsRTs7QTBDdDRKRTtFQUNFLHlCQUFxQztBMUN5NEp6Qzs7QTBDdDRKRTtFQUNFLGNBQTBCO0ExQ3k0SjlCOztBeUNuMkpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJnekpsRTs7QTBDcDVKRTtFQUNFLHlCQUFxQztBMUN1NUp6Qzs7QTBDcDVKRTtFQUNFLGNBQTBCO0ExQ3U1SjlCOztBeUNqM0pFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEI4ekpsRTs7QTBDbDZKRTtFQUNFLHlCQUFxQztBMUNxNkp6Qzs7QTBDbDZKRTtFQUNFLGNBQTBCO0ExQ3E2SjlCOztBeUMvM0pFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEI0MEpsRTs7QTBDaDdKRTtFQUNFLHlCQUFxQztBMUNtN0p6Qzs7QTBDaDdKRTtFQUNFLGNBQTBCO0ExQ203SjlCOztBeUM3NEpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEIwMUpsRTs7QTBDOTdKRTtFQUNFLHlCQUFxQztBMUNpOEp6Qzs7QTBDOTdKRTtFQUNFLGNBQTBCO0ExQ2k4SjlCOztBeUMzNUpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJ3MkpsRTs7QTBDNThKRTtFQUNFLHlCQUFxQztBMUMrOEp6Qzs7QTBDNThKRTtFQUNFLGNBQTBCO0ExQys4SjlCOztBeUN6NkpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJzM0psRTs7QTBDMTlKRTtFQUNFLHlCQUFxQztBMUM2OUp6Qzs7QTBDMTlKRTtFQUNFLGNBQTBCO0ExQzY5SjlCOztBeUN2N0pFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJvNEpsRTs7QTBDeCtKRTtFQUNFLHlCQUFxQztBMUMyK0p6Qzs7QTBDeCtKRTtFQUNFLGNBQTBCO0ExQzIrSjlCOztBMkNuL0pFO0VBQ0U7SUFBTywyQkFBdUM7RTNDdS9KaEQ7RTJDdC9KRTtJQUFLLHdCQUF3QjtFM0N5L0ovQjtBQUNGOztBMkM1L0pFO0VBQ0U7SUFBTywyQkFBdUM7RTNDdS9KaEQ7RTJDdC9KRTtJQUFLLHdCQUF3QjtFM0N5L0ovQjtBQUNGOztBMkN0L0pBO0VBQ0UsYUFBYTtFQUNiLFl4Q2crQnNDO0V3Qy85QnRDLGdCQUFnQjtFQUNoQixjQUFjO0V2Q21IVixrQkF0Q1k7RXVDM0VoQix5QnhDTGdCO0VPU2Qsc0JQNk5nQztBSHl4SnBDOztBMkNyL0pBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsZ0JBQWdCO0VBQ2hCLFd4Q2pCYTtFd0NrQmIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QnhDUWU7RWlCbkJYLDJCakJrK0I0QztBSGtpSWxEOztBb0JoZ0tNO0V1QkROO0l2QkVRLGdCQUFnQjtFcEJvZ0t0QjtBQUNGOztBMkMzL0pBO0VyQllFLHFNQUE2STtFcUJWN0ksMEJ4Q3k4QnNDO0FIcWpJeEM7O0EyQzEvSkU7RUFDRSwwREFBOEQ7RUFBOUQsa0RBQThEO0EzQzYvSmxFOztBMkMxL0pNO0VBSko7SUFLTSx1QkFBZTtJQUFmLGVBQWU7RTNDOC9KckI7QUFDRjs7QTRDemlLQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7QTVDNGlLekI7O0E0Q3ppS0E7RUFDRSxPQUFPO0E1QzRpS1Q7O0E2QzlpS0E7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBR3RCLGVBQWU7RUFDZixnQkFBZ0I7RW5DUWQsc0JQNk5nQztBSDIwSnBDOztBNkN0aUtBO0VBQ0UsV0FBVztFQUNYLGMxQ1JnQjtFMENTaEIsbUJBQW1CO0E3Q3lpS3JCOztBS2hqS0U7RXdDV0UsVUFBVTtFQUNWLGMxQ2RjO0UwQ2VkLHFCQUFxQjtFQUNyQix5QjFDdEJjO0FIK2pLbEI7O0E2Q25qS0E7RUFjSSxjMUNsQmM7RTBDbUJkLHlCMUMxQmM7QUhta0tsQjs7QTZDaGlLQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsd0IxQys4QnlDO0UwQzU4QnpDLHNCMUMzQ2E7RTBDNENiLHNDMUNsQ2E7QUhta0tmOztBNkN4aUtBO0VuQ2pCSSwrQm1DMkJrQztFbkMxQmxDLGdDbUMwQmtDO0E3Q21pS3RDOztBNkM3aUtBO0VuQ0hJLG1DbUNpQnFDO0VuQ2hCckMsa0NtQ2dCcUM7QTdDb2lLekM7O0E2Q2xqS0E7RUFtQkksYzFDbERjO0UwQ21EZCxvQkFBb0I7RUFDcEIsc0IxQzFEVztBSDZsS2Y7O0E2Q3hqS0E7RUEwQkksVUFBVTtFQUNWLFcxQ2hFVztFMENpRVgseUIxQ3JDYTtFMENzQ2IscUIxQ3RDYTtBSHdrS2pCOztBNkMvaktBO0VBaUNJLG1CQUFtQjtBN0NraUt2Qjs7QTZDbmtLQTtFQW9DTSxnQjFDNEoyQjtFMEMzSjNCLHFCMUMySjJCO0FIdzRKakM7O0E2Q3JoS0k7RUFDRSxtQkFBbUI7QTdDd2hLekI7O0E2Q3poS0k7RW5DdEJBLGtDUHNLZ0M7RU9sTGhDLDBCbUN3Q3dDO0E3Q3doSzVDOztBNkM5aEtJO0VuQ2xDQSxnQ1BrTGdDO0VPdEtoQyw0Qm1DaUMwQztBN0N3aEs5Qzs7QTZDbmlLSTtFQWVNLGFBQWE7QTdDd2hLdkI7O0E2Q3ZpS0k7RUFtQk0scUIxQzBIdUI7RTBDekh2QixvQkFBb0I7QTdDd2hLOUI7O0E2QzVpS0k7RUF1QlEsaUIxQ3NIcUI7RTBDckhyQixzQjFDcUhxQjtBSG82SmpDOztBY3BsS0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U3Q3FqS3ZCO0U2Q3RqS0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U3Q29qSzFDO0U2QzFqS0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U3Q21qSzVDO0U2QzlqS0U7SUFlTSxhQUFhO0U3Q2tqS3JCO0U2Q2prS0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTdDaWpLNUI7RTZDcmtLRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VINDdKL0I7QUFDRjs7QWM3bUtJO0UrQm1DQTtJQUNFLG1CQUFtQjtFN0M4a0t2QjtFNkMva0tFO0luQ3RCQSxrQ1BzS2dDO0lPbExoQywwQm1Dd0N3QztFN0M2a0sxQztFNkNubEtFO0luQ2xDQSxnQ1BrTGdDO0lPdEtoQyw0Qm1DaUMwQztFN0M0a0s1QztFNkN2bEtFO0lBZU0sYUFBYTtFN0Mya0tyQjtFNkMxbEtFO0lBbUJNLHFCMUMwSHVCO0kwQ3pIdkIsb0JBQW9CO0U3QzBrSzVCO0U2QzlsS0U7SUF1QlEsaUIxQ3NIcUI7STBDckhyQixzQjFDcUhxQjtFSHE5Si9CO0FBQ0Y7O0FjdG9LSTtFK0JtQ0E7SUFDRSxtQkFBbUI7RTdDdW1LdkI7RTZDeG1LRTtJbkN0QkEsa0NQc0tnQztJT2xMaEMsMEJtQ3dDd0M7RTdDc21LMUM7RTZDNW1LRTtJbkNsQ0EsZ0NQa0xnQztJT3RLaEMsNEJtQ2lDMEM7RTdDcW1LNUM7RTZDaG5LRTtJQWVNLGFBQWE7RTdDb21LckI7RTZDbm5LRTtJQW1CTSxxQjFDMEh1QjtJMEN6SHZCLG9CQUFvQjtFN0NtbUs1QjtFNkN2bktFO0lBdUJRLGlCMUNzSHFCO0kwQ3JIckIsc0IxQ3FIcUI7RUg4K0ovQjtBQUNGOztBYy9wS0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U3Q2dvS3ZCO0U2Q2pvS0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U3QytuSzFDO0U2Q3JvS0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U3QzhuSzVDO0U2Q3pvS0U7SUFlTSxhQUFhO0U3QzZuS3JCO0U2QzVvS0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTdDNG5LNUI7RTZDaHBLRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VIdWdLL0I7QUFDRjs7QTZDL21LQTtFbkNuSEksZ0JtQ29Ic0I7QTdDa25LMUI7O0E2Q25uS0E7RUFJSSxxQjFDbUc2QjtBSGdoS2pDOztBNkN2bktBO0VBT00sc0JBQXNCO0E3Q29uSzVCOztBOEM3dktFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FsQjRwS2xFOztBS3J2S0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBOUNnd0tqRDs7QThDdndLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QWxCdXFLbEU7O0E4Qzd3S0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QWxCNHFLbEU7O0FLcndLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0E5Q2d4S2pEOztBOEN2eEtFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbEJ1cktsRTs7QThDN3hLRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbEI0cktsRTs7QUtyeEtFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QTlDZ3lLakQ7O0E4Q3Z5S0U7RUFXTSxXM0NQTztFMkNRUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FsQnVzS2xFOztBOEM3eUtFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FsQjRzS2xFOztBS3J5S0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBOUNnektqRDs7QThDdnpLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QWxCdXRLbEU7O0E4Qzd6S0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QWxCNHRLbEU7O0FLcnpLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0E5Q2cwS2pEOztBOEN2MEtFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbEJ1dUtsRTs7QThDNzBLRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbEI0dUtsRTs7QUtyMEtFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QTlDZzFLakQ7O0E4Q3YxS0U7RUFXTSxXM0NQTztFMkNRUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FsQnV2S2xFOztBOEM3MUtFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FsQjR2S2xFOztBS3IxS0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBOUNnMktqRDs7QThDdjJLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QWxCdXdLbEU7O0E4QzcyS0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QWxCNHdLbEU7O0FLcjJLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0E5Q2czS2pEOztBOEN2M0tFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbEJ1eEtsRTs7QStDaDRLQTtFQUNFLFlBQVk7RTNDOEhSLGlCQXRDWTtFMkN0RmhCLGdCNUM2UitCO0U0QzVSL0IsY0FBYztFQUNkLFc1Q1lhO0U0Q1hiLHlCNUNDYTtFNENBYixXQUFXO0EvQ200S2I7O0FLOTNLRTtFMENERSxXNUNNVztFNENMWCxxQkFBcUI7QS9DbTRLekI7O0FLLzNLRTtFMENDSSxZQUFZO0EvQ2s0S2xCOztBK0N2M0tBO0VBQ0UsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTO0EvQzAzS1g7O0ErQ3AzS0E7RUFDRSxvQkFBb0I7QS9DdTNLdEI7O0FnRDc1S0E7RUFHRSxpQjdDeTRCdUM7RTZDeDRCdkMsZ0I3Q3c0QnVDO0VDN3dCbkMsbUJBdENZO0U0Q2xGaEIsMkM3Q0FhO0U2Q0NiLDRCQUE0QjtFQUM1QixvQzdDMDRCbUQ7RTZDejRCbkQsZ0Q3Q09hO0U2Q05iLFVBQVU7RXRDT1Isc0JQazRCc0M7QUhxaEoxQzs7QWdEejZLQTtFQWVJLHNCN0M4M0JzQztBSGdpSjFDOztBZ0Q3NktBO0VBbUJJLFVBQVU7QWhEODVLZDs7QWdEajdLQTtFQXVCSSxjQUFjO0VBQ2QsVUFBVTtBaEQ4NUtkOztBZ0R0N0tBO0VBNEJJLGFBQWE7QWhEODVLakI7O0FnRDE1S0E7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHdCN0MwMkJ3QztFNkN6MkJ4QyxjN0N2QmdCO0U2Q3dCaEIsMkM3QzlCYTtFNkMrQmIsNEJBQTRCO0VBQzVCLDRDN0NrM0JvRDtFTzkzQmxELDJDUW1INEQ7RVJsSDVELDRDUWtINEQ7QWxCd3pLaEU7O0FnRDM1S0E7RUFDRSxnQjdDaTJCd0M7QUg2akoxQzs7QWlEcDhLQTtFQUVFLGdCQUFnQjtBakRzOEtsQjs7QWlEeDhLQTtFQUtJLGtCQUFrQjtFQUNsQixnQkFBZ0I7QWpEdThLcEI7O0FpRGw4S0E7RUFDRSxlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxhOUMycEJzQztFOEMxcEJ0QyxhQUFhO0VBQ2IsV0FBVztFQUNYLFlBQVk7RUFDWixnQkFBZ0I7RUFHaEIsVUFBVTtBakRtOEtaOztBaUQ1N0tBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxjOUMrNEJ1QztFOEM3NEJ2QyxvQkFBb0I7QWpEODdLdEI7O0FpRDM3S0U7RTdCM0JJLG1DakJvOEJvRDtFOEN2NkJ0RCw4QjlDcTZCbUQ7QUh5aEp2RDs7QW9CdjlLTTtFNkJ1Qko7STdCdEJNLGdCQUFnQjtFcEIyOUt0QjtBQUNGOztBaURsOEtFO0VBQ0UsZTlDbTZCb0M7QUhraUp4Qzs7QWlEajhLRTtFQUNFLHNCOUNnNkIyQztBSG9pSi9DOztBaURoOEtBO0VBQ0UsYUFBYTtFQUNiLDZCL0JtRjhEO0FsQmczS2hFOztBaURyOEtBO0VBS0ksOEIvQmdGNEQ7RStCL0U1RCxnQkFBZ0I7QWpEbzhLcEI7O0FpRDE4S0E7O0VBV0ksY0FBYztBakRvOEtsQjs7QWlELzhLQTtFQWVJLGdCQUFnQjtBakRvOEtwQjs7QWlEaDhLQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsNkIvQitEOEQ7QWxCbzRLaEU7O0FpRHQ4S0E7RUFPSSxjQUFjO0VBQ2QsMEIvQjBENEQ7RStCekQ1RCwyQkFBbUI7RUFBbkIsd0JBQW1CO0VBQW5CLG1CQUFtQjtFQUNuQixXQUFXO0FqRG04S2Y7O0FpRDc4S0E7RUFlSSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLFlBQVk7QWpEazhLaEI7O0FpRG45S0E7RUFvQk0sZ0JBQWdCO0FqRG04S3RCOztBaUR2OUtBO0VBd0JNLGFBQWE7QWpEbThLbkI7O0FpRDc3S0E7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixXQUFXO0VBR1gsb0JBQW9CO0VBQ3BCLHNCOUMzR2E7RThDNEdiLDRCQUE0QjtFQUM1QixvQzlDbkdhO0VPQ1gscUJQOE4rQjtFOEN4SGpDLFVBQVU7QWpENDdLWjs7QWlEeDdLQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLGE5QytpQnNDO0U4QzlpQnRDLFlBQVk7RUFDWixhQUFhO0VBQ2Isc0I5Q2xIYTtBSDZpTGY7O0FpRGw4S0E7RUFVVyxVQUFVO0FqRDQ3S3JCOztBaUR0OEtBO0VBV1csWTlDNnpCMkI7QUhrb0p0Qzs7QWlEMTdLQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsOEJBQThCO0VBQzlCLGtCOUMwekJzQztFOEN6ekJ0QyxnQzlDdklnQjtFT2lCZCwwQ1FtSDREO0VSbEg1RCwyQ1FrSDREO0FsQms4S2hFOztBaURwOEtBO0VBU0ksa0I5Q3F6Qm9DO0U4Q256QnBDLDhCQUE2RjtBakQ4N0tqRzs7QWlEejdLQTtFQUNFLGdCQUFnQjtFQUNoQixnQjlDc0krQjtBSHN6S2pDOztBaUR2N0tBO0VBQ0Usa0JBQWtCO0VBR2xCLGNBQWM7RUFDZCxhOUN3d0JzQztBSGdySnhDOztBaURwN0tBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGdCQUFnRTtFQUNoRSw2QjlDeEtnQjtFTytCZCw4Q1FxRzREO0VScEc1RCw2Q1FvRzREO0FsQjY5S2hFOztBaUQvN0tBO0VBYUksZUFBd0M7QWpEczdLNUM7O0FpRGo3S0E7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxZQUFZO0VBQ1osZ0JBQWdCO0FqRG83S2xCOztBYzNqTEk7RW1DekJKO0lBdUtJLGdCOUNxd0JxQztJOENwd0JyQyxvQkFBeUM7RWpEazdLM0M7RWlEcGtMRjtJQXNKSSwrQi9CakU0RDtFbEJrL0s5RDtFaUR2a0xGO0lBeUpNLGdDL0JwRTBEO0VsQnEvSzlEO0VpRHZqTEY7SUEySUksK0IvQnpFNEQ7RWxCdy9LOUQ7RWlEMWpMRjtJQThJTSw0Qi9CNUUwRDtJK0I2RTFELDJCQUFtQjtJQUFuQix3QkFBbUI7SUFBbkIsbUJBQW1CO0VqRCs2S3ZCO0VpRHY2S0E7SUFBWSxnQjlDNnVCMkI7RUg2ckp2QztBQUNGOztBY2xsTEk7RW1DMktGOztJQUVFLGdCOUNxdUJxQztFSHNzSnZDO0FBQ0Y7O0FjemxMSTtFbUNrTEY7SUFBWSxpQjlDK3RCNEI7RUg2c0p4QztBQUNGOztBa0QxcExBO0VBQ0Usa0JBQWtCO0VBQ2xCLGEvQytxQnNDO0UrQzlxQnRDLGNBQWM7RUFDZCxTL0MyMUJtQztFZ0QvMUJuQyxxTmhEbVJvTztFZ0RqUnBPLGtCQUFrQjtFQUNsQixnQmhEMlIrQjtFZ0QxUi9CLGdCaEQrUitCO0VnRDlSL0IsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsZ0JBQWdCO0UvQ2dIWixtQkF0Q1k7RThDOUVoQixxQkFBcUI7RUFDckIsVUFBVTtBbER1cUxaOztBa0RsckxBO0VBYVcsWS9DKzBCMkI7QUgwMUp0Qzs7QWtEdHJMQTtFQWdCSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGEvQyswQnFDO0UrQzkwQnJDLGMvQyswQnFDO0FIMjFKekM7O0FrRDdyTEE7RUFzQk0sa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCx5QkFBeUI7RUFDekIsbUJBQW1CO0FsRDJxTHpCOztBa0R0cUxBO0VBQ0UsaUJBQWdDO0FsRHlxTGxDOztBa0QxcUxBO0VBSUksU0FBUztBbEQwcUxiOztBa0Q5cUxBO0VBT00sTUFBTTtFQUNOLDZCQUFnRTtFQUNoRSxzQi9DdkJTO0FIa3NMZjs7QWtEdHFMQTtFQUNFLGlCL0NxekJ1QztBSG8zSnpDOztBa0QxcUxBO0VBSUksT0FBTztFQUNQLGEvQ2l6QnFDO0UrQ2h6QnJDLGMvQyt5QnFDO0FIMjNKekM7O0FrRGhyTEE7RUFTTSxRQUFRO0VBQ1Isb0NBQTJGO0VBQzNGLHdCL0N2Q1M7QUhrdExmOztBa0R0cUxBO0VBQ0UsaUJBQWdDO0FsRHlxTGxDOztBa0QxcUxBO0VBSUksTUFBTTtBbEQwcUxWOztBa0Q5cUxBO0VBT00sU0FBUztFQUNULDZCL0M4eEJtQztFK0M3eEJuQyx5Qi9DckRTO0FIZ3VMZjs7QWtEdHFMQTtFQUNFLGlCL0N1eEJ1QztBSGs1SnpDOztBa0QxcUxBO0VBSUksUUFBUTtFQUNSLGEvQ214QnFDO0UrQ2x4QnJDLGMvQ2l4QnFDO0FIeTVKekM7O0FrRGhyTEE7RUFTTSxPQUFPO0VBQ1Asb0MvQzh3Qm1DO0UrQzd3Qm5DLHVCL0NyRVM7QUhndkxmOztBa0R0cExBO0VBQ0UsZ0IvQzZ1QnVDO0UrQzV1QnZDLHVCL0NrdkJ1QztFK0NqdkJ2QyxXL0N2R2E7RStDd0diLGtCQUFrQjtFQUNsQixzQi9DL0ZhO0VPQ1gsc0JQNk5nQztBSDJoTHBDOztBb0Qxd0xBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsYWpENnFCc0M7RWlENXFCdEMsY0FBYztFQUNkLGdCakQ2MkJ1QztFZ0RsM0J2QyxxTmhEbVJvTztFZ0RqUnBPLGtCQUFrQjtFQUNsQixnQmhEMlIrQjtFZ0QxUi9CLGdCaEQrUitCO0VnRDlSL0IsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsZ0JBQWdCO0UvQ2dIWixtQkF0Q1k7RWdEN0VoQixxQkFBcUI7RUFDckIsc0JqRE5hO0VpRE9iLDRCQUE0QjtFQUM1QixvQ2pERWE7RU9DWCxxQlA4TitCO0FIdWpMbkM7O0FvRHZ5TEE7RUFvQkksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxXakQ2MkJvQztFaUQ1MkJwQyxjakQ2MkJxQztFaUQ1MkJyQyxnQmpEd04rQjtBSCtqTG5DOztBb0QveUxBO0VBNEJNLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLHlCQUF5QjtFQUN6QixtQkFBbUI7QXBEdXhMekI7O0FvRGx4TEE7RUFDRSxxQmpEODFCdUM7QUh1N0p6Qzs7QW9EdHhMQTtFQUlJLDJCbENxRzREO0FsQmlyTGhFOztBb0QxeExBO0VBT00sU0FBUztFQUNULDZCQUFnRTtFQUNoRSxxQ2pEeTFCaUU7QUg4N0p2RTs7QW9EaHlMQTtFQWFNLFdqRDBMMkI7RWlEekwzQiw2QkFBZ0U7RUFDaEUsc0JqRDdDUztBSG8wTGY7O0FvRGx4TEE7RUFDRSxtQmpEMDBCdUM7QUgyOEp6Qzs7QW9EdHhMQTtFQUlJLHlCbENpRjREO0VrQ2hGNUQsYWpEczBCcUM7RWlEcjBCckMsWWpEbzBCb0M7RWlEbjBCcEMsZ0JBQWdDO0FwRHN4THBDOztBb0Q3eExBO0VBVU0sT0FBTztFQUNQLG9DQUEyRjtFQUMzRix1Q2pEazBCaUU7QUhxOUp2RTs7QW9EbnlMQTtFQWdCTSxTakRtSzJCO0VpRGxLM0Isb0NBQTJGO0VBQzNGLHdCakRwRVM7QUgyMUxmOztBb0RseExBO0VBQ0Usa0JqRG16QnVDO0FIaytKekM7O0FvRHR4TEE7RUFJSSx3QmxDMEQ0RDtBbEI0dExoRTs7QW9EMXhMQTtFQU9NLE1BQU07RUFDTixvQ0FBMkY7RUFDM0Ysd0NqRDh5QmlFO0FIeStKdkU7O0FvRGh5TEE7RUFhTSxRakQrSTJCO0VpRDlJM0Isb0NBQTJGO0VBQzNGLHlCakR4RlM7QUgrMkxmOztBb0R0eUxBO0VBcUJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULGNBQWM7RUFDZCxXakQweEJvQztFaUR6eEJwQyxvQkFBc0M7RUFDdEMsV0FBVztFQUNYLGdDakQ4d0J1RDtBSHVnSzNEOztBb0RqeExBO0VBQ0Usb0JqRG14QnVDO0FIaWdLekM7O0FvRHJ4TEE7RUFJSSwwQmxDMEI0RDtFa0N6QjVELGFqRCt3QnFDO0VpRDl3QnJDLFlqRDZ3Qm9DO0VpRDV3QnBDLGdCQUFnQztBcERxeExwQzs7QW9ENXhMQTtFQVVNLFFBQVE7RUFDUixvQ2pEeXdCbUM7RWlEeHdCbkMsc0NqRDJ3QmlFO0FIMmdLdkU7O0FvRGx5TEE7RUFnQk0sVWpENEcyQjtFaUQzRzNCLG9DakRtd0JtQztFaURsd0JuQyx1QmpEM0hTO0FIaTVMZjs7QW9EaHdMQTtFQUNFLHVCakRvdUJ3QztFaURudUJ4QyxnQkFBZ0I7RWhEM0JaLGVBdENZO0VnRG9FaEIseUJqRDZ0QnlEO0VpRDV0QnpELGdDQUF5RTtFMUNuSXZFLDBDUW1INEQ7RVJsSDVELDJDUWtINEQ7QWxCb3hMaEU7O0FvRDF3TEE7RUFVSSxhQUFhO0FwRG93TGpCOztBb0Rod0xBO0VBQ0UsdUJqRHN0QndDO0VpRHJ0QnhDLGNqRHhKZ0I7QUgyNUxsQjs7QXFEOTVMQTtFQUNFLGtCQUFrQjtBckRpNkxwQjs7QXFEOTVMQTtFQUNFLG1CQUFtQjtBckRpNkxyQjs7QXFEOTVMQTtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsZ0JBQWdCO0FyRGk2TGxCOztBc0R4N0xFO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F0RDI3TGY7O0FxRG42TEE7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLFdBQVc7RUFDWCxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLG1DQUEyQjtFQUEzQiwyQkFBMkI7RWpDbEJ2QixzQ2pCeWpDa0Y7QUhnNEp4Rjs7QW9CcjdMTTtFaUNRTjtJakNQUSxnQkFBZ0I7RXBCeTdMdEI7QUFDRjs7QXFEejZMQTs7O0VBR0UsY0FBYztBckQ0NkxoQjs7QXFEejZMQTs7RUFFRSwyQkFBMkI7QXJENDZMN0I7O0FxRHo2TEE7O0VBRUUsNEJBQTRCO0FyRDQ2TDlCOztBcURwNkxBO0VBRUksVUFBVTtFQUNWLDRCQUE0QjtFQUM1QixlQUFlO0FyRHM2TG5COztBcUQxNkxBOzs7RUFVSSxVQUFVO0VBQ1YsVUFBVTtBckRzNkxkOztBcURqN0xBOztFQWdCSSxVQUFVO0VBQ1YsVUFBVTtFakM1RFIsMkJqQndqQ2tDO0FIMjZKeEM7O0FvQi85TE07RWlDdUNOOztJakN0Q1EsZ0JBQWdCO0VwQm8rTHRCO0FBQ0Y7O0FxRHA2TEE7O0VBRUUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsVUFBVTtFQUVWLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLFVsRG85QnNDO0VrRG45QnRDLFdsRDFGYTtFa0QyRmIsa0JBQWtCO0VBQ2xCLFlsRGs5QnFDO0VpQnJpQ2pDLDhCakJ1aUNnRDtBSG05SnREOztBb0J0L0xNO0VpQ2tFTjs7SWpDakVRLGdCQUFnQjtFcEIyL0x0QjtBQUNGOztBS2pnTUU7OztFZ0R3RkUsV2xEakdXO0VrRGtHWCxxQkFBcUI7RUFDckIsVUFBVTtFQUNWLFlsRDI4Qm1DO0FIbytKdkM7O0FxRDU2TEE7RUFDRSxPQUFPO0FyRCs2TFQ7O0FxRDE2TEE7RUFDRSxRQUFRO0FyRDY2TFY7O0FxRHQ2TEE7O0VBRUUscUJBQXFCO0VBQ3JCLFdsRG84QnVDO0VrRG44QnZDLFlsRG04QnVDO0VrRGw4QnZDLHFDQUFxQztBckR5Nkx2Qzs7QXFEdjZMQTtFQUNFLHNObkN2RWdGO0FsQmkvTGxGOztBcUR4NkxBO0VBQ0UsdU5uQzFFZ0Y7QWxCcS9MbEY7O0FxRGw2TEE7RUFDRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsZUFBZTtFQUVmLGlCbEQwNUJzQztFa0R6NUJ0QyxnQmxEeTVCc0M7RWtEeDVCdEMsZ0JBQWdCO0FyRG82TGxCOztBcURoN0xBO0VBZUksdUJBQXVCO0VBQ3ZCLGNBQWM7RUFDZCxXbER3NUJxQztFa0R2NUJyQyxXbER3NUJvQztFa0R2NUJwQyxpQmxEeTVCb0M7RWtEeDVCcEMsZ0JsRHc1Qm9DO0VrRHY1QnBDLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2Ysc0JsRGhLVztFa0RpS1gsNEJBQTRCO0VBRTVCLGtDQUFpRTtFQUNqRSxxQ0FBb0U7RUFDcEUsV0FBVztFakM1SlQsNkJqQjhpQytDO0FIbWhLckQ7O0FvQjdqTU07RWlDNEhOO0lqQzNIUSxnQkFBZ0I7RXBCaWtNdEI7QUFDRjs7QXFEdjhMQTtFQWlDSSxVQUFVO0FyRDA2TGQ7O0FxRGo2TEE7RUFDRSxrQkFBa0I7RUFDbEIsVUFBMkM7RUFDM0MsWUFBWTtFQUNaLFNBQTBDO0VBQzFDLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLFdsRDNMYTtFa0Q0TGIsa0JBQWtCO0FyRG82THBCOztBdURubU1BO0VBQ0U7SUFBSyx5QkFBeUI7RXZEdW1NOUI7QUFDRjs7QXVEem1NQTtFQUNFO0lBQUsseUJBQXlCO0V2RHVtTTlCO0FBQ0Y7O0F1RHJtTUE7RUFDRSxxQkFBcUI7RUFDckIsV3BEb2tDMEI7RW9EbmtDMUIsWXBEbWtDMEI7RW9EbGtDMUIsMkJBQTJCO0VBQzNCLGlDQUFnRDtFQUNoRCwrQkFBK0I7RUFFL0Isa0JBQWtCO0VBQ2xCLHNEQUE4QztFQUE5Qyw4Q0FBOEM7QXZEdW1NaEQ7O0F1RHBtTUE7RUFDRSxXcEQ2akM0QjtFb0Q1akM1QixZcEQ0akM0QjtFb0QzakM1QixtQnBENmpDNEI7QUgwaUs5Qjs7QXVEaG1NQTtFQUNFO0lBQ0UsbUJBQW1CO0V2RG1tTXJCO0V1RGptTUE7SUFDRSxVQUFVO0lBQ1YsZUFBZTtFdkRtbU1qQjtBQUNGOztBdUQxbU1BO0VBQ0U7SUFDRSxtQkFBbUI7RXZEbW1NckI7RXVEam1NQTtJQUNFLFVBQVU7SUFDVixlQUFlO0V2RG1tTWpCO0FBQ0Y7O0F1RGhtTUE7RUFDRSxxQkFBcUI7RUFDckIsV3BEb2lDMEI7RW9EbmlDMUIsWXBEbWlDMEI7RW9EbGlDMUIsMkJBQTJCO0VBQzNCLDhCQUE4QjtFQUU5QixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLG9EQUE0QztFQUE1Qyw0Q0FBNEM7QXZEa21NOUM7O0F1RC9sTUE7RUFDRSxXcEQ2aEM0QjtFb0Q1aEM1QixZcEQ0aEM0QjtBSHNrSzlCOztBdUQ5bE1FO0VBQ0U7O0lBRUUsZ0NBQXdCO0lBQXhCLHdCQUF3QjtFdkRpbU01QjtBQUNGOztBd0Q3cE1BO0VBQXFCLG1DQUFtQztBeERpcU14RDs7QXdEaHFNQTtFQUFxQiw4QkFBOEI7QXhEb3FNbkQ7O0F3RG5xTUE7RUFBcUIsaUNBQWlDO0F4RHVxTXREOztBd0R0cU1BO0VBQXFCLGlDQUFpQztBeEQwcU10RDs7QXdEenFNQTtFQUFxQixzQ0FBc0M7QXhENnFNM0Q7O0F3RDVxTUE7RUFBcUIsbUNBQW1DO0F4RGdyTXhEOztBeURsck1FO0VBQ0Usb0NBQW1DO0F6RHFyTXZDOztBSzNxTUU7OztFb0RMSSxvQ0FBZ0Q7QXpEc3JNdEQ7O0F5RDVyTUU7RUFDRSxvQ0FBbUM7QXpEK3JNdkM7O0FLcnJNRTs7O0VvRExJLG9DQUFnRDtBekRnc010RDs7QXlEdHNNRTtFQUNFLG9DQUFtQztBekR5c012Qzs7QUsvck1FOzs7RW9ETEksb0NBQWdEO0F6RDBzTXREOztBeURodE1FO0VBQ0Usb0NBQW1DO0F6RG10TXZDOztBS3pzTUU7OztFb0RMSSxvQ0FBZ0Q7QXpEb3RNdEQ7O0F5RDF0TUU7RUFDRSxvQ0FBbUM7QXpENnRNdkM7O0FLbnRNRTs7O0VvRExJLG9DQUFnRDtBekQ4dE10RDs7QXlEcHVNRTtFQUNFLG9DQUFtQztBekR1dU12Qzs7QUs3dE1FOzs7RW9ETEksb0NBQWdEO0F6RHd1TXREOztBeUQ5dU1FO0VBQ0Usb0NBQW1DO0F6RGl2TXZDOztBS3Z1TUU7OztFb0RMSSxvQ0FBZ0Q7QXpEa3ZNdEQ7O0F5RHh2TUU7RUFDRSxvQ0FBbUM7QXpEMnZNdkM7O0FLanZNRTs7O0VvRExJLG9DQUFnRDtBekQ0dk10RDs7QTBEM3ZNQTtFQUNFLGlDQUFtQztBMUQ4dk1yQzs7QTBEM3ZNQTtFQUNFLHdDQUF3QztBMUQ4dk0xQzs7QTJEendNQTtFQUFrQixvQ0FBb0Q7QTNENndNdEU7O0EyRDV3TUE7RUFBa0Isd0NBQXdEO0EzRGd4TTFFOztBMkQvd01BO0VBQWtCLDBDQUEwRDtBM0RteE01RTs7QTJEbHhNQTtFQUFrQiwyQ0FBMkQ7QTNEc3hNN0U7O0EyRHJ4TUE7RUFBa0IseUNBQXlEO0EzRHl4TTNFOztBMkR2eE1BO0VBQW1CLG9CQUFvQjtBM0QyeE12Qzs7QTJEMXhNQTtFQUFtQix3QkFBd0I7QTNEOHhNM0M7O0EyRDd4TUE7RUFBbUIsMEJBQTBCO0EzRGl5TTdDOztBMkRoeU1BO0VBQW1CLDJCQUEyQjtBM0RveU05Qzs7QTJEbnlNQTtFQUFtQix5QkFBeUI7QTNEdXlNNUM7O0EyRHB5TUU7RUFDRSxnQ0FBK0I7QTNEdXlNbkM7O0EyRHh5TUU7RUFDRSxnQ0FBK0I7QTNEMnlNbkM7O0EyRDV5TUU7RUFDRSxnQ0FBK0I7QTNEK3lNbkM7O0EyRGh6TUU7RUFDRSxnQ0FBK0I7QTNEbXpNbkM7O0EyRHB6TUU7RUFDRSxnQ0FBK0I7QTNEdXpNbkM7O0EyRHh6TUU7RUFDRSxnQ0FBK0I7QTNEMnpNbkM7O0EyRDV6TUU7RUFDRSxnQ0FBK0I7QTNEK3pNbkM7O0EyRGgwTUU7RUFDRSxnQ0FBK0I7QTNEbTBNbkM7O0EyRC96TUE7RUFDRSw2QkFBK0I7QTNEazBNakM7O0EyRDN6TUE7RUFDRSxnQ0FBMkM7QTNEOHpNN0M7O0EyRDN6TUE7RUFDRSxpQ0FBd0M7QTNEOHpNMUM7O0EyRDN6TUE7RUFDRSwwQ0FBaUQ7RUFDakQsMkNBQWtEO0EzRDh6TXBEOztBMkQzek1BO0VBQ0UsMkNBQWtEO0VBQ2xELDhDQUFxRDtBM0Q4ek12RDs7QTJEM3pNQTtFQUNFLDhDQUFxRDtFQUNyRCw2Q0FBb0Q7QTNEOHpNdEQ7O0EyRDN6TUE7RUFDRSwwQ0FBaUQ7RUFDakQsNkNBQW9EO0EzRDh6TXREOztBMkQzek1BO0VBQ0UsZ0NBQTJDO0EzRDh6TTdDOztBMkQzek1BO0VBQ0UsNkJBQTZCO0EzRDh6TS9COztBMkQzek1BO0VBQ0UsK0JBQXVDO0EzRDh6TXpDOztBMkQzek1BO0VBQ0UsMkJBQTJCO0EzRDh6TTdCOztBc0R0NE1FO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F0RHk0TWY7O0E0RGw0TU07RUFBd0Isd0JBQTBCO0E1RHM0TXhEOztBNER0NE1NO0VBQXdCLDBCQUEwQjtBNUQwNE14RDs7QTREMTRNTTtFQUF3QixnQ0FBMEI7QTVEODRNeEQ7O0E0RDk0TU07RUFBd0IseUJBQTBCO0E1RGs1TXhEOztBNERsNU1NO0VBQXdCLHlCQUEwQjtBNURzNU14RDs7QTREdDVNTTtFQUF3Qiw2QkFBMEI7QTVEMDVNeEQ7O0E0RDE1TU07RUFBd0IsOEJBQTBCO0E1RDg1TXhEOztBNEQ5NU1NO0VBQXdCLHdCQUEwQjtBNURrNk14RDs7QTREbDZNTTtFQUF3QiwrQkFBMEI7QTVEczZNeEQ7O0FjcjNNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RDI2TXREO0U0RDM2TUk7SUFBd0IsMEJBQTBCO0U1RDg2TXREO0U0RDk2TUk7SUFBd0IsZ0NBQTBCO0U1RGk3TXREO0U0RGo3TUk7SUFBd0IseUJBQTBCO0U1RG83TXREO0U0RHA3TUk7SUFBd0IseUJBQTBCO0U1RHU3TXREO0U0RHY3TUk7SUFBd0IsNkJBQTBCO0U1RDA3TXREO0U0RDE3TUk7SUFBd0IsOEJBQTBCO0U1RDY3TXREO0U0RDc3TUk7SUFBd0Isd0JBQTBCO0U1RGc4TXREO0U0RGg4TUk7SUFBd0IsK0JBQTBCO0U1RG04TXREO0FBQ0Y7O0FjbjVNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RHk4TXREO0U0RHo4TUk7SUFBd0IsMEJBQTBCO0U1RDQ4TXREO0U0RDU4TUk7SUFBd0IsZ0NBQTBCO0U1RCs4TXREO0U0RC84TUk7SUFBd0IseUJBQTBCO0U1RGs5TXREO0U0RGw5TUk7SUFBd0IseUJBQTBCO0U1RHE5TXREO0U0RHI5TUk7SUFBd0IsNkJBQTBCO0U1RHc5TXREO0U0RHg5TUk7SUFBd0IsOEJBQTBCO0U1RDI5TXREO0U0RDM5TUk7SUFBd0Isd0JBQTBCO0U1RDg5TXREO0U0RDk5TUk7SUFBd0IsK0JBQTBCO0U1RGkrTXREO0FBQ0Y7O0FjajdNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RHUrTXREO0U0RHYrTUk7SUFBd0IsMEJBQTBCO0U1RDArTXREO0U0RDErTUk7SUFBd0IsZ0NBQTBCO0U1RDYrTXREO0U0RDcrTUk7SUFBd0IseUJBQTBCO0U1RGcvTXREO0U0RGgvTUk7SUFBd0IseUJBQTBCO0U1RG0vTXREO0U0RG4vTUk7SUFBd0IsNkJBQTBCO0U1RHMvTXREO0U0RHQvTUk7SUFBd0IsOEJBQTBCO0U1RHkvTXREO0U0RHovTUk7SUFBd0Isd0JBQTBCO0U1RDQvTXREO0U0RDUvTUk7SUFBd0IsK0JBQTBCO0U1RCsvTXREO0FBQ0Y7O0FjLzhNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RHFnTnREO0U0RHJnTkk7SUFBd0IsMEJBQTBCO0U1RHdnTnREO0U0RHhnTkk7SUFBd0IsZ0NBQTBCO0U1RDJnTnREO0U0RDNnTkk7SUFBd0IseUJBQTBCO0U1RDhnTnREO0U0RDlnTkk7SUFBd0IseUJBQTBCO0U1RGloTnREO0U0RGpoTkk7SUFBd0IsNkJBQTBCO0U1RG9oTnREO0U0RHBoTkk7SUFBd0IsOEJBQTBCO0U1RHVoTnREO0U0RHZoTkk7SUFBd0Isd0JBQTBCO0U1RDBoTnREO0U0RDFoTkk7SUFBd0IsK0JBQTBCO0U1RDZoTnREO0FBQ0Y7O0E0RHBoTkE7RUFFSTtJQUFxQix3QkFBMEI7RTVEdWhOakQ7RTREdmhORTtJQUFxQiwwQkFBMEI7RTVEMGhOakQ7RTREMWhORTtJQUFxQixnQ0FBMEI7RTVENmhOakQ7RTREN2hORTtJQUFxQix5QkFBMEI7RTVEZ2lOakQ7RTREaGlORTtJQUFxQix5QkFBMEI7RTVEbWlOakQ7RTREbmlORTtJQUFxQiw2QkFBMEI7RTVEc2lOakQ7RTREdGlORTtJQUFxQiw4QkFBMEI7RTVEeWlOakQ7RTREemlORTtJQUFxQix3QkFBMEI7RTVENGlOakQ7RTRENWlORTtJQUFxQiwrQkFBMEI7RTVEK2lOakQ7QUFDRjs7QTZEcmtOQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLFVBQVU7RUFDVixnQkFBZ0I7QTdEd2tObEI7O0E2RDdrTkE7RUFRSSxjQUFjO0VBQ2QsV0FBVztBN0R5a05mOztBNkRsbE5BOzs7OztFQWlCSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7RUFDWixTQUFTO0E3RHlrTmI7O0E2RGprTkU7RUFFSSx1QkFBNEY7QTdEbWtObEc7O0E2RHJrTkU7RUFFSSxtQkFBNEY7QTdEdWtObEc7O0E2RHprTkU7RUFFSSxnQkFBNEY7QTdEMmtObEc7O0E2RDdrTkU7RUFFSSxpQkFBNEY7QTdEK2tObEc7O0E4RHhtTkk7RUFBZ0MsOEJBQThCO0E5RDRtTmxFOztBOEQzbU5JO0VBQWdDLGlDQUFpQztBOUQrbU5yRTs7QThEOW1OSTtFQUFnQyxzQ0FBc0M7QTlEa25OMUU7O0E4RGpuTkk7RUFBZ0MseUNBQXlDO0E5RHFuTjdFOztBOERubk5JO0VBQThCLDBCQUEwQjtBOUR1bk41RDs7QThEdG5OSTtFQUE4Qiw0QkFBNEI7QTlEMG5OOUQ7O0E4RHpuTkk7RUFBOEIsa0NBQWtDO0E5RDZuTnBFOztBOEQ1bk5JO0VBQThCLHlCQUF5QjtBOURnb04zRDs7QThEL25OSTtFQUE4Qix1QkFBdUI7QTlEbW9OekQ7O0E4RGxvTkk7RUFBOEIsdUJBQXVCO0E5RHNvTnpEOztBOERyb05JO0VBQThCLHlCQUF5QjtBOUR5b04zRDs7QThEeG9OSTtFQUE4Qix5QkFBeUI7QTlENG9OM0Q7O0E4RDFvTkk7RUFBb0Msc0NBQXNDO0E5RDhvTjlFOztBOEQ3b05JO0VBQW9DLG9DQUFvQztBOURpcE41RTs7QThEaHBOSTtFQUFvQyxrQ0FBa0M7QTlEb3BOMUU7O0E4RG5wTkk7RUFBb0MseUNBQXlDO0E5RHVwTmpGOztBOER0cE5JO0VBQW9DLHdDQUF3QztBOUQwcE5oRjs7QThEeHBOSTtFQUFpQyxrQ0FBa0M7QTlENHBOdkU7O0E4RDNwTkk7RUFBaUMsZ0NBQWdDO0E5RCtwTnJFOztBOEQ5cE5JO0VBQWlDLDhCQUE4QjtBOURrcU5uRTs7QThEanFOSTtFQUFpQyxnQ0FBZ0M7QTlEcXFOckU7O0E4RHBxTkk7RUFBaUMsK0JBQStCO0E5RHdxTnBFOztBOER0cU5JO0VBQWtDLG9DQUFvQztBOUQwcU4xRTs7QThEenFOSTtFQUFrQyxrQ0FBa0M7QTlENnFOeEU7O0E4RDVxTkk7RUFBa0MsZ0NBQWdDO0E5RGdyTnRFOztBOEQvcU5JO0VBQWtDLHVDQUF1QztBOURtck43RTs7QThEbHJOSTtFQUFrQyxzQ0FBc0M7QTlEc3JONUU7O0E4RHJyTkk7RUFBa0MsaUNBQWlDO0E5RHlyTnZFOztBOER2ck5JO0VBQWdDLDJCQUEyQjtBOUQyck4vRDs7QThEMXJOSTtFQUFnQyxpQ0FBaUM7QTlEOHJOckU7O0E4RDdyTkk7RUFBZ0MsK0JBQStCO0E5RGlzTm5FOztBOERoc05JO0VBQWdDLDZCQUE2QjtBOURvc05qRTs7QThEbnNOSTtFQUFnQywrQkFBK0I7QTlEdXNObkU7O0E4RHRzTkk7RUFBZ0MsOEJBQThCO0E5RDBzTmxFOztBYzlyTkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOURxdk5oRTtFOERwdk5FO0lBQWdDLGlDQUFpQztFOUR1dk5uRTtFOER0dk5FO0lBQWdDLHNDQUFzQztFOUR5dk54RTtFOER4dk5FO0lBQWdDLHlDQUF5QztFOUQydk4zRTtFOER6dk5FO0lBQThCLDBCQUEwQjtFOUQ0dk4xRDtFOEQzdk5FO0lBQThCLDRCQUE0QjtFOUQ4dk41RDtFOEQ3dk5FO0lBQThCLGtDQUFrQztFOURnd05sRTtFOEQvdk5FO0lBQThCLHlCQUF5QjtFOURrd056RDtFOERqd05FO0lBQThCLHVCQUF1QjtFOURvd052RDtFOERud05FO0lBQThCLHVCQUF1QjtFOURzd052RDtFOERyd05FO0lBQThCLHlCQUF5QjtFOUR3d056RDtFOER2d05FO0lBQThCLHlCQUF5QjtFOUQwd056RDtFOER4d05FO0lBQW9DLHNDQUFzQztFOUQyd041RTtFOEQxd05FO0lBQW9DLG9DQUFvQztFOUQ2d04xRTtFOEQ1d05FO0lBQW9DLGtDQUFrQztFOUQrd054RTtFOEQ5d05FO0lBQW9DLHlDQUF5QztFOURpeE4vRTtFOERoeE5FO0lBQW9DLHdDQUF3QztFOURteE45RTtFOERqeE5FO0lBQWlDLGtDQUFrQztFOURveE5yRTtFOERueE5FO0lBQWlDLGdDQUFnQztFOURzeE5uRTtFOERyeE5FO0lBQWlDLDhCQUE4QjtFOUR3eE5qRTtFOER2eE5FO0lBQWlDLGdDQUFnQztFOUQweE5uRTtFOER6eE5FO0lBQWlDLCtCQUErQjtFOUQ0eE5sRTtFOEQxeE5FO0lBQWtDLG9DQUFvQztFOUQ2eE54RTtFOEQ1eE5FO0lBQWtDLGtDQUFrQztFOUQreE50RTtFOEQ5eE5FO0lBQWtDLGdDQUFnQztFOURpeU5wRTtFOERoeU5FO0lBQWtDLHVDQUF1QztFOURteU4zRTtFOERseU5FO0lBQWtDLHNDQUFzQztFOURxeU4xRTtFOERweU5FO0lBQWtDLGlDQUFpQztFOUR1eU5yRTtFOERyeU5FO0lBQWdDLDJCQUEyQjtFOUR3eU43RDtFOER2eU5FO0lBQWdDLGlDQUFpQztFOUQweU5uRTtFOER6eU5FO0lBQWdDLCtCQUErQjtFOUQ0eU5qRTtFOEQzeU5FO0lBQWdDLDZCQUE2QjtFOUQ4eU4vRDtFOEQ3eU5FO0lBQWdDLCtCQUErQjtFOURnek5qRTtFOEQveU5FO0lBQWdDLDhCQUE4QjtFOURrek5oRTtBQUNGOztBY3Z5Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOUQ4MU5oRTtFOEQ3MU5FO0lBQWdDLGlDQUFpQztFOURnMk5uRTtFOEQvMU5FO0lBQWdDLHNDQUFzQztFOURrMk54RTtFOERqMk5FO0lBQWdDLHlDQUF5QztFOURvMk4zRTtFOERsMk5FO0lBQThCLDBCQUEwQjtFOURxMk4xRDtFOERwMk5FO0lBQThCLDRCQUE0QjtFOUR1Mk41RDtFOER0Mk5FO0lBQThCLGtDQUFrQztFOUR5Mk5sRTtFOER4Mk5FO0lBQThCLHlCQUF5QjtFOUQyMk56RDtFOEQxMk5FO0lBQThCLHVCQUF1QjtFOUQ2Mk52RDtFOEQ1Mk5FO0lBQThCLHVCQUF1QjtFOUQrMk52RDtFOEQ5Mk5FO0lBQThCLHlCQUF5QjtFOURpM056RDtFOERoM05FO0lBQThCLHlCQUF5QjtFOURtM056RDtFOERqM05FO0lBQW9DLHNDQUFzQztFOURvM041RTtFOERuM05FO0lBQW9DLG9DQUFvQztFOURzM04xRTtFOERyM05FO0lBQW9DLGtDQUFrQztFOUR3M054RTtFOER2M05FO0lBQW9DLHlDQUF5QztFOUQwM04vRTtFOER6M05FO0lBQW9DLHdDQUF3QztFOUQ0M045RTtFOEQxM05FO0lBQWlDLGtDQUFrQztFOUQ2M05yRTtFOEQ1M05FO0lBQWlDLGdDQUFnQztFOUQrM05uRTtFOEQ5M05FO0lBQWlDLDhCQUE4QjtFOURpNE5qRTtFOERoNE5FO0lBQWlDLGdDQUFnQztFOURtNE5uRTtFOERsNE5FO0lBQWlDLCtCQUErQjtFOURxNE5sRTtFOERuNE5FO0lBQWtDLG9DQUFvQztFOURzNE54RTtFOERyNE5FO0lBQWtDLGtDQUFrQztFOUR3NE50RTtFOER2NE5FO0lBQWtDLGdDQUFnQztFOUQwNE5wRTtFOER6NE5FO0lBQWtDLHVDQUF1QztFOUQ0NE4zRTtFOEQzNE5FO0lBQWtDLHNDQUFzQztFOUQ4NE4xRTtFOEQ3NE5FO0lBQWtDLGlDQUFpQztFOURnNU5yRTtFOEQ5NE5FO0lBQWdDLDJCQUEyQjtFOURpNU43RDtFOERoNU5FO0lBQWdDLGlDQUFpQztFOURtNU5uRTtFOERsNU5FO0lBQWdDLCtCQUErQjtFOURxNU5qRTtFOERwNU5FO0lBQWdDLDZCQUE2QjtFOUR1NU4vRDtFOER0NU5FO0lBQWdDLCtCQUErQjtFOUR5NU5qRTtFOER4NU5FO0lBQWdDLDhCQUE4QjtFOUQyNU5oRTtBQUNGOztBY2g1Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOUR1OE5oRTtFOER0OE5FO0lBQWdDLGlDQUFpQztFOUR5OE5uRTtFOER4OE5FO0lBQWdDLHNDQUFzQztFOUQyOE54RTtFOEQxOE5FO0lBQWdDLHlDQUF5QztFOUQ2OE4zRTtFOEQzOE5FO0lBQThCLDBCQUEwQjtFOUQ4OE4xRDtFOEQ3OE5FO0lBQThCLDRCQUE0QjtFOURnOU41RDtFOEQvOE5FO0lBQThCLGtDQUFrQztFOURrOU5sRTtFOERqOU5FO0lBQThCLHlCQUF5QjtFOURvOU56RDtFOERuOU5FO0lBQThCLHVCQUF1QjtFOURzOU52RDtFOERyOU5FO0lBQThCLHVCQUF1QjtFOUR3OU52RDtFOER2OU5FO0lBQThCLHlCQUF5QjtFOUQwOU56RDtFOER6OU5FO0lBQThCLHlCQUF5QjtFOUQ0OU56RDtFOEQxOU5FO0lBQW9DLHNDQUFzQztFOUQ2OU41RTtFOEQ1OU5FO0lBQW9DLG9DQUFvQztFOUQrOU4xRTtFOEQ5OU5FO0lBQW9DLGtDQUFrQztFOURpK054RTtFOERoK05FO0lBQW9DLHlDQUF5QztFOURtK04vRTtFOERsK05FO0lBQW9DLHdDQUF3QztFOURxK045RTtFOERuK05FO0lBQWlDLGtDQUFrQztFOURzK05yRTtFOERyK05FO0lBQWlDLGdDQUFnQztFOUR3K05uRTtFOER2K05FO0lBQWlDLDhCQUE4QjtFOUQwK05qRTtFOER6K05FO0lBQWlDLGdDQUFnQztFOUQ0K05uRTtFOEQzK05FO0lBQWlDLCtCQUErQjtFOUQ4K05sRTtFOEQ1K05FO0lBQWtDLG9DQUFvQztFOUQrK054RTtFOEQ5K05FO0lBQWtDLGtDQUFrQztFOURpL050RTtFOERoL05FO0lBQWtDLGdDQUFnQztFOURtL05wRTtFOERsL05FO0lBQWtDLHVDQUF1QztFOURxL04zRTtFOERwL05FO0lBQWtDLHNDQUFzQztFOUR1L04xRTtFOER0L05FO0lBQWtDLGlDQUFpQztFOUR5L05yRTtFOER2L05FO0lBQWdDLDJCQUEyQjtFOUQwL043RDtFOER6L05FO0lBQWdDLGlDQUFpQztFOUQ0L05uRTtFOEQzL05FO0lBQWdDLCtCQUErQjtFOUQ4L05qRTtFOEQ3L05FO0lBQWdDLDZCQUE2QjtFOURnZ08vRDtFOEQvL05FO0lBQWdDLCtCQUErQjtFOURrZ09qRTtFOERqZ09FO0lBQWdDLDhCQUE4QjtFOURvZ09oRTtBQUNGOztBY3ovTkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOURnak9oRTtFOEQvaU9FO0lBQWdDLGlDQUFpQztFOURrak9uRTtFOERqak9FO0lBQWdDLHNDQUFzQztFOURvak94RTtFOERuak9FO0lBQWdDLHlDQUF5QztFOURzak8zRTtFOERwak9FO0lBQThCLDBCQUEwQjtFOUR1ak8xRDtFOER0ak9FO0lBQThCLDRCQUE0QjtFOUR5ak81RDtFOER4ak9FO0lBQThCLGtDQUFrQztFOUQyak9sRTtFOEQxak9FO0lBQThCLHlCQUF5QjtFOUQ2ak96RDtFOEQ1ak9FO0lBQThCLHVCQUF1QjtFOUQrak92RDtFOEQ5ak9FO0lBQThCLHVCQUF1QjtFOURpa092RDtFOERoa09FO0lBQThCLHlCQUF5QjtFOURta096RDtFOERsa09FO0lBQThCLHlCQUF5QjtFOURxa096RDtFOERua09FO0lBQW9DLHNDQUFzQztFOURza081RTtFOERya09FO0lBQW9DLG9DQUFvQztFOUR3a08xRTtFOER2a09FO0lBQW9DLGtDQUFrQztFOUQwa094RTtFOER6a09FO0lBQW9DLHlDQUF5QztFOUQ0a08vRTtFOEQza09FO0lBQW9DLHdDQUF3QztFOUQ4a085RTtFOEQ1a09FO0lBQWlDLGtDQUFrQztFOUQra09yRTtFOEQ5a09FO0lBQWlDLGdDQUFnQztFOURpbE9uRTtFOERobE9FO0lBQWlDLDhCQUE4QjtFOURtbE9qRTtFOERsbE9FO0lBQWlDLGdDQUFnQztFOURxbE9uRTtFOERwbE9FO0lBQWlDLCtCQUErQjtFOUR1bE9sRTtFOERybE9FO0lBQWtDLG9DQUFvQztFOUR3bE94RTtFOER2bE9FO0lBQWtDLGtDQUFrQztFOUQwbE90RTtFOER6bE9FO0lBQWtDLGdDQUFnQztFOUQ0bE9wRTtFOEQzbE9FO0lBQWtDLHVDQUF1QztFOUQ4bE8zRTtFOEQ3bE9FO0lBQWtDLHNDQUFzQztFOURnbU8xRTtFOEQvbE9FO0lBQWtDLGlDQUFpQztFOURrbU9yRTtFOERobU9FO0lBQWdDLDJCQUEyQjtFOURtbU83RDtFOERsbU9FO0lBQWdDLGlDQUFpQztFOURxbU9uRTtFOERwbU9FO0lBQWdDLCtCQUErQjtFOUR1bU9qRTtFOER0bU9FO0lBQWdDLDZCQUE2QjtFOUR5bU8vRDtFOER4bU9FO0lBQWdDLCtCQUErQjtFOUQybU9qRTtFOEQxbU9FO0lBQWdDLDhCQUE4QjtFOUQ2bU9oRTtBQUNGOztBK0R4cE9JO0VBQXdCLHNCQUFzQjtBL0Q0cE9sRDs7QStEM3BPSTtFQUF3Qix1QkFBdUI7QS9EK3BPbkQ7O0ErRDlwT0k7RUFBd0Isc0JBQXNCO0EvRGtxT2xEOztBYzltT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0R5cU9oRDtFK0R4cU9FO0lBQXdCLHVCQUF1QjtFL0QycU9qRDtFK0QxcU9FO0lBQXdCLHNCQUFzQjtFL0Q2cU9oRDtBQUNGOztBYzFuT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0Rxck9oRDtFK0Rwck9FO0lBQXdCLHVCQUF1QjtFL0R1ck9qRDtFK0R0ck9FO0lBQXdCLHNCQUFzQjtFL0R5ck9oRDtBQUNGOztBY3RvT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0Rpc09oRDtFK0Roc09FO0lBQXdCLHVCQUF1QjtFL0Rtc09qRDtFK0Rsc09FO0lBQXdCLHNCQUFzQjtFL0Rxc09oRDtBQUNGOztBY2xwT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0Q2c09oRDtFK0Q1c09FO0lBQXdCLHVCQUF1QjtFL0Qrc09qRDtFK0Q5c09FO0lBQXdCLHNCQUFzQjtFL0RpdE9oRDtBQUNGOztBZ0V2dE9FO0VBQXlCLG1DQUE4QjtFQUE5QixnQ0FBOEI7RUFBOUIsMkJBQThCO0FoRTJ0T3pEOztBZ0UzdE9FO0VBQXlCLG9DQUE4QjtFQUE5QixpQ0FBOEI7RUFBOUIsZ0NBQThCO0VBQTlCLDRCQUE4QjtBaEUrdE96RDs7QWdFL3RPRTtFQUF5QixvQ0FBOEI7RUFBOUIsaUNBQThCO0VBQTlCLGdDQUE4QjtFQUE5Qiw0QkFBOEI7QWhFbXVPekQ7O0FpRW51T0U7RUFBc0IseUJBQTJCO0FqRXV1T25EOztBaUV2dU9FO0VBQXNCLDJCQUEyQjtBakUydU9uRDs7QWtFMXVPRTtFQUF5QiwyQkFBOEI7QWxFOHVPekQ7O0FrRTl1T0U7RUFBeUIsNkJBQThCO0FsRWt2T3pEOztBa0Vsdk9FO0VBQXlCLDZCQUE4QjtBbEVzdk96RDs7QWtFdHZPRTtFQUF5QiwwQkFBOEI7QWxFMHZPekQ7O0FrRTF2T0U7RUFBeUIsMkJBQThCO0FsRTh2T3pEOztBa0V6dk9BO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLGEvRGdxQnNDO0FINGxOeEM7O0FrRXp2T0E7RUFDRSxlQUFlO0VBQ2YsUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsYS9Ed3BCc0M7QUhvbU54Qzs7QWtFeHZPOEI7RUFEOUI7SUFFSSxnQkFBZ0I7SUFDaEIsTUFBTTtJQUNOLGEvRGdwQm9DO0VING1OdEM7QUFDRjs7QW1FdHhPQTtFQ0VFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFVBQVU7RUFDVixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixtQkFBbUI7RUFDbkIsU0FBUztBcEV3eE9YOztBb0U5d09FO0VBRUUsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixtQkFBbUI7QXBFZ3hPdkI7O0FxRTd5T0E7RUFBYSw4REFBcUM7QXJFaXpPbEQ7O0FxRWh6T0E7RUFBVSx3REFBa0M7QXJFb3pPNUM7O0FxRW56T0E7RUFBYSx1REFBcUM7QXJFdXpPbEQ7O0FxRXR6T0E7RUFBZSwyQkFBMkI7QXJFMHpPMUM7O0FzRXp6T0k7RUFBdUIscUJBQTRCO0F0RTZ6T3ZEOztBc0U3ek9JO0VBQXVCLHFCQUE0QjtBdEVpME92RDs7QXNFajBPSTtFQUF1QixxQkFBNEI7QXRFcTBPdkQ7O0FzRXIwT0k7RUFBdUIsc0JBQTRCO0F0RXkwT3ZEOztBc0V6ME9JO0VBQXVCLHNCQUE0QjtBdEU2ME92RDs7QXNFNzBPSTtFQUF1QixzQkFBNEI7QXRFaTFPdkQ7O0FzRWoxT0k7RUFBdUIsc0JBQTRCO0F0RXExT3ZEOztBc0VyMU9JO0VBQXVCLHNCQUE0QjtBdEV5MU92RDs7QXNFejFPSTtFQUF1Qix1QkFBNEI7QXRFNjFPdkQ7O0FzRTcxT0k7RUFBdUIsdUJBQTRCO0F0RWkyT3ZEOztBc0U3MU9BO0VBQVUsMEJBQTBCO0F0RWkyT3BDOztBc0VoMk9BO0VBQVUsMkJBQTJCO0F0RW8yT3JDOztBc0VoMk9BO0VBQWMsMkJBQTJCO0F0RW8yT3pDOztBc0VuMk9BO0VBQWMsNEJBQTRCO0F0RXUyTzFDOztBc0VyMk9BO0VBQVUsdUJBQXVCO0F0RXkyT2pDOztBc0V4Mk9BO0VBQVUsd0JBQXdCO0F0RTQyT2xDOztBdUVyM09RO0VBQWdDLG9CQUE0QjtBdkV5M09wRTs7QXVFeDNPUTs7RUFFRSx3QkFBb0M7QXZFMjNPOUM7O0F1RXozT1E7O0VBRUUsMEJBQXdDO0F2RTQzT2xEOztBdUUxM09ROztFQUVFLDJCQUEwQztBdkU2M09wRDs7QXVFMzNPUTs7RUFFRSx5QkFBc0M7QXZFODNPaEQ7O0F1RTc0T1E7RUFBZ0MsMEJBQTRCO0F2RWk1T3BFOztBdUVoNU9ROztFQUVFLDhCQUFvQztBdkVtNU85Qzs7QXVFajVPUTs7RUFFRSxnQ0FBd0M7QXZFbzVPbEQ7O0F1RWw1T1E7O0VBRUUsaUNBQTBDO0F2RXE1T3BEOztBdUVuNU9ROztFQUVFLCtCQUFzQztBdkVzNU9oRDs7QXVFcjZPUTtFQUFnQyx5QkFBNEI7QXZFeTZPcEU7O0F1RXg2T1E7O0VBRUUsNkJBQW9DO0F2RTI2TzlDOztBdUV6Nk9ROztFQUVFLCtCQUF3QztBdkU0Nk9sRDs7QXVFMTZPUTs7RUFFRSxnQ0FBMEM7QXZFNjZPcEQ7O0F1RTM2T1E7O0VBRUUsOEJBQXNDO0F2RTg2T2hEOztBdUU3N09RO0VBQWdDLHVCQUE0QjtBdkVpOE9wRTs7QXVFaDhPUTs7RUFFRSwyQkFBb0M7QXZFbThPOUM7O0F1RWo4T1E7O0VBRUUsNkJBQXdDO0F2RW84T2xEOztBdUVsOE9ROztFQUVFLDhCQUEwQztBdkVxOE9wRDs7QXVFbjhPUTs7RUFFRSw0QkFBc0M7QXZFczhPaEQ7O0F1RXI5T1E7RUFBZ0MseUJBQTRCO0F2RXk5T3BFOztBdUV4OU9ROztFQUVFLDZCQUFvQztBdkUyOU85Qzs7QXVFejlPUTs7RUFFRSwrQkFBd0M7QXZFNDlPbEQ7O0F1RTE5T1E7O0VBRUUsZ0NBQTBDO0F2RTY5T3BEOztBdUUzOU9ROztFQUVFLDhCQUFzQztBdkU4OU9oRDs7QXVFNytPUTtFQUFnQyx1QkFBNEI7QXZFaS9PcEU7O0F1RWgvT1E7O0VBRUUsMkJBQW9DO0F2RW0vTzlDOztBdUVqL09ROztFQUVFLDZCQUF3QztBdkVvL09sRDs7QXVFbC9PUTs7RUFFRSw4QkFBMEM7QXZFcS9PcEQ7O0F1RW4vT1E7O0VBRUUsNEJBQXNDO0F2RXMvT2hEOztBdUVyZ1BRO0VBQWdDLHFCQUE0QjtBdkV5Z1BwRTs7QXVFeGdQUTs7RUFFRSx5QkFBb0M7QXZFMmdQOUM7O0F1RXpnUFE7O0VBRUUsMkJBQXdDO0F2RTRnUGxEOztBdUUxZ1BROztFQUVFLDRCQUEwQztBdkU2Z1BwRDs7QXVFM2dQUTs7RUFFRSwwQkFBc0M7QXZFOGdQaEQ7O0F1RTdoUFE7RUFBZ0MsMkJBQTRCO0F2RWlpUHBFOztBdUVoaVBROztFQUVFLCtCQUFvQztBdkVtaVA5Qzs7QXVFamlQUTs7RUFFRSxpQ0FBd0M7QXZFb2lQbEQ7O0F1RWxpUFE7O0VBRUUsa0NBQTBDO0F2RXFpUHBEOztBdUVuaVBROztFQUVFLGdDQUFzQztBdkVzaVBoRDs7QXVFcmpQUTtFQUFnQywwQkFBNEI7QXZFeWpQcEU7O0F1RXhqUFE7O0VBRUUsOEJBQW9DO0F2RTJqUDlDOztBdUV6alBROztFQUVFLGdDQUF3QztBdkU0alBsRDs7QXVFMWpQUTs7RUFFRSxpQ0FBMEM7QXZFNmpQcEQ7O0F1RTNqUFE7O0VBRUUsK0JBQXNDO0F2RThqUGhEOztBdUU3a1BRO0VBQWdDLHdCQUE0QjtBdkVpbFBwRTs7QXVFaGxQUTs7RUFFRSw0QkFBb0M7QXZFbWxQOUM7O0F1RWpsUFE7O0VBRUUsOEJBQXdDO0F2RW9sUGxEOztBdUVsbFBROztFQUVFLCtCQUEwQztBdkVxbFBwRDs7QXVFbmxQUTs7RUFFRSw2QkFBc0M7QXZFc2xQaEQ7O0F1RXJtUFE7RUFBZ0MsMEJBQTRCO0F2RXltUHBFOztBdUV4bVBROztFQUVFLDhCQUFvQztBdkUybVA5Qzs7QXVFem1QUTs7RUFFRSxnQ0FBd0M7QXZFNG1QbEQ7O0F1RTFtUFE7O0VBRUUsaUNBQTBDO0F2RTZtUHBEOztBdUUzbVBROztFQUVFLCtCQUFzQztBdkU4bVBoRDs7QXVFN25QUTtFQUFnQyx3QkFBNEI7QXZFaW9QcEU7O0F1RWhvUFE7O0VBRUUsNEJBQW9DO0F2RW1vUDlDOztBdUVqb1BROztFQUVFLDhCQUF3QztBdkVvb1BsRDs7QXVFbG9QUTs7RUFFRSwrQkFBMEM7QXZFcW9QcEQ7O0F1RW5vUFE7O0VBRUUsNkJBQXNDO0F2RXNvUGhEOztBdUU5blBRO0VBQXdCLDJCQUEyQjtBdkVrb1AzRDs7QXVFam9QUTs7RUFFRSwrQkFBK0I7QXZFb29QekM7O0F1RWxvUFE7O0VBRUUsaUNBQWlDO0F2RXFvUDNDOztBdUVub1BROztFQUVFLGtDQUFrQztBdkVzb1A1Qzs7QXVFcG9QUTs7RUFFRSxnQ0FBZ0M7QXZFdW9QMUM7O0F1RXRwUFE7RUFBd0IsMEJBQTJCO0F2RTBwUDNEOztBdUV6cFBROztFQUVFLDhCQUErQjtBdkU0cFB6Qzs7QXVFMXBQUTs7RUFFRSxnQ0FBaUM7QXZFNnBQM0M7O0F1RTNwUFE7O0VBRUUsaUNBQWtDO0F2RThwUDVDOztBdUU1cFBROztFQUVFLCtCQUFnQztBdkUrcFAxQzs7QXVFOXFQUTtFQUF3Qix3QkFBMkI7QXZFa3JQM0Q7O0F1RWpyUFE7O0VBRUUsNEJBQStCO0F2RW9yUHpDOztBdUVsclBROztFQUVFLDhCQUFpQztBdkVxclAzQzs7QXVFbnJQUTs7RUFFRSwrQkFBa0M7QXZFc3JQNUM7O0F1RXByUFE7O0VBRUUsNkJBQWdDO0F2RXVyUDFDOztBdUV0c1BRO0VBQXdCLDBCQUEyQjtBdkUwc1AzRDs7QXVFenNQUTs7RUFFRSw4QkFBK0I7QXZFNHNQekM7O0F1RTFzUFE7O0VBRUUsZ0NBQWlDO0F2RTZzUDNDOztBdUUzc1BROztFQUVFLGlDQUFrQztBdkU4c1A1Qzs7QXVFNXNQUTs7RUFFRSwrQkFBZ0M7QXZFK3NQMUM7O0F1RTl0UFE7RUFBd0Isd0JBQTJCO0F2RWt1UDNEOztBdUVqdVBROztFQUVFLDRCQUErQjtBdkVvdVB6Qzs7QXVFbHVQUTs7RUFFRSw4QkFBaUM7QXZFcXVQM0M7O0F1RW51UFE7O0VBRUUsK0JBQWtDO0F2RXN1UDVDOztBdUVwdVBROztFQUVFLDZCQUFnQztBdkV1dVAxQzs7QXVFanVQSTtFQUFtQix1QkFBdUI7QXZFcXVQOUM7O0F1RXB1UEk7O0VBRUUsMkJBQTJCO0F2RXV1UGpDOztBdUVydVBJOztFQUVFLDZCQUE2QjtBdkV3dVBuQzs7QXVFdHVQSTs7RUFFRSw4QkFBOEI7QXZFeXVQcEM7O0F1RXZ1UEk7O0VBRUUsNEJBQTRCO0F2RTB1UGxDOztBY252UEk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkUweVBsRTtFdUV6eVBNOztJQUVFLHdCQUFvQztFdkUyeVA1QztFdUV6eVBNOztJQUVFLDBCQUF3QztFdkUyeVBoRDtFdUV6eVBNOztJQUVFLDJCQUEwQztFdkUyeVBsRDtFdUV6eVBNOztJQUVFLHlCQUFzQztFdkUyeVA5QztFdUUxelBNO0lBQWdDLDBCQUE0QjtFdkU2elBsRTtFdUU1elBNOztJQUVFLDhCQUFvQztFdkU4elA1QztFdUU1elBNOztJQUVFLGdDQUF3QztFdkU4elBoRDtFdUU1elBNOztJQUVFLGlDQUEwQztFdkU4elBsRDtFdUU1elBNOztJQUVFLCtCQUFzQztFdkU4elA5QztFdUU3MFBNO0lBQWdDLHlCQUE0QjtFdkVnMVBsRTtFdUUvMFBNOztJQUVFLDZCQUFvQztFdkVpMVA1QztFdUUvMFBNOztJQUVFLCtCQUF3QztFdkVpMVBoRDtFdUUvMFBNOztJQUVFLGdDQUEwQztFdkVpMVBsRDtFdUUvMFBNOztJQUVFLDhCQUFzQztFdkVpMVA5QztFdUVoMlBNO0lBQWdDLHVCQUE0QjtFdkVtMlBsRTtFdUVsMlBNOztJQUVFLDJCQUFvQztFdkVvMlA1QztFdUVsMlBNOztJQUVFLDZCQUF3QztFdkVvMlBoRDtFdUVsMlBNOztJQUVFLDhCQUEwQztFdkVvMlBsRDtFdUVsMlBNOztJQUVFLDRCQUFzQztFdkVvMlA5QztFdUVuM1BNO0lBQWdDLHlCQUE0QjtFdkVzM1BsRTtFdUVyM1BNOztJQUVFLDZCQUFvQztFdkV1M1A1QztFdUVyM1BNOztJQUVFLCtCQUF3QztFdkV1M1BoRDtFdUVyM1BNOztJQUVFLGdDQUEwQztFdkV1M1BsRDtFdUVyM1BNOztJQUVFLDhCQUFzQztFdkV1M1A5QztFdUV0NFBNO0lBQWdDLHVCQUE0QjtFdkV5NFBsRTtFdUV4NFBNOztJQUVFLDJCQUFvQztFdkUwNFA1QztFdUV4NFBNOztJQUVFLDZCQUF3QztFdkUwNFBoRDtFdUV4NFBNOztJQUVFLDhCQUEwQztFdkUwNFBsRDtFdUV4NFBNOztJQUVFLDRCQUFzQztFdkUwNFA5QztFdUV6NVBNO0lBQWdDLHFCQUE0QjtFdkU0NVBsRTtFdUUzNVBNOztJQUVFLHlCQUFvQztFdkU2NVA1QztFdUUzNVBNOztJQUVFLDJCQUF3QztFdkU2NVBoRDtFdUUzNVBNOztJQUVFLDRCQUEwQztFdkU2NVBsRDtFdUUzNVBNOztJQUVFLDBCQUFzQztFdkU2NVA5QztFdUU1NlBNO0lBQWdDLDJCQUE0QjtFdkUrNlBsRTtFdUU5NlBNOztJQUVFLCtCQUFvQztFdkVnN1A1QztFdUU5NlBNOztJQUVFLGlDQUF3QztFdkVnN1BoRDtFdUU5NlBNOztJQUVFLGtDQUEwQztFdkVnN1BsRDtFdUU5NlBNOztJQUVFLGdDQUFzQztFdkVnN1A5QztFdUUvN1BNO0lBQWdDLDBCQUE0QjtFdkVrOFBsRTtFdUVqOFBNOztJQUVFLDhCQUFvQztFdkVtOFA1QztFdUVqOFBNOztJQUVFLGdDQUF3QztFdkVtOFBoRDtFdUVqOFBNOztJQUVFLGlDQUEwQztFdkVtOFBsRDtFdUVqOFBNOztJQUVFLCtCQUFzQztFdkVtOFA5QztFdUVsOVBNO0lBQWdDLHdCQUE0QjtFdkVxOVBsRTtFdUVwOVBNOztJQUVFLDRCQUFvQztFdkVzOVA1QztFdUVwOVBNOztJQUVFLDhCQUF3QztFdkVzOVBoRDtFdUVwOVBNOztJQUVFLCtCQUEwQztFdkVzOVBsRDtFdUVwOVBNOztJQUVFLDZCQUFzQztFdkVzOVA5QztFdUVyK1BNO0lBQWdDLDBCQUE0QjtFdkV3K1BsRTtFdUV2K1BNOztJQUVFLDhCQUFvQztFdkV5K1A1QztFdUV2K1BNOztJQUVFLGdDQUF3QztFdkV5K1BoRDtFdUV2K1BNOztJQUVFLGlDQUEwQztFdkV5K1BsRDtFdUV2K1BNOztJQUVFLCtCQUFzQztFdkV5K1A5QztFdUV4L1BNO0lBQWdDLHdCQUE0QjtFdkUyL1BsRTtFdUUxL1BNOztJQUVFLDRCQUFvQztFdkU0L1A1QztFdUUxL1BNOztJQUVFLDhCQUF3QztFdkU0L1BoRDtFdUUxL1BNOztJQUVFLCtCQUEwQztFdkU0L1BsRDtFdUUxL1BNOztJQUVFLDZCQUFzQztFdkU0L1A5QztFdUVwL1BNO0lBQXdCLDJCQUEyQjtFdkV1L1B6RDtFdUV0L1BNOztJQUVFLCtCQUErQjtFdkV3L1B2QztFdUV0L1BNOztJQUVFLGlDQUFpQztFdkV3L1B6QztFdUV0L1BNOztJQUVFLGtDQUFrQztFdkV3L1AxQztFdUV0L1BNOztJQUVFLGdDQUFnQztFdkV3L1B4QztFdUV2Z1FNO0lBQXdCLDBCQUEyQjtFdkUwZ1F6RDtFdUV6Z1FNOztJQUVFLDhCQUErQjtFdkUyZ1F2QztFdUV6Z1FNOztJQUVFLGdDQUFpQztFdkUyZ1F6QztFdUV6Z1FNOztJQUVFLGlDQUFrQztFdkUyZ1ExQztFdUV6Z1FNOztJQUVFLCtCQUFnQztFdkUyZ1F4QztFdUUxaFFNO0lBQXdCLHdCQUEyQjtFdkU2aFF6RDtFdUU1aFFNOztJQUVFLDRCQUErQjtFdkU4aFF2QztFdUU1aFFNOztJQUVFLDhCQUFpQztFdkU4aFF6QztFdUU1aFFNOztJQUVFLCtCQUFrQztFdkU4aFExQztFdUU1aFFNOztJQUVFLDZCQUFnQztFdkU4aFF4QztFdUU3aVFNO0lBQXdCLDBCQUEyQjtFdkVnalF6RDtFdUUvaVFNOztJQUVFLDhCQUErQjtFdkVpalF2QztFdUUvaVFNOztJQUVFLGdDQUFpQztFdkVpalF6QztFdUUvaVFNOztJQUVFLGlDQUFrQztFdkVpalExQztFdUUvaVFNOztJQUVFLCtCQUFnQztFdkVpalF4QztFdUVoa1FNO0lBQXdCLHdCQUEyQjtFdkVta1F6RDtFdUVsa1FNOztJQUVFLDRCQUErQjtFdkVva1F2QztFdUVsa1FNOztJQUVFLDhCQUFpQztFdkVva1F6QztFdUVsa1FNOztJQUVFLCtCQUFrQztFdkVva1ExQztFdUVsa1FNOztJQUVFLDZCQUFnQztFdkVva1F4QztFdUU5alFFO0lBQW1CLHVCQUF1QjtFdkVpa1E1QztFdUVoa1FFOztJQUVFLDJCQUEyQjtFdkVra1EvQjtFdUVoa1FFOztJQUVFLDZCQUE2QjtFdkVra1FqQztFdUVoa1FFOztJQUVFLDhCQUE4QjtFdkVra1FsQztFdUVoa1FFOztJQUVFLDRCQUE0QjtFdkVra1FoQztBQUNGOztBYzVrUUk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkVtb1FsRTtFdUVsb1FNOztJQUVFLHdCQUFvQztFdkVvb1E1QztFdUVsb1FNOztJQUVFLDBCQUF3QztFdkVvb1FoRDtFdUVsb1FNOztJQUVFLDJCQUEwQztFdkVvb1FsRDtFdUVsb1FNOztJQUVFLHlCQUFzQztFdkVvb1E5QztFdUVucFFNO0lBQWdDLDBCQUE0QjtFdkVzcFFsRTtFdUVycFFNOztJQUVFLDhCQUFvQztFdkV1cFE1QztFdUVycFFNOztJQUVFLGdDQUF3QztFdkV1cFFoRDtFdUVycFFNOztJQUVFLGlDQUEwQztFdkV1cFFsRDtFdUVycFFNOztJQUVFLCtCQUFzQztFdkV1cFE5QztFdUV0cVFNO0lBQWdDLHlCQUE0QjtFdkV5cVFsRTtFdUV4cVFNOztJQUVFLDZCQUFvQztFdkUwcVE1QztFdUV4cVFNOztJQUVFLCtCQUF3QztFdkUwcVFoRDtFdUV4cVFNOztJQUVFLGdDQUEwQztFdkUwcVFsRDtFdUV4cVFNOztJQUVFLDhCQUFzQztFdkUwcVE5QztFdUV6clFNO0lBQWdDLHVCQUE0QjtFdkU0clFsRTtFdUUzclFNOztJQUVFLDJCQUFvQztFdkU2clE1QztFdUUzclFNOztJQUVFLDZCQUF3QztFdkU2clFoRDtFdUUzclFNOztJQUVFLDhCQUEwQztFdkU2clFsRDtFdUUzclFNOztJQUVFLDRCQUFzQztFdkU2clE5QztFdUU1c1FNO0lBQWdDLHlCQUE0QjtFdkUrc1FsRTtFdUU5c1FNOztJQUVFLDZCQUFvQztFdkVndFE1QztFdUU5c1FNOztJQUVFLCtCQUF3QztFdkVndFFoRDtFdUU5c1FNOztJQUVFLGdDQUEwQztFdkVndFFsRDtFdUU5c1FNOztJQUVFLDhCQUFzQztFdkVndFE5QztFdUUvdFFNO0lBQWdDLHVCQUE0QjtFdkVrdVFsRTtFdUVqdVFNOztJQUVFLDJCQUFvQztFdkVtdVE1QztFdUVqdVFNOztJQUVFLDZCQUF3QztFdkVtdVFoRDtFdUVqdVFNOztJQUVFLDhCQUEwQztFdkVtdVFsRDtFdUVqdVFNOztJQUVFLDRCQUFzQztFdkVtdVE5QztFdUVsdlFNO0lBQWdDLHFCQUE0QjtFdkVxdlFsRTtFdUVwdlFNOztJQUVFLHlCQUFvQztFdkVzdlE1QztFdUVwdlFNOztJQUVFLDJCQUF3QztFdkVzdlFoRDtFdUVwdlFNOztJQUVFLDRCQUEwQztFdkVzdlFsRDtFdUVwdlFNOztJQUVFLDBCQUFzQztFdkVzdlE5QztFdUVyd1FNO0lBQWdDLDJCQUE0QjtFdkV3d1FsRTtFdUV2d1FNOztJQUVFLCtCQUFvQztFdkV5d1E1QztFdUV2d1FNOztJQUVFLGlDQUF3QztFdkV5d1FoRDtFdUV2d1FNOztJQUVFLGtDQUEwQztFdkV5d1FsRDtFdUV2d1FNOztJQUVFLGdDQUFzQztFdkV5d1E5QztFdUV4eFFNO0lBQWdDLDBCQUE0QjtFdkUyeFFsRTtFdUUxeFFNOztJQUVFLDhCQUFvQztFdkU0eFE1QztFdUUxeFFNOztJQUVFLGdDQUF3QztFdkU0eFFoRDtFdUUxeFFNOztJQUVFLGlDQUEwQztFdkU0eFFsRDtFdUUxeFFNOztJQUVFLCtCQUFzQztFdkU0eFE5QztFdUUzeVFNO0lBQWdDLHdCQUE0QjtFdkU4eVFsRTtFdUU3eVFNOztJQUVFLDRCQUFvQztFdkUreVE1QztFdUU3eVFNOztJQUVFLDhCQUF3QztFdkUreVFoRDtFdUU3eVFNOztJQUVFLCtCQUEwQztFdkUreVFsRDtFdUU3eVFNOztJQUVFLDZCQUFzQztFdkUreVE5QztFdUU5elFNO0lBQWdDLDBCQUE0QjtFdkVpMFFsRTtFdUVoMFFNOztJQUVFLDhCQUFvQztFdkVrMFE1QztFdUVoMFFNOztJQUVFLGdDQUF3QztFdkVrMFFoRDtFdUVoMFFNOztJQUVFLGlDQUEwQztFdkVrMFFsRDtFdUVoMFFNOztJQUVFLCtCQUFzQztFdkVrMFE5QztFdUVqMVFNO0lBQWdDLHdCQUE0QjtFdkVvMVFsRTtFdUVuMVFNOztJQUVFLDRCQUFvQztFdkVxMVE1QztFdUVuMVFNOztJQUVFLDhCQUF3QztFdkVxMVFoRDtFdUVuMVFNOztJQUVFLCtCQUEwQztFdkVxMVFsRDtFdUVuMVFNOztJQUVFLDZCQUFzQztFdkVxMVE5QztFdUU3MFFNO0lBQXdCLDJCQUEyQjtFdkVnMVF6RDtFdUUvMFFNOztJQUVFLCtCQUErQjtFdkVpMVF2QztFdUUvMFFNOztJQUVFLGlDQUFpQztFdkVpMVF6QztFdUUvMFFNOztJQUVFLGtDQUFrQztFdkVpMVExQztFdUUvMFFNOztJQUVFLGdDQUFnQztFdkVpMVF4QztFdUVoMlFNO0lBQXdCLDBCQUEyQjtFdkVtMlF6RDtFdUVsMlFNOztJQUVFLDhCQUErQjtFdkVvMlF2QztFdUVsMlFNOztJQUVFLGdDQUFpQztFdkVvMlF6QztFdUVsMlFNOztJQUVFLGlDQUFrQztFdkVvMlExQztFdUVsMlFNOztJQUVFLCtCQUFnQztFdkVvMlF4QztFdUVuM1FNO0lBQXdCLHdCQUEyQjtFdkVzM1F6RDtFdUVyM1FNOztJQUVFLDRCQUErQjtFdkV1M1F2QztFdUVyM1FNOztJQUVFLDhCQUFpQztFdkV1M1F6QztFdUVyM1FNOztJQUVFLCtCQUFrQztFdkV1M1ExQztFdUVyM1FNOztJQUVFLDZCQUFnQztFdkV1M1F4QztFdUV0NFFNO0lBQXdCLDBCQUEyQjtFdkV5NFF6RDtFdUV4NFFNOztJQUVFLDhCQUErQjtFdkUwNFF2QztFdUV4NFFNOztJQUVFLGdDQUFpQztFdkUwNFF6QztFdUV4NFFNOztJQUVFLGlDQUFrQztFdkUwNFExQztFdUV4NFFNOztJQUVFLCtCQUFnQztFdkUwNFF4QztFdUV6NVFNO0lBQXdCLHdCQUEyQjtFdkU0NVF6RDtFdUUzNVFNOztJQUVFLDRCQUErQjtFdkU2NVF2QztFdUUzNVFNOztJQUVFLDhCQUFpQztFdkU2NVF6QztFdUUzNVFNOztJQUVFLCtCQUFrQztFdkU2NVExQztFdUUzNVFNOztJQUVFLDZCQUFnQztFdkU2NVF4QztFdUV2NVFFO0lBQW1CLHVCQUF1QjtFdkUwNVE1QztFdUV6NVFFOztJQUVFLDJCQUEyQjtFdkUyNVEvQjtFdUV6NVFFOztJQUVFLDZCQUE2QjtFdkUyNVFqQztFdUV6NVFFOztJQUVFLDhCQUE4QjtFdkUyNVFsQztFdUV6NVFFOztJQUVFLDRCQUE0QjtFdkUyNVFoQztBQUNGOztBY3I2UUk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkU0OVFsRTtFdUUzOVFNOztJQUVFLHdCQUFvQztFdkU2OVE1QztFdUUzOVFNOztJQUVFLDBCQUF3QztFdkU2OVFoRDtFdUUzOVFNOztJQUVFLDJCQUEwQztFdkU2OVFsRDtFdUUzOVFNOztJQUVFLHlCQUFzQztFdkU2OVE5QztFdUU1K1FNO0lBQWdDLDBCQUE0QjtFdkUrK1FsRTtFdUU5K1FNOztJQUVFLDhCQUFvQztFdkVnL1E1QztFdUU5K1FNOztJQUVFLGdDQUF3QztFdkVnL1FoRDtFdUU5K1FNOztJQUVFLGlDQUEwQztFdkVnL1FsRDtFdUU5K1FNOztJQUVFLCtCQUFzQztFdkVnL1E5QztFdUUvL1FNO0lBQWdDLHlCQUE0QjtFdkVrZ1JsRTtFdUVqZ1JNOztJQUVFLDZCQUFvQztFdkVtZ1I1QztFdUVqZ1JNOztJQUVFLCtCQUF3QztFdkVtZ1JoRDtFdUVqZ1JNOztJQUVFLGdDQUEwQztFdkVtZ1JsRDtFdUVqZ1JNOztJQUVFLDhCQUFzQztFdkVtZ1I5QztFdUVsaFJNO0lBQWdDLHVCQUE0QjtFdkVxaFJsRTtFdUVwaFJNOztJQUVFLDJCQUFvQztFdkVzaFI1QztFdUVwaFJNOztJQUVFLDZCQUF3QztFdkVzaFJoRDtFdUVwaFJNOztJQUVFLDhCQUEwQztFdkVzaFJsRDtFdUVwaFJNOztJQUVFLDRCQUFzQztFdkVzaFI5QztFdUVyaVJNO0lBQWdDLHlCQUE0QjtFdkV3aVJsRTtFdUV2aVJNOztJQUVFLDZCQUFvQztFdkV5aVI1QztFdUV2aVJNOztJQUVFLCtCQUF3QztFdkV5aVJoRDtFdUV2aVJNOztJQUVFLGdDQUEwQztFdkV5aVJsRDtFdUV2aVJNOztJQUVFLDhCQUFzQztFdkV5aVI5QztFdUV4alJNO0lBQWdDLHVCQUE0QjtFdkUyalJsRTtFdUUxalJNOztJQUVFLDJCQUFvQztFdkU0alI1QztFdUUxalJNOztJQUVFLDZCQUF3QztFdkU0alJoRDtFdUUxalJNOztJQUVFLDhCQUEwQztFdkU0alJsRDtFdUUxalJNOztJQUVFLDRCQUFzQztFdkU0alI5QztFdUUza1JNO0lBQWdDLHFCQUE0QjtFdkU4a1JsRTtFdUU3a1JNOztJQUVFLHlCQUFvQztFdkUra1I1QztFdUU3a1JNOztJQUVFLDJCQUF3QztFdkUra1JoRDtFdUU3a1JNOztJQUVFLDRCQUEwQztFdkUra1JsRDtFdUU3a1JNOztJQUVFLDBCQUFzQztFdkUra1I5QztFdUU5bFJNO0lBQWdDLDJCQUE0QjtFdkVpbVJsRTtFdUVobVJNOztJQUVFLCtCQUFvQztFdkVrbVI1QztFdUVobVJNOztJQUVFLGlDQUF3QztFdkVrbVJoRDtFdUVobVJNOztJQUVFLGtDQUEwQztFdkVrbVJsRDtFdUVobVJNOztJQUVFLGdDQUFzQztFdkVrbVI5QztFdUVqblJNO0lBQWdDLDBCQUE0QjtFdkVvblJsRTtFdUVublJNOztJQUVFLDhCQUFvQztFdkVxblI1QztFdUVublJNOztJQUVFLGdDQUF3QztFdkVxblJoRDtFdUVublJNOztJQUVFLGlDQUEwQztFdkVxblJsRDtFdUVublJNOztJQUVFLCtCQUFzQztFdkVxblI5QztFdUVwb1JNO0lBQWdDLHdCQUE0QjtFdkV1b1JsRTtFdUV0b1JNOztJQUVFLDRCQUFvQztFdkV3b1I1QztFdUV0b1JNOztJQUVFLDhCQUF3QztFdkV3b1JoRDtFdUV0b1JNOztJQUVFLCtCQUEwQztFdkV3b1JsRDtFdUV0b1JNOztJQUVFLDZCQUFzQztFdkV3b1I5QztFdUV2cFJNO0lBQWdDLDBCQUE0QjtFdkUwcFJsRTtFdUV6cFJNOztJQUVFLDhCQUFvQztFdkUycFI1QztFdUV6cFJNOztJQUVFLGdDQUF3QztFdkUycFJoRDtFdUV6cFJNOztJQUVFLGlDQUEwQztFdkUycFJsRDtFdUV6cFJNOztJQUVFLCtCQUFzQztFdkUycFI5QztFdUUxcVJNO0lBQWdDLHdCQUE0QjtFdkU2cVJsRTtFdUU1cVJNOztJQUVFLDRCQUFvQztFdkU4cVI1QztFdUU1cVJNOztJQUVFLDhCQUF3QztFdkU4cVJoRDtFdUU1cVJNOztJQUVFLCtCQUEwQztFdkU4cVJsRDtFdUU1cVJNOztJQUVFLDZCQUFzQztFdkU4cVI5QztFdUV0cVJNO0lBQXdCLDJCQUEyQjtFdkV5cVJ6RDtFdUV4cVJNOztJQUVFLCtCQUErQjtFdkUwcVJ2QztFdUV4cVJNOztJQUVFLGlDQUFpQztFdkUwcVJ6QztFdUV4cVJNOztJQUVFLGtDQUFrQztFdkUwcVIxQztFdUV4cVJNOztJQUVFLGdDQUFnQztFdkUwcVJ4QztFdUV6clJNO0lBQXdCLDBCQUEyQjtFdkU0clJ6RDtFdUUzclJNOztJQUVFLDhCQUErQjtFdkU2clJ2QztFdUUzclJNOztJQUVFLGdDQUFpQztFdkU2clJ6QztFdUUzclJNOztJQUVFLGlDQUFrQztFdkU2clIxQztFdUUzclJNOztJQUVFLCtCQUFnQztFdkU2clJ4QztFdUU1c1JNO0lBQXdCLHdCQUEyQjtFdkUrc1J6RDtFdUU5c1JNOztJQUVFLDRCQUErQjtFdkVndFJ2QztFdUU5c1JNOztJQUVFLDhCQUFpQztFdkVndFJ6QztFdUU5c1JNOztJQUVFLCtCQUFrQztFdkVndFIxQztFdUU5c1JNOztJQUVFLDZCQUFnQztFdkVndFJ4QztFdUUvdFJNO0lBQXdCLDBCQUEyQjtFdkVrdVJ6RDtFdUVqdVJNOztJQUVFLDhCQUErQjtFdkVtdVJ2QztFdUVqdVJNOztJQUVFLGdDQUFpQztFdkVtdVJ6QztFdUVqdVJNOztJQUVFLGlDQUFrQztFdkVtdVIxQztFdUVqdVJNOztJQUVFLCtCQUFnQztFdkVtdVJ4QztFdUVsdlJNO0lBQXdCLHdCQUEyQjtFdkVxdlJ6RDtFdUVwdlJNOztJQUVFLDRCQUErQjtFdkVzdlJ2QztFdUVwdlJNOztJQUVFLDhCQUFpQztFdkVzdlJ6QztFdUVwdlJNOztJQUVFLCtCQUFrQztFdkVzdlIxQztFdUVwdlJNOztJQUVFLDZCQUFnQztFdkVzdlJ4QztFdUVodlJFO0lBQW1CLHVCQUF1QjtFdkVtdlI1QztFdUVsdlJFOztJQUVFLDJCQUEyQjtFdkVvdlIvQjtFdUVsdlJFOztJQUVFLDZCQUE2QjtFdkVvdlJqQztFdUVsdlJFOztJQUVFLDhCQUE4QjtFdkVvdlJsQztFdUVsdlJFOztJQUVFLDRCQUE0QjtFdkVvdlJoQztBQUNGOztBYzl2Ukk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkVxelJsRTtFdUVwelJNOztJQUVFLHdCQUFvQztFdkVzelI1QztFdUVwelJNOztJQUVFLDBCQUF3QztFdkVzelJoRDtFdUVwelJNOztJQUVFLDJCQUEwQztFdkVzelJsRDtFdUVwelJNOztJQUVFLHlCQUFzQztFdkVzelI5QztFdUVyMFJNO0lBQWdDLDBCQUE0QjtFdkV3MFJsRTtFdUV2MFJNOztJQUVFLDhCQUFvQztFdkV5MFI1QztFdUV2MFJNOztJQUVFLGdDQUF3QztFdkV5MFJoRDtFdUV2MFJNOztJQUVFLGlDQUEwQztFdkV5MFJsRDtFdUV2MFJNOztJQUVFLCtCQUFzQztFdkV5MFI5QztFdUV4MVJNO0lBQWdDLHlCQUE0QjtFdkUyMVJsRTtFdUUxMVJNOztJQUVFLDZCQUFvQztFdkU0MVI1QztFdUUxMVJNOztJQUVFLCtCQUF3QztFdkU0MVJoRDtFdUUxMVJNOztJQUVFLGdDQUEwQztFdkU0MVJsRDtFdUUxMVJNOztJQUVFLDhCQUFzQztFdkU0MVI5QztFdUUzMlJNO0lBQWdDLHVCQUE0QjtFdkU4MlJsRTtFdUU3MlJNOztJQUVFLDJCQUFvQztFdkUrMlI1QztFdUU3MlJNOztJQUVFLDZCQUF3QztFdkUrMlJoRDtFdUU3MlJNOztJQUVFLDhCQUEwQztFdkUrMlJsRDtFdUU3MlJNOztJQUVFLDRCQUFzQztFdkUrMlI5QztFdUU5M1JNO0lBQWdDLHlCQUE0QjtFdkVpNFJsRTtFdUVoNFJNOztJQUVFLDZCQUFvQztFdkVrNFI1QztFdUVoNFJNOztJQUVFLCtCQUF3QztFdkVrNFJoRDtFdUVoNFJNOztJQUVFLGdDQUEwQztFdkVrNFJsRDtFdUVoNFJNOztJQUVFLDhCQUFzQztFdkVrNFI5QztFdUVqNVJNO0lBQWdDLHVCQUE0QjtFdkVvNVJsRTtFdUVuNVJNOztJQUVFLDJCQUFvQztFdkVxNVI1QztFdUVuNVJNOztJQUVFLDZCQUF3QztFdkVxNVJoRDtFdUVuNVJNOztJQUVFLDhCQUEwQztFdkVxNVJsRDtFdUVuNVJNOztJQUVFLDRCQUFzQztFdkVxNVI5QztFdUVwNlJNO0lBQWdDLHFCQUE0QjtFdkV1NlJsRTtFdUV0NlJNOztJQUVFLHlCQUFvQztFdkV3NlI1QztFdUV0NlJNOztJQUVFLDJCQUF3QztFdkV3NlJoRDtFdUV0NlJNOztJQUVFLDRCQUEwQztFdkV3NlJsRDtFdUV0NlJNOztJQUVFLDBCQUFzQztFdkV3NlI5QztFdUV2N1JNO0lBQWdDLDJCQUE0QjtFdkUwN1JsRTtFdUV6N1JNOztJQUVFLCtCQUFvQztFdkUyN1I1QztFdUV6N1JNOztJQUVFLGlDQUF3QztFdkUyN1JoRDtFdUV6N1JNOztJQUVFLGtDQUEwQztFdkUyN1JsRDtFdUV6N1JNOztJQUVFLGdDQUFzQztFdkUyN1I5QztFdUUxOFJNO0lBQWdDLDBCQUE0QjtFdkU2OFJsRTtFdUU1OFJNOztJQUVFLDhCQUFvQztFdkU4OFI1QztFdUU1OFJNOztJQUVFLGdDQUF3QztFdkU4OFJoRDtFdUU1OFJNOztJQUVFLGlDQUEwQztFdkU4OFJsRDtFdUU1OFJNOztJQUVFLCtCQUFzQztFdkU4OFI5QztFdUU3OVJNO0lBQWdDLHdCQUE0QjtFdkVnK1JsRTtFdUUvOVJNOztJQUVFLDRCQUFvQztFdkVpK1I1QztFdUUvOVJNOztJQUVFLDhCQUF3QztFdkVpK1JoRDtFdUUvOVJNOztJQUVFLCtCQUEwQztFdkVpK1JsRDtFdUUvOVJNOztJQUVFLDZCQUFzQztFdkVpK1I5QztFdUVoL1JNO0lBQWdDLDBCQUE0QjtFdkVtL1JsRTtFdUVsL1JNOztJQUVFLDhCQUFvQztFdkVvL1I1QztFdUVsL1JNOztJQUVFLGdDQUF3QztFdkVvL1JoRDtFdUVsL1JNOztJQUVFLGlDQUEwQztFdkVvL1JsRDtFdUVsL1JNOztJQUVFLCtCQUFzQztFdkVvL1I5QztFdUVuZ1NNO0lBQWdDLHdCQUE0QjtFdkVzZ1NsRTtFdUVyZ1NNOztJQUVFLDRCQUFvQztFdkV1Z1M1QztFdUVyZ1NNOztJQUVFLDhCQUF3QztFdkV1Z1NoRDtFdUVyZ1NNOztJQUVFLCtCQUEwQztFdkV1Z1NsRDtFdUVyZ1NNOztJQUVFLDZCQUFzQztFdkV1Z1M5QztFdUUvL1JNO0lBQXdCLDJCQUEyQjtFdkVrZ1N6RDtFdUVqZ1NNOztJQUVFLCtCQUErQjtFdkVtZ1N2QztFdUVqZ1NNOztJQUVFLGlDQUFpQztFdkVtZ1N6QztFdUVqZ1NNOztJQUVFLGtDQUFrQztFdkVtZ1MxQztFdUVqZ1NNOztJQUVFLGdDQUFnQztFdkVtZ1N4QztFdUVsaFNNO0lBQXdCLDBCQUEyQjtFdkVxaFN6RDtFdUVwaFNNOztJQUVFLDhCQUErQjtFdkVzaFN2QztFdUVwaFNNOztJQUVFLGdDQUFpQztFdkVzaFN6QztFdUVwaFNNOztJQUVFLGlDQUFrQztFdkVzaFMxQztFdUVwaFNNOztJQUVFLCtCQUFnQztFdkVzaFN4QztFdUVyaVNNO0lBQXdCLHdCQUEyQjtFdkV3aVN6RDtFdUV2aVNNOztJQUVFLDRCQUErQjtFdkV5aVN2QztFdUV2aVNNOztJQUVFLDhCQUFpQztFdkV5aVN6QztFdUV2aVNNOztJQUVFLCtCQUFrQztFdkV5aVMxQztFdUV2aVNNOztJQUVFLDZCQUFnQztFdkV5aVN4QztFdUV4alNNO0lBQXdCLDBCQUEyQjtFdkUyalN6RDtFdUUxalNNOztJQUVFLDhCQUErQjtFdkU0alN2QztFdUUxalNNOztJQUVFLGdDQUFpQztFdkU0alN6QztFdUUxalNNOztJQUVFLGlDQUFrQztFdkU0alMxQztFdUUxalNNOztJQUVFLCtCQUFnQztFdkU0alN4QztFdUUza1NNO0lBQXdCLHdCQUEyQjtFdkU4a1N6RDtFdUU3a1NNOztJQUVFLDRCQUErQjtFdkUra1N2QztFdUU3a1NNOztJQUVFLDhCQUFpQztFdkUra1N6QztFdUU3a1NNOztJQUVFLCtCQUFrQztFdkUra1MxQztFdUU3a1NNOztJQUVFLDZCQUFnQztFdkUra1N4QztFdUV6a1NFO0lBQW1CLHVCQUF1QjtFdkU0a1M1QztFdUUza1NFOztJQUVFLDJCQUEyQjtFdkU2a1MvQjtFdUUza1NFOztJQUVFLDZCQUE2QjtFdkU2a1NqQztFdUUza1NFOztJQUVFLDhCQUE4QjtFdkU2a1NsQztFdUUza1NFOztJQUVFLDRCQUE0QjtFdkU2a1NoQztBQUNGOztBd0Uvb1NBO0VBRUksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBRVYsb0JBQW9CO0VBQ3BCLFdBQVc7RUFFWCxrQ0FBa0M7QXhFK29TdEM7O0F5RXpwU0E7RUFBa0IsNEdBQThDO0F6RTZwU2hFOztBeUV6cFNBO0VBQWlCLDhCQUE4QjtBekU2cFMvQzs7QXlFNXBTQTtFQUFpQiw4QkFBOEI7QXpFZ3FTL0M7O0F5RS9wU0E7RUFBaUIsOEJBQThCO0F6RW1xUy9DOztBeUVscVNBO0VDVEUsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixtQkFBbUI7QTFFK3FTckI7O0F5RWhxU0k7RUFBd0IsMkJBQTJCO0F6RW9xU3ZEOztBeUVucVNJO0VBQXdCLDRCQUE0QjtBekV1cVN4RDs7QXlFdHFTSTtFQUF3Qiw2QkFBNkI7QXpFMHFTekQ7O0Fjcm9TSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RWlyU3JEO0V5RWhyU0U7SUFBd0IsNEJBQTRCO0V6RW1yU3REO0V5RWxyU0U7SUFBd0IsNkJBQTZCO0V6RXFyU3ZEO0FBQ0Y7O0FjanBTSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RTZyU3JEO0V5RTVyU0U7SUFBd0IsNEJBQTRCO0V6RStyU3REO0V5RTlyU0U7SUFBd0IsNkJBQTZCO0V6RWlzU3ZEO0FBQ0Y7O0FjN3BTSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RXlzU3JEO0V5RXhzU0U7SUFBd0IsNEJBQTRCO0V6RTJzU3REO0V5RTFzU0U7SUFBd0IsNkJBQTZCO0V6RTZzU3ZEO0FBQ0Y7O0FjenFTSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RXF0U3JEO0V5RXB0U0U7SUFBd0IsNEJBQTRCO0V6RXV0U3REO0V5RXR0U0U7SUFBd0IsNkJBQTZCO0V6RXl0U3ZEO0FBQ0Y7O0F5RXB0U0E7RUFBbUIsb0NBQW9DO0F6RXd0U3ZEOztBeUV2dFNBO0VBQW1CLG9DQUFvQztBekUydFN2RDs7QXlFMXRTQTtFQUFtQixxQ0FBcUM7QXpFOHRTeEQ7O0F5RTF0U0E7RUFBdUIsMkJBQTBDO0F6RTh0U2pFOztBeUU3dFNBO0VBQXVCLCtCQUE0QztBekVpdVNuRTs7QXlFaHVTQTtFQUF1QiwyQkFBMkM7QXpFb3VTbEU7O0F5RW51U0E7RUFBdUIsMkJBQXlDO0F6RXV1U2hFOztBeUV0dVNBO0VBQXVCLDhCQUEyQztBekUwdVNsRTs7QXlFenVTQTtFQUF1Qiw2QkFBNkI7QXpFNnVTcEQ7O0F5RXp1U0E7RUFBYyxzQkFBd0I7QXpFNnVTdEM7O0EyRXB4U0U7RUFDRSx5QkFBd0I7QTNFdXhTNUI7O0FLN3dTRTtFc0VMTSx5QkFBMEU7QTNFc3hTbEY7O0EyRTV4U0U7RUFDRSx5QkFBd0I7QTNFK3hTNUI7O0FLcnhTRTtFc0VMTSx5QkFBMEU7QTNFOHhTbEY7O0EyRXB5U0U7RUFDRSx5QkFBd0I7QTNFdXlTNUI7O0FLN3hTRTtFc0VMTSx5QkFBMEU7QTNFc3lTbEY7O0EyRTV5U0U7RUFDRSx5QkFBd0I7QTNFK3lTNUI7O0FLcnlTRTtFc0VMTSx5QkFBMEU7QTNFOHlTbEY7O0EyRXB6U0U7RUFDRSx5QkFBd0I7QTNFdXpTNUI7O0FLN3lTRTtFc0VMTSx5QkFBMEU7QTNFc3pTbEY7O0EyRTV6U0U7RUFDRSx5QkFBd0I7QTNFK3pTNUI7O0FLcnpTRTtFc0VMTSx5QkFBMEU7QTNFOHpTbEY7O0EyRXAwU0U7RUFDRSx5QkFBd0I7QTNFdTBTNUI7O0FLN3pTRTtFc0VMTSx5QkFBMEU7QTNFczBTbEY7O0EyRTUwU0U7RUFDRSx5QkFBd0I7QTNFKzBTNUI7O0FLcjBTRTtFc0VMTSx5QkFBMEU7QTNFODBTbEY7O0F5RXZ5U0E7RUFBYSx5QkFBNkI7QXpFMnlTMUM7O0F5RTF5U0E7RUFBYyx5QkFBNkI7QXpFOHlTM0M7O0F5RTV5U0E7RUFBaUIsb0NBQWtDO0F6RWd6U25EOztBeUUveVNBO0VBQWlCLDBDQUFrQztBekVtelNuRDs7QXlFL3lTQTtFR3ZERSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsU0FBUztBNUUwMlNYOztBeUVuelNBO0VBQXdCLGdDQUFnQztBekV1elN4RDs7QXlFcnpTQTtFQUNFLGlDQUFpQztFQUNqQyxnQ0FBZ0M7QXpFd3pTbEM7O0F5RW56U0E7RUFBYyx5QkFBeUI7QXpFdXpTdkM7O0E2RXgzU0E7RUFDRSw4QkFBOEI7QTdFMjNTaEM7O0E2RXgzU0E7RUFDRSw2QkFBNkI7QTdFMjNTL0I7O0E4RTMzU0U7RTVFT0Y7OztJNEVETSw0QkFBNEI7SUFFNUIsMkJBQTJCO0U5RTIzUy9CO0U4RXgzU0U7SUFFSSwwQkFBMEI7RTlFeTNTaEM7RThFaDNTRTtJQUNFLDZCQUE2QjtFOUVrM1NqQztFRXByU0Y7STRFL0tNLGdDQUFnQztFOUVzMlNwQztFOEVwMlNFOztJQUVFLHlCM0V6Q1k7STJFMENaLHdCQUF3QjtFOUVzMlM1QjtFOEU5MVNFO0lBQ0UsMkJBQTJCO0U5RWcyUy9CO0U4RTcxU0U7O0lBRUUsd0JBQXdCO0U5RSsxUzVCO0U4RTUxU0U7OztJQUdFLFVBQVU7SUFDVixTQUFTO0U5RTgxU2I7RThFMzFTRTs7SUFFRSx1QkFBdUI7RTlFNjFTM0I7RThFcjFTRTtJQUNFLFEzRStoQ2dDO0VId3pRcEM7RUVuNFNGO0k0RStDTSwyQkFBMkM7RTlFdTFTL0M7RThFcjFTRTtJQUNFLDJCQUEyQztFOUV1MVMvQztFaUNyNlNGO0k2Q21GTSxhQUFhO0U5RXExU2pCO0VzQ3A3U0Y7SXdDa0dNLHNCM0V0RlM7RUgyNlNiO0VnQng3U0Y7SThEdUdNLG9DQUFvQztFOUVvMVN4QztFOEVyMVNFOztJQUtJLGlDQUFtQztFOUVvMVN6QztFZ0J2NVNGOztJOEQwRVEsb0NBQXNDO0U5RWkxUzVDO0VnQnQwU0Y7SThETk0sY0FBYztFOUUrMFNsQjtFaUJyOFNBOzs7O0k2RDRITSxxQjNFdkhVO0VIczhTaEI7RWdCajJTRjtJOER1Qk0sY0FBYztJQUNkLHFCM0U3SFk7RUgwOFNoQjtBQUNGO0FBb21CQSx3Q0FBd0MsQztBK0V6alV4Qzs7OztFQUlFO0FBQ0Y7RUFDRSxnQkFBZ0I7QUFDbEI7QUFDQTtFQUNFLGNBQWM7RUFDZCxhQUFhO0VBQ2IsWUFBWTtFQUNaLFdBQVc7QUFDYjtBQUNBO0VBQ0U7SUFDRSxXQUFXO0VBQ2I7QUFDRjtBQUNBO0VBQ0U7SUFDRSxXQUFXO0VBQ2I7QUFDRjtBQUNBO0VBQ0U7SUFDRSxXQUFXO0VBQ2I7QUFDRjtBQUNBOztFQUVFLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsa0JBQWtCO0FBQ3BCO0FBQ0E7RUFDRSxrQ0FBa0M7RUFDbEMsbUNBQW1DO0VBQ25DLDZCQUE2QjtFQUM3Qix1Q0FBdUM7RUFDdkMsU0FBUztFQUNULFNBQVM7QUFDWDtBQUNBO0VBQ0Usa0NBQWtDO0VBQ2xDLG1DQUFtQztFQUNuQyw4QkFBOEI7RUFDOUIsU0FBUztFQUNULFNBQVM7QUFDWDtBQUNBO0VBQ0Usa0NBQWtDO0VBQ2xDLG1DQUFtQztFQUNuQywwQkFBMEI7RUFDMUIsb0NBQW9DO0VBQ3BDLFlBQVk7RUFDWixTQUFTO0FBQ1g7QUFDQTtFQUNFLGtDQUFrQztFQUNsQyxtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBQzNCLFlBQVk7RUFDWixTQUFTO0FBQ1g7QUFDQTtFQUNFLFVBQVU7RUFDVixVQUFVO0FBQ1o7QUFDQTtFQUNFLFVBQVU7RUFDVixVQUFVO0FBQ1o7QUFDQTtFQUNFLFNBQVM7QUFDWDtBQUNBO0VBQ0UsY0FBYztBQUNoQjtBQUNBO0VBQ0UsZ0JBQWdCO0FBQ2xCO0FBQ0E7OztFQUdFLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLFNBQVM7QUFDWDtBQUNBO0VBQ0UsWUFBWTtBQUNkO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULDBCQUEwQjtBQUM1QjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCw0QkFBNEI7QUFDOUI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsMEJBQTBCO0FBQzVCO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULDRCQUE0QjtBQUM5QjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxxQkFBcUI7QUFDdkI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsdUJBQXVCO0FBQ3pCO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULHVCQUF1QjtBQUN6QjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCwyQkFBMkI7QUFDN0I7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsZ0NBQWdDO0FBQ2xDO0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsdUNBQXVDO0FBQ3pDO0FBQ0E7RUFDRSxVQUFVO0VBQ1YsU0FBUztFQUNULFlBQVk7RUFDWixXQUFXO0VBQ1gsb0JBQW9CO0FBQ3RCO0FBQ0E7O0VBRUUsZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixXQUFXO0FBQ2I7QUFDQTtFQUNFLFdBQVc7RUFDWCxTQUFTO0FBQ1g7QUFDQTs7RUFFRSxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLGNBQWM7QUFDaEI7QUFDQTtFQUNFLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsV0FBVztBQUNiO0FBQ0E7RUFDRSxZQUFZO0FBQ2Q7QUFDQTs7RUFFRSxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCx5QkFBeUI7QUFDM0I7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QscUJBQXFCO0FBQ3ZCO0FBQ0E7RUFDRSxlQUFlO0FBQ2pCO0FBQ0E7RUFDRSxtQkFBbUI7QUFDckI7QUFDQTtFQUNFLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsV0FBVztBQUNiO0FBQ0E7RUFDRSxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFdBQVc7QUFDYjtBQUNBOzs7O0VBSUUsbUJBQW1CO0VBQ25CLGVBQWU7QUFDakI7QUFDQTs7RUFFRSxjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLHlCQUF5QjtFQUN6Qiw0QkFBNEI7RUFDNUIsb0NBQW9DO0VBQ3BDLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsVUFBVTtBQUNaO0FBQ0E7O0VBRUUseUJBQXlCO0VBQ3pCLGNBQWM7RUFDZCx5Q0FBeUM7QUFDM0M7QUFDQTtFQUNFLHlCQUF5QjtBQUMzQjtBQUNBOztFQUVFLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsbUJBQW1CO0FBQ3JCO0FBQ0E7O0VBRUUscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2Ysc0JBQXNCO0FBQ3hCO0FBQ0E7O0VBRUUsbUJBQW1CO0FBQ3JCO0FBQ0E7O0VBRUUseUJBQXlCO0VBQ3pCLGNBQWM7RUFDZCx5Q0FBeUM7QUFDM0M7QUFDQTs7RUFFRSxjQUFjO0FBQ2hCO0FBQ0E7Ozs7RUFJRSxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjtBQUNBO0VBQ0UsWUFBWTtFQUNaLGlCQUFpQjtBQUNuQjtBQUNBO0VBQ0UsV0FBVztBQUNiO0FBQ0E7RUFDRSw2QkFBNkI7QUFDL0I7QUFDQTtFQUNFLGVBQWU7QUFDakI7QUFDQTtFQUNFLGVBQWU7QUFDakI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0FBQ1g7O0FDaFlBLE1BQ0kseUNBQTZDLENBQzdDLHFDQUF5QyxDQUN6QyxzQkFBdUIsQ0FDdkIscUNBQXlDLENBR3pDLCtCQUFnQyxDQUNoQyx5QkFBd0MsQ0FDeEMsMkNBQTRDLENBRzVDLG1CQUFvQixDQUNwQixvQkFBcUIsQ0FHckIsOEJBQTBDLENBQzFDLGlEQUFrRCxDQUNsRCwwREFBMkQsQ0FDM0Qsc0NBQXVDLENBR3ZDLDRDQUE2QyxDQUM3QyxxQkFBc0IsQ0FDdEIsdUJBQXdCLENBQ3hCLHNCQUF1QixDQUd2QixrQ0FBbUMsQ0FHbkMsMkNBQTRDLENBQzVDLG9CQUFxQixDQUNyQixnREFBaUQsQ0FHakQsd0JBQXlCLENBQ3pCLDBDQUEyQyxDQUMzQyxpREFBa0QsQ0FDbEQsaURBQWtELENBQ2xELGlEQUFrRCxDQUdsRCxxQkFBc0IsQ0FDdEIsMkJBQTRCLENBQzVCLDBCQUEyQixDQUMzQiw2QkFBOEIsQ0FDOUIsOEJBQStCLENBQy9CLGtFQUFtRSxDQUduRSw0QkFBNkIsQ0FDN0IsbURBQW9ELENBQ3BELHFDQUFzQyxDQUd0Qyx1Q0FBd0MsQ0FDeEMsdUNBQXdDLENBR3hDLHlDQUEwQyxDQUMxQyx5Q0FBMEMsQ0FHMUMsa0VBQXNFLENBQ3RFLDhCQUNKLENDbEVBLFVBRUUsbUJBQW9CLENBRHBCLGlCQUVGLENBRUEsc0JBRUUscUJBQ0YsQ0NSQSxNQUNJLHlEQUE2RCxDQUM3RCw4QkFDSixDQUdBLGtDQUNJLEdBQ0ksc0JBQ0osQ0FDQSxHQUNJLHVCQUNKLENBQ0osQ0FFQSwwQkFDSSxHQUNJLHNCQUNKLENBQ0EsR0FDSSx1QkFDSixDQUNKLENBR0EsOENBRUksbUJBQW9CLENBQ3BCLHFGQUVKLENBQ0EsbUNBRUksU0FDSixDQ3ZCQSxNQUNJLDRDQUE2QyxDQUM3QyxrREFBbUQsQ0FDbkQsb0RBQ0osQ0FHSSxvSkFNSSxzQ0FBdUMsQ0FEdkMsZ0NBRUosQ0FZQSxnQ0FDSSxtQkFDSixDQUVBLDhCQUNJLGVBQWdCLENBQ2hCLGNBQ0osQ0FFQSxpQ0FDSSxhQUFjLENBQ2QsZ0JBQ0osQ0FFQSxzQ0FDSSxnQkFDSixDQ3pDSixxQkFDSSx1QkFBZ0IsQ0FBaEIsb0JBQWdCLENBQWhCLGVBQWdCLENBR2hCLG9DQUFxQyxDQUNyQywyRUFBNEUsQ0FDNUUscUNBQXNDLENBSnRDLFlBQWEsQ0FDYixlQUFrQixDQUlsQixrQkFDSixDQUVBLHNCQUNJLFlBQWEsQ0FDYixlQUFnQixDQUNoQixXQUFZLENBQ1osY0FBZSxDQUNmLGFBQWMsQ0FDZCxpQkFDSixDQUVBLGFBRUksa0JBQW1CLENBRG5CLFlBQWEsQ0FFYixpQ0FDSixDQUdBLHFDQUNJLFdBQ0osQ0FDQSx1Q0FDSSxjQUNKLENBQ0EsK0JBQ0ksK0JBQWdDLENBQ2hDLDJCQUE0QixDQUM1Qiw0QkFDSixDQ3pDQSxvQkFDSSw2QkFBOEIsQ0FDOUIsd0NBQXlDLENBQ3pDLHVGQUN3QyxDQUN4QywrREFDSixDQUlBLDhCQUNJLHVEQUNKLENBSUEsaUNBQ0ksU0FDSixDQ3ZCQSxXQUNJLDZCQUE4QixDQUc5Qiw0QkFBNkIsQ0FEN0IsUUFBUyxDQUVULGNBQWUsQ0FDZixnQkFBaUIsQ0FKakIsU0FLSixDQ1BBLG1CQW9CSSxnQ0FBaUMsQ0FMakMsMkVBQTRFLENBRTVFLGlFQUFrRSxDQURsRSxxQkFBc0IsQ0FGdEIsd0NBQXlDLENBWnpDLHFCQUFzQixDQW1CdEIsOEJBQStCLENBcEIvQixhQUFjLENBS2QsTUFBTyxDQWFQLGVBQWdCLENBVmhCLFFBQVMsQ0FFVCx3Q0FBeUMsQ0FDekMsc0NBQXVDLENBQ3ZDLGVBQWdCLENBTGhCLGFBQWMsQ0FMZCxpQkFBa0IsQ0FlbEIsZUFBZ0IsQ0FiaEIsdUNBQXdDLENBS3hDLFVBQVcsQ0FIWCxrQ0FlSixDQUVBLGdCQUNJLGlCQUNKLENDM0JBLHFCQUlJLFVBQVcsQ0FDWCxxQ0FBc0MsQ0FFdEMsY0FBZSxDQUxmLGFBQWMsQ0FEZCxzQkFBdUIsQ0FFdkIseUNBQTBDLENBRzFDLGtCQUVKLENBRUEsZ0NBQ0ksK0NBQWdELENBQ2hELDZDQUNKLENBRUEsK0JBQ0ksaURBQWtELENBQ2xELCtDQUNKLENBRUEsK0JBQ0ksc0NBQXVDLENBQ3ZDLG9DQUFxQyxDQUNyQyxzQ0FDSixDQ3hCQSxjQUVJLGtCQUFtQixDQUNuQixzQ0FBdUMsQ0FDdkMsc0dBQ21DLENBQ25DLHFDQUFzQyxDQUN0Qyw4QkFBK0IsQ0FOL0IsWUFBYSxDQU9iLGlDQUFrQyxDQUNsQyxnQkFBdUIsQ0FDdkIsZUFBaUIsQ0FDakIsU0FDSixDQUVBLGNBUUksNkJBQThCLENBTjlCLHVCQUFnQixDQUFoQixvQkFBZ0IsQ0FBaEIsZUFBZ0IsQ0FLaEIsZUFBZ0IsQ0FGaEIsUUFBUyxDQUNULGNBQWUsQ0FMZixtQkFBb0IsQ0FFcEIsZUFBZ0IsQ0FDaEIsU0FBVSxDQUtWLG9EQUNKLENBS0ksMEJBQ0ksNEJBQTZCLENBQzdCLHdCQUNKLENBQ0EseUVBR0ksVUFBWSxDQURaLGlCQUVKLENBQ0Esd0NBQ0ksWUFDSixDQ2xDSiwwQ0FDSSxZQUNKLENBRUEsd0pBSUksWUFDSixDQUVBLDhCQUdJLHVCQUFnQixDQUFoQixvQkFBZ0IsQ0FBaEIsZUFBZ0IsQ0FRaEIsZUFBZ0IsQ0FKaEIsNEJBQWlCLENBQWpCLGdCQUFpQixDQUtqQixlQUFnQixDQVZoQixrQ0FBbUMsQ0FhbkMsV0FBWSxDQVZaLDZCQUE4QixDQUQ5QixpQ0FBa0MsQ0FLbEMsY0FBaUIsQ0FLakIsY0FBZSxDQU5mLFlBQWEsQ0FFYixhQUFjLENBR2QsT0FBUSxDQUdSLFNBQ0osQ0FFQSw4QkFDSSw4Q0FDSixDQUZBLGtDQUNJLDhDQUNKLENBRkEseUJBQ0ksOENBQ0osQ0FRSSw4QkFDSSxTQUNKLENBQ0EsaURBQ0ksY0FDSixDQUtBLHVFQUNJLFVBQ0osQ0MxREosYUFDSSxpQkFBa0IsQ0FXbEIscURBQThDLENBQTlDLDZDQUE4QyxDQUg5QyxtQ0FBK0MsQ0FBL0Msb0NBQStDLENBTi9DLGFBQWMsQ0FEZCxTQUFVLENBR1YsZUFBZ0IsQ0FEaEIsbUJBQW9CLENBTXBCLHVGQUNvRSxDQUVwRSxzQkFDSixDQUNBLGdDQUVJLGlCQUFrQixDQUVsQixVQUFXLENBQ1gseUVBQTJFLENBRjNFLFNBR0osQ0FHQSwwQkFDSSxTQUNKOztBQ3pCQSx3Q0FBd0MsQztBQ0Z4Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUE2QkU7QUFDRjs7RUFFRTtBQUNGO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOzs7Ozs7RUFNRSw2QkFBNkI7QUFDL0I7O0FBRUEsbUJBQW1CO0FBQ25CO0VBQ0UsU0FBUztFQUNULHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxpQkFBaUI7QUFDbkI7O0FBRUE7O0VBRUUsOEJBQThCO0FBQ2hDOztBQUVBOzs7Ozs7RUFNRSxpQkFBaUI7RUFDakIsVUFBVTtBQUNaOztBQUVBOzs7Ozs7OztFQVFFLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7QUFDQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFFBQVE7QUFDVjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQiw0RkFBNEY7RUFDNUYsUUFBUTtFQUNSLFlBQVk7QUFDZDs7QUFFQTs7Ozs7Ozs7RUFRRSx1QkFBdUI7RUFDdkIsK0JBQStCO0VBQy9CLDRCQUE0QjtBQUM5Qjs7QUFFQTs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsdUtBQXVLO0VBQ3ZLLDhGQUE4RjtFQUM5Rjs7Ozs7O0dBTUM7RUFDRCxpQkFBaUI7RUFDakIsU0FBUztFQUNULGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsUUFBUTtFQUNSLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsNEdBQTRHO0VBQzVHLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQiw0QkFBNEI7RUFDNUIsNkJBQTZCO0VBQzdCLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixvRkFBb0Y7RUFDcEYsc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQiwyQkFBMkI7QUFDN0I7O0FBRUE7RUFDRSwyQkFBMkI7RUFDM0IsaUJBQWlCO0VBQ2pCLDRCQUE0QjtFQUM1Qiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSwyQkFBMkI7RUFDM0Isa0JBQWtCO0VBQ2xCLDJCQUEyQjtBQUM3Qjs7QUFFQTs7O0VBR0UsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBLDBGQUEwRjtBQUMxRjtFQUNFLG9CQUFvQjtFQUNwQiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRSxxQkFBcUI7RUFDckIsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLDRCQUE0QjtBQUM5Qjs7QUFFQTs7O0VBR0U7QUFDRjs7OztFQUlFLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsZ0JBQWdCO0FBQ2xCOztBQUVBLGNBQWM7QUFDZDtFQUNFLGtCQUFrQjtFQUNsQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUEseUNBQXlDO0FBQ3pDO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBLGdCQUFnQjtBQUNoQjtFQUNFLFlBQVk7RUFDWixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7OztFQUdFLGFBQWE7QUFDZjs7QUFFQTs7OztFQUlFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGtCQUFrQjtBQUNwQjs7QUFFQTs7O0VBR0UsZ0JBQWdCO0FBQ2xCO0FBQ0EsZ0JBQWdCO0FBQ2hCO0VBQ0UsMEJBQTBCO0VBQzFCLDZIQUE2SDtFQUM3SCxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsYUFBYTtBQUNmOztBQUVBO0VBQ0UsbURBQW1EO0VBQ25ELG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLDZIQUE2SDtFQUM3SCxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxvQkFBb0I7RUFDcEIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGVBQWU7QUFDakI7O0FBRUEsWUFBWTtBQUNaLHdCQUF3QjtBQUN4QjtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixVQUFVO0VBQ1YsWUFBWTtBQUNkOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxXQUFXO0FBQ2I7O0FBRUE7Ozs7RUFJRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLE1BQU07RUFDTix5QkFBeUI7RUFDekIsYUFBYTtFQUNiLFFBQVE7RUFDUiw2QkFBNkI7RUFDN0IsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsNEJBQTRCO0VBQzVCLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxTQUFTO0VBQ1QseUJBQXlCO0VBQ3pCLGFBQWE7RUFDYixTQUFTO0VBQ1QsOEJBQThCO0VBQzlCLGVBQWU7QUFDakI7O0FBRUE7O0VBRUUsY0FBYztFQUNkLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLDBCQUEwQjtFQUMxQixlQUFlO0FBQ2pCLEVBQUUsbUJBQW1CO0FBQ3JCO0VBQ0Usb0JBQW9CO0VBQ3BCLFFBQVE7RUFDUix3R0FBd0c7RUFDeEcsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixnSEFBZ0g7RUFDaEgsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFdBQVc7RUFDWCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVix3QkFBd0I7RUFDeEIsNEJBQTRCO0VBQzVCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixnSEFBZ0g7RUFDaEgsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixVQUFVO0VBQ1YsWUFBWTtFQUNaLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLGtFQUFrRTtFQUNsRSxtVkFBbVY7QUFDclY7O0FBRUE7RUFDRSxvRUFBb0U7RUFDcEUsbVZBQW1WO0FBQ3JWOztBQUVBO0VBQ0UsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEI7c0hBQ29IO0VBQ3BILG1CQUFtQjtBQUNyQjs7QUFFQTs7Ozs7Ozs7RUFRRSxrQkFBa0I7QUFDcEI7O0FBRUE7Ozs7Ozs7O0VBUUUsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7RUFDUixTQUFTO0VBQ1QsNEZBQTRGO0VBQzVGLGlCQUFpQjtFQUNqQixtQkFBbUI7QUFDckI7O0FBRUEsc0dBQXNHO0FBQ3RHO0VBQ0U7Ozs7Ozs7O0lBUUUsYUFBYTtFQUNmO0FBQ0Y7QUFDQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULHNCQUFzQjtFQUN0QixvQkFBb0I7RUFDcEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixtQ0FBbUM7RUFDbkMsWUFBWTtFQUNaLHlFQUF5RTtFQUN6RSxjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIscURBQXFEO0FBQ3ZEOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0FBQ1Q7O0FBRUE7RUFDRSw4Q0FBOEM7RUFDOUMsa0JBQWtCO0VBQ2xCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7Q0FFQztBQUNEO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0VBQ1osV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsY0FBYztBQUNoQjs7QUFFQTs7Q0FFQztBQUNEO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztDQUVDO0FBQ0Q7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7O0NBRUM7QUFDRDtFQUNFLFdBQVc7QUFDYjs7QUFFQTs7RUFFRTtBQUNGO0VBQ0UsU0FBUztBQUNYOztBQUVBO0VBQ0Usc0JBQXNCO0VBQ3RCLHlCQUF5QjtFQUN6QixpQkFBaUI7QUFDbkI7O0FBRUE7Ozs7O0VBS0Usb0NBQW9DO0FBQ3RDOztBQUVBOztFQUVFLG1CQUFtQjtFQUNuQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsOEJBQThCO0VBQzlCLFdBQVc7RUFDWCxVQUFVO0VBQ1YseUJBQXlCO0VBQ3pCLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLGVBQWU7RUFHZix3Q0FBd0M7RUFDeEMsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFlBQVk7RUFDWixTQUFTO0FBQ1g7QUFDQTs7OztFQUlFO0FBQ0Y7O0VBRUUsMkJBQTJCO0VBQzNCLHlCQUF5QjtFQUV6QixzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGlCQUFpQjtFQUNqQiw2Q0FBNkM7RUFDN0MsaUNBQWlDO0FBQ25DOztBQUVBO0VBR0UsbUNBQW1DO0VBQ25DLHdCQUF3QjtBQUMxQjs7QUFFQTs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUEsMkVBQTJFO0FBQzNFOzs7O0VBSUUsY0FBYztFQUNkLFlBQVk7RUFDWixhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsV0FBVztBQUNiOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLDRCQUE0QjtFQUM1Qiw2QkFBNkI7RUFDN0IscUNBQXFDO0FBQ3ZDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLDRCQUE0QjtFQUM1Qiw2QkFBNkI7RUFDN0IscUNBQXFDO0FBQ3ZDO0FBQ0EsZ0JBQWdCO0FBQ2hCOzs7RUFHRTtBQUNGO0VBQ0UsYUFBYTtFQUNiLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIseUJBQXlCO0VBQ3pCLDJEQUEyRDtBQUM3RDs7QUFFQTs7O0NBR0M7QUFDRDs7RUFFRSxZQUFZO0VBQ1osY0FBYztBQUNoQjs7QUFFQTtFQUNFLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQiw4Q0FBOEM7QUFDaEQ7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixTQUFTO0VBQ1QsT0FBTztFQUNQLFFBQVE7RUFDUixVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsY0FBYztFQUNkLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLFNBQVM7RUFDVCxVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWix1RUFBdUU7RUFDdkUsaUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsNkJBQTZCO0VBQzdCLGtDQUFrQztFQUNsQyw0QkFBNEI7RUFDNUIsd0JBQXdCO0VBQ3hCLFlBQVk7QUFDZDs7QUFFQTs7RUFFRSxVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsV0FBVztFQUNYLDJPQUEyTztBQUM3Tzs7QUFFQTs7RUFFRSxZQUFZO0VBQ1osMk9BQTJPO0FBQzdPOztBQUVBOztFQUVFLGVBQWU7RUFDZixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQixTQUFTO0FBQ1g7O0FBRUE7O0VBRUUscUJBQXFCO0VBQ3JCLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsY0FBYztFQUNkLHNCQUFzQjtFQUN0QiwyQkFBMkI7RUFDM0IsYUFBYTtFQUNiLFNBQVM7RUFDVCxTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7RUFDWixXQUFXO0VBQ1gsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsV0FBVztBQUNiOztBQUVBO0VBQ0UsY0FBYztFQUNkLGlCQUFpQjtBQUNuQjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixtQ0FBbUM7RUFDbkMsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLG1DQUFtQztBQUNyQzs7QUFFQTs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIsZUFBZTtFQUNmLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLGVBQWU7QUFDakI7O0FBRUE7O0VBRUUsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0FBQ3BCOztBQUVBLHFCQUFxQjtBQUNyQjtFQUNFLG1CQUFtQjtFQUNuQixZQUFZO0FBQ2Q7QUFDQTs7Q0FFQztBQUNEO0VBQ0UsWUFBWTtFQUNaLGVBQWU7RUFDZixXQUFXO0VBQ1gsZUFBZTtFQUNmLFdBQVc7RUFDWCxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCO0FBQ0E7O0NBRUM7QUFDRDtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLFdBQVc7QUFDYjtBQUNBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFdBQVc7RUFDWCxrQ0FBa0M7RUFDbEMsa0JBQWtCO0VBQ2xCLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLE9BQU87RUFDUCxZQUFZO0VBQ1osbUNBQW1DO0VBQ25DLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGFBQWE7RUFDYixhQUFhO0VBQ2Isa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZ0ZBQWdGO0VBR2hGLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osMkJBQTJCO0VBQzNCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLFlBQVk7RUFDWixlQUFlO0VBQ2YsWUFBWTtFQUNaLHVCQUF1QjtFQUN2Qix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSw0QkFBNEI7RUFDNUIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UseUdBQXlHO0VBQ3pHLDhCQUE4QjtFQUM5QixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSwrQkFBK0I7RUFDL0IsaUJBQWlCO0FBQ25CO0FBQ0E7O0VBRUU7QUFDRjtFQUNFLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsK0VBQStFO0VBQy9FLGFBQWE7QUFDZjs7QUFFQTs7Ozs7RUFLRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFDeEIsc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtFQUN2QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsc0JBQXNCO0VBQ3RCLG9CQUFvQjtFQUNwQixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsU0FBUztBQUNYOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCO0FBQ0E7RUFDRSwwQkFBMEI7RUFDMUIsaUJBQWlCO0VBQ2pCLHNCQUFzQjtFQUN0QixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLDBCQUEwQjtBQUM1QjtBQUNBLGdCQUFnQjtBQUNoQjs7RUFFRTtBQUNGO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLCtFQUErRTtFQUMvRSxhQUFhO0FBQ2Y7O0FBRUE7Ozs7O0VBS0UsYUFBYTtBQUNmOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIsd0JBQXdCO0VBQ3hCLHNCQUFzQjtFQUN0Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7RUFDdkIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLGVBQWU7RUFDZixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0FBQ2hCOztBQUVBOztFQUVFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixTQUFTO0VBQ1QsVUFBVTtFQUNWLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixTQUFTO0FBQ1g7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7QUFDQSxnQkFBZ0I7QUFDaEI7O0VBRUU7QUFDRixvQkFBb0I7QUFDcEI7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLGFBQWE7QUFDZjs7QUFFQTs7O0VBR0UsYUFBYTtBQUNmOztBQUVBO0VBQ0Usc0JBQXNCO0VBQ3RCLHdCQUF3QjtFQUN4Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixTQUFTO0FBQ1g7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsYUFBYTtFQUNiLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixZQUFZO0FBQ2Q7O0FBRUEsZUFBZTtBQUNmO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBLHlCQUF5QjtBQUN6QjtFQUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsbUJBQW1CO0FBQ3JCOztBQUVBLG9DQUFvQztBQUNwQztFQUNFLHlDQUF5QztBQUMzQzs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSw4QkFBOEI7QUFDOUI7RUFDRSx5Q0FBeUM7QUFDM0M7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsb0JBQW9CO0VBQ3BCLGlCQUFpQjtFQUNqQixZQUFZO0VBQ1osc0JBQXNCO0VBQ3RCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBQ2QseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2Qsc0JBQXNCO0VBQ3RCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0FBQ2pCOztBQUVBLGdCQUFnQjtBQUNoQixVQUFVO0FBQ1Y7RUFDRSxvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUEsV0FBVztBQUNYO0VBQ0UsZUFBZTtFQUNmLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQSxXQUFXO0FBQ1g7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLDBCQUEwQjtFQUMxQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6Qix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxZQUFZO0VBQ1osY0FBYztFQUNkLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsTUFBTTtBQUNSOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7QUFDVjs7QUFFQSxtQkFBbUI7QUFDbkI7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7QUFDQSxnQkFBZ0I7QUFDaEI7O0VBRUU7QUFDRjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixjQUFjO0VBQ2QsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsVUFBVTtFQUNWLFlBQVksRUFBRSxlQUFlO0FBQy9COztBQUVBO0VBQ0UsY0FBYztFQUNkLFNBQVM7RUFDVCxZQUFZLEVBQUUsZ0JBQWdCO0FBQ2hDOztBQUVBO0VBQ0UsU0FBUztFQUNULFlBQVksRUFBRSxnQkFBZ0I7QUFDaEM7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsYUFBYTtFQUNiLFlBQVksRUFBRSxlQUFlO0FBQy9CO0FBQ0EsZ0JBQWdCO0FBQ2hCOztFQUVFO0FBQ0Y7O0VBRUUsV0FBVztFQUNYLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFNBQVM7QUFDWDs7QUFFQTs7RUFFRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osV0FBVztBQUNiOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFFBQVE7QUFDVjs7QUFFQTs7RUFFRSxXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCO0FBQ0E7O0VBRUUsbUJBQW1CO0FBQ3JCO0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxZQUFZO0VBRVosb0JBQW9CO0VBQ3BCLFlBQVk7QUFDZDs7QUFFQTs7RUFFRSxZQUFZO0VBRVosd0JBQXdCO0VBQ3hCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixVQUFVO0VBQ1YsTUFBTTtFQUNOLDBCQUF5QjtVQUF6Qix5QkFBeUI7RUFDekIscUJBQW9CO1VBQXBCLG9CQUFvQjtFQUNwQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsa0NBQWtDO0VBQ2xDLGFBQWE7RUFDYixZQUFZO0VBQ1osb0JBQW9CO0FBQ3RCOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7QUFDQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFlBQVk7RUFFWixvQkFBb0I7RUFDcEIsWUFBWTtBQUNkOztBQUVBOztFQUVFLFlBQVk7RUFFWix3QkFBd0I7RUFDeEIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBOztFQUVFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsYUFBYTtBQUNmOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCxPQUFPO0VBQ1AsZ0JBQWdCO0VBQ2hCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixrQ0FBa0M7RUFDbEMsYUFBYTtFQUNiLFlBQVk7RUFDWixvQkFBb0I7QUFDdEI7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjtBQUNBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmO0FBQ0EsNkJBQTZCO0FBQzdCO0VBQ0Usb0JBQW9CO0VBQ3BCLFFBQVE7RUFDUixpSUFBaUk7RUFDakksZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxtSEFBbUg7RUFDbkgsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQiw4QkFBOEI7RUFDOUIsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixtSEFBbUg7RUFDbkgsa0JBQWtCO0VBQ2xCLG1CQUFtQjtBQUNyQjs7QUFFQSwwR0FBMEc7QUFDMUc7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUEsOEZBQThGO0FBQzlGOztFQUVFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQSxnSEFBZ0g7QUFDaEg7RUFDRSxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLGFBQWE7QUFDZjtBQUNBLGdCQUFnQjtBQUNoQjtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsWUFBWTtBQUNkOztBQUVBO0VBQ0UsV0FBVztFQUNYLFdBQVc7QUFDYjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsV0FBVztBQUNiOztBQUVBO0VBQ0UsVUFBVTtFQUNWLFlBQVk7QUFDZDs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsV0FBVztFQUNYLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7RUFDWixjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixXQUFXO0FBQ2I7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxXQUFXO0VBQ1gsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFVBQVU7RUFDVixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsUUFBUTtFQUNSLFdBQVc7QUFDYjs7QUFFQTtFQUNFLE9BQU87RUFDUCxZQUFZO0FBQ2Q7O0FDM25FQSxnQkFBZ0I7QS9GQWhCOzs7OztFQUFBO0FFQUE7RUFHSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBS0Y7RUFDQTtBNkZzQkY7O0E1RnJCQTs7O0VBR0U7QTRGd0JGOztBNUZyQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNEZ3QkY7O0E1RmxCQTtFQUNFO0E0RnFCRjs7QTVGWEE7RUFDRTtFQUNBLGlDNkYzQ3VCO0UzRjJIbkIsaUJBdENhO0VGeENqQixnQkM4TzRCO0VEN081QixnQjZGNUNpQjtFN0Y2Q2pCLGNDbkNTO0VEb0NUO0VBQ0EseUI2RnBEUTtBRGtFVjs7QTVGRkE7RUFDRTtBNEZLRjs7QTVGSUE7RUFDRTtFQUNBO0VBQ0E7QTRGREY7O0E1RmNBO0VBQ0U7RUFDQSxxQkNnTjRCO0EyRjNOOUI7O0E1RmtCQTtFQUNFO0VBQ0EsbUJDb0YwQjtBMkZuRzVCOztBNUYwQkE7O0VBRUU7RUFDQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QTRGdkJGOztBNUYwQkE7RUFDRTtFQUNBO0VBQ0E7QTRGdkJGOztBNUYwQkE7OztFQUdFO0VBQ0E7QTRGdkJGOztBNUYwQkE7Ozs7RUFJRTtBNEZ2QkY7O0E1RjBCQTtFQUNFLGdCQ2lKNEI7QTJGeEs5Qjs7QTVGMEJBO0VBQ0U7RUFDQTtBNEZ2QkY7O0E1RjBCQTtFQUNFO0E0RnZCRjs7QTVGMEJBOztFQUVFLG1CQ29JNEI7QTJGM0o5Qjs7QTVGMEJBO0VFeEZJO0EwRmtFSjs7QTVGK0JBOztFQUVFO0VFbkdFO0VGcUdGO0VBQ0E7QTRGNUJGOztBNUYrQkE7RUFBTTtBNEYzQk47O0E1RjRCQTtFQUFNO0E0RnhCTjs7QTVGK0JBO0VBQ0UsY0NYd0M7RURZeEMscUJDWHdDO0VEWXhDO0E0RjVCRjtBekZwSkU7RUhtTEUsY0Nkc0M7RURldEMsMEJDZHNDO0EyRmQxQzs7QTVGcUNBO0VBQ0U7RUFDQTtBNEZsQ0Y7QXpGN0pFO0VIa01FO0VBQ0E7QTRGbENKOztBNUYyQ0E7Ozs7RUFJRSxpR0N5RDRCO0VDN00xQjtBMEY2R0o7O0E1RjJDQTtFQUVFO0VBRUE7RUFFQTtFQUdBO0E0RjdDRjs7QTVGcURBO0VBRUU7QTRGbkRGOztBNUYyREE7RUFDRTtFQUNBO0E0RnhERjs7QTVGMkRBO0VBR0U7RUFDQTtBNEYxREY7O0E1RmtFQTtFQUNFO0E0Ri9ERjs7QTVGa0VBO0VBQ0Usb0JDNkU0QjtFRDVFNUIsdUJDNEU0QjtFRDNFNUIsY0N0UVM7RUR1UVQ7RUFDQTtBNEYvREY7O0E1RnNFQTtFQUVFO0VBQ0E7QTRGcEVGOztBNUY0RUE7RUFFRTtFQUNBLHFCQzJKc0M7QTJGck94Qzs7QTVGZ0ZBO0VBRUU7QTRGOUVGOztBNUZzRkE7RUFDRTtBNEZuRkY7O0E1RnNGQTs7Ozs7RUFLRTtFQUNBO0VFNVBFO0VGOFBGO0E0Rm5GRjs7QTVGc0ZBOztFQUVFO0E0Rm5GRjs7QTVGc0ZBOztFQUVFO0E0Rm5GRjs7QTVGeUZBO0VBQ0U7QTRGdEZGOztBNUY0RkE7RUFDRTtBNEZ6RkY7O0E1RmdHQTs7OztFQUlFO0E0RjdGRjs7QTVGc0dJOzs7O0VBQ0U7QTRGaEdOOztBNUZzR0E7Ozs7RUFJRTtFQUNBO0E0Rm5HRjs7QTVGc0dBOztFQUVFO0VBQ0E7QTRGbkdGOztBNUZ1R0E7RUFDRTtFQUVBO0E0RnJHRjs7QTVGd0dBO0VBTUU7RUFFQTtFQUNBO0VBQ0E7QTRGM0dGOztBNUZnSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFblNJLGlCQXRDYTtFRjJVakI7RUFDQTtFQUNBO0E0RjdHRjs7QTVGZ0hBO0VBQ0U7QTRGN0dGOztBNUZpSEE7O0VBRUU7QTRGOUdGOztBNUZpSEE7RUFLRTtFQUNBO0E0RmxIRjs7QTVGeUhBO0VBQ0U7QTRGdEhGOztBNUY4SEE7RUFDRTtFQUNBO0E0RjNIRjs7QTVGa0lBO0VBQ0U7QTRGL0hGOztBNUZrSUE7RUFDRTtFQUNBO0E0Ri9IRjs7QTVGa0lBO0VBQ0U7QTRGL0hGOztBNUZvSUE7RUFDRTtBNEZqSUY7O0F4RjNWQTs7RUFFRSxxQkhxUzRCO0VHblM1QixnQkhxUzRCO0VHcFM1QixnQkhxUzRCO0EyRndEOUI7O0F4RnpWQTtFRmdITSxrQkF0Q2E7QTBGbVJuQjs7QXhGNVZBO0VGK0dNLGlCQXRDYTtBMEZ1Um5COztBeEYvVkE7RUY4R00sbUJBdENhO0EwRjJSbkI7O0F4RmxXQTtFRjZHTSxrQkF0Q2E7QTBGK1JuQjs7QXhGcldBO0VGNEdNLG1CQXRDYTtBMEZtU25COztBeEZ4V0E7RUYyR00saUJBdENhO0EwRnVTbkI7O0F4RjFXQTtFRnlHTSxtQkF0Q2E7RUVqRWpCLGdCSHVTNEI7QTJGc0U5Qjs7QXhGeldBO0VGbUdNLGVBdENhO0VFM0RqQixnQkgwUjRCO0VHelI1QixnQkhpUjRCO0EyRjJGOUI7O0F4RjFXQTtFRjhGTSxpQkF0Q2E7RUV0RGpCLGdCSHNSNEI7RUdyUjVCLGdCSDRRNEI7QTJGaUc5Qjs7QXhGM1dBO0VGeUZNLGlCQXRDYTtFRWpEakIsZ0JIa1I0QjtFR2pSNUIsZ0JIdVE0QjtBMkZ1RzlCOztBeEY1V0E7RUZvRk0saUJBdENhO0VFNUNqQixnQkg4UTRCO0VHN1E1QixnQkhrUTRCO0EyRjZHOUI7O0F4RnZXQTtFQUNFLGdCSGdGTztFRy9FUCxtQkgrRU87RUc5RVA7RUFDQTtBd0YwV0Y7O0F4RmxXQTs7RUZNSTtFRUhGLGdCSDBONEI7QTJGMkk5Qjs7QXhGbFdBOztFQUVFLGNIa1E0QjtFR2pRNUIseUJIMFE0QjtBMkYyRjlCOztBeEY3VkE7RUMvRUU7RUFDQTtBdUZnYkY7O0F4RjdWQTtFQ3BGRTtFQUNBO0F1RnFiRjs7QXhGL1ZBO0VBQ0U7QXdGa1dGO0F4RmhXRTtFQUNFLG9CSG9QMEI7QTJGOEc5Qjs7QXhGeFZBO0VGakNJO0VFbUNGO0F3RjJWRjs7QXhGdlZBO0VBQ0UsbUJIdUJPO0VDUkgsbUJBdENhO0EwRmtYbkI7O0F4RnZWQTtFQUNFO0VGN0NFO0VFK0NGLGNIMUdTO0EyRm9jWDtBeEZ4VkU7RUFDRTtBd0YwVko7O0F0RjdjQTtFQ0lFO0VBR0E7QXFGMmNGOztBdEY1Y0E7RUFDRSxnQkxtZ0NrQztFS2xnQ2xDLHlCdUZkUTtFdkZlUjtFRUVFO0VEUEY7RUFHQTtBcUZvZEY7O0F0RnRjQTtFQUVFO0FzRndjRjs7QXRGcmNBO0VBQ0U7RUFDQTtBc0Z3Y0Y7O0F0RnJjQTtFSmtDSTtFSWhDRixjTDNCUztBMkZtZVg7O0FuRi9lQTtFUHVFSTtFT3JFRixjb0ZvQks7RXBGbkJMO0FtRmtmRjtBbkYvZUU7RUFDRTtBbUZpZko7O0FuRjVlQTtFQUNFO0VQMERFO0VPeERGLFdvRmNNO0VwRmJOLHlCUkRTO0VPRVA7QW9GK2VKO0FuRjVlRTtFQUNFO0VQa0RBO0VPaERBLGdCUndRMEI7QTJGc085Qjs7QW5GeGVBO0VBQ0U7RVB5Q0U7RU92Q0YsY1JqQlM7QTJGNGZYO0FuRnhlRTtFUG9DRTtFT2xDQTtFQUNBO0FtRjBlSjs7QW5GcmVBO0VBQ0UsaUJSOGpDa0M7RVE3akNsQztBbUZ3ZUY7O0FsRmhoQkU7Ozs7OztFQ0RBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWlGMGhCRjs7QWhGdmVJO0VGekNFO0lBQ0UsZ0JUOExlO0UyRnNWckI7QUFDRjtBaEY3ZUk7RUZ6Q0U7SUFDRSxnQlQ4TGU7RTJGMlZyQjtBQUNGO0FoRmxmSTtFRnpDRTtJQUNFLGdCVDhMZTtFMkZnV3JCO0FBQ0Y7QWhGdmZJO0VGekNFO0lBQ0UsaUJUOExlO0UyRnFXckI7QUFDRjtBbEZ4Z0JFO0VDbkNBO0VBQ0E7RUFDQTtFQUNBO0FpRjhpQkY7O0FsRnhnQkU7RUFDRTtFQUNBO0FrRjJnQko7QWxGemdCSTs7RUFFRTtFQUNBO0FrRjJnQk47O0EvRWprQkU7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ErRXlrQko7O0EvRW5qQk07RUFDRTtFQUNBO0VBQ0E7QStFc2pCUjs7QWpGMWhCRTtFQUNFO0VBQ0E7QWlGNmhCSjs7QWpGL2hCRTtFQUNFO0VBQ0E7QWlGa2lCSjs7QWpGcGlCRTtFQUNFO0VBQ0E7QWlGdWlCSjs7QWpGemlCRTtFQUNFO0VBQ0E7QWlGNGlCSjs7QWpGOWlCRTtFQUNFO0VBQ0E7QWlGaWpCSjs7QWpGbmpCRTtFQUNFO0VBQ0E7QWlGc2pCSjs7QS9FemtCTTtFRkNKO0VBQ0E7RUFDQTtBaUY0a0JGOztBL0V6a0JVO0VGYlI7RUFJQTtBaUZ1bEJGOztBL0U5a0JVO0VGYlI7RUFJQTtBaUY0bEJGOztBL0VubEJVO0VGYlI7RUFJQTtBaUZpbUJGOztBL0V4bEJVO0VGYlI7RUFJQTtBaUZzbUJGOztBL0U3bEJVO0VGYlI7RUFJQTtBaUYybUJGOztBL0VsbUJVO0VGYlI7RUFJQTtBaUZnbkJGOztBL0V2bUJVO0VGYlI7RUFJQTtBaUZxbkJGOztBL0U1bUJVO0VGYlI7RUFJQTtBaUYwbkJGOztBL0VqbkJVO0VGYlI7RUFJQTtBaUYrbkJGOztBL0V0bkJVO0VGYlI7RUFJQTtBaUZvb0JGOztBL0UzbkJVO0VGYlI7RUFJQTtBaUZ5b0JGOztBL0Vob0JVO0VGYlI7RUFJQTtBaUY4b0JGOztBL0UvbkJNO0VBQXdCO0ErRW1vQjlCOztBL0Vqb0JNO0VBQXVCO0ErRXFvQjdCOztBL0Vsb0JRO0VBQXdCLFFBRGI7QStFdW9CbkI7O0EvRXRvQlE7RUFBd0IsUUFEYjtBK0Uyb0JuQjs7QS9FMW9CUTtFQUF3QixRQURiO0ErRStvQm5COztBL0U5b0JRO0VBQXdCLFFBRGI7QStFbXBCbkI7O0EvRWxwQlE7RUFBd0IsUUFEYjtBK0V1cEJuQjs7QS9FdHBCUTtFQUF3QixRQURiO0ErRTJwQm5COztBL0UxcEJRO0VBQXdCLFFBRGI7QStFK3BCbkI7O0EvRTlwQlE7RUFBd0IsUUFEYjtBK0VtcUJuQjs7QS9FbHFCUTtFQUF3QixRQURiO0ErRXVxQm5COztBL0V0cUJRO0VBQXdCLFFBRGI7QStFMnFCbkI7O0EvRTFxQlE7RUFBd0IsU0FEYjtBK0UrcUJuQjs7QS9FOXFCUTtFQUF3QixTQURiO0ErRW1yQm5COztBL0VsckJRO0VBQXdCLFNBRGI7QStFdXJCbkI7O0EvRS9xQlk7RUZoQlY7QWlGbXNCRjs7QS9FbnJCWTtFRmhCVjtBaUZ1c0JGOztBL0V2ckJZO0VGaEJWO0FpRjJzQkY7O0EvRTNyQlk7RUZoQlY7QWlGK3NCRjs7QS9FL3JCWTtFRmhCVjtBaUZtdEJGOztBL0Vuc0JZO0VGaEJWO0FpRnV0QkY7O0EvRXZzQlk7RUZoQlY7QWlGMnRCRjs7QS9FM3NCWTtFRmhCVjtBaUYrdEJGOztBL0Uvc0JZO0VGaEJWO0FpRm11QkY7O0EvRW50Qlk7RUZoQlY7QWlGdXVCRjs7QS9FdnRCWTtFRmhCVjtBaUYydUJGOztBaEZ0dUJJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0UrRXF3Qk47O0VqRnp1QkE7SUFDRTtJQUNBO0VpRjR1QkY7O0VqRjl1QkE7SUFDRTtJQUNBO0VpRml2QkY7O0VqRm52QkE7SUFDRTtJQUNBO0VpRnN2QkY7O0VqRnh2QkE7SUFDRTtJQUNBO0VpRjJ2QkY7O0VqRjd2QkE7SUFDRTtJQUNBO0VpRmd3QkY7O0VqRmx3QkE7SUFDRTtJQUNBO0VpRnF3QkY7O0UvRXh4Qkk7SUZDSjtJQUNBO0lBQ0E7RWlGMnhCQTs7RS9FeHhCUTtJRmJSO0lBSUE7RWlGc3lCQTs7RS9FN3hCUTtJRmJSO0lBSUE7RWlGMnlCQTs7RS9FbHlCUTtJRmJSO0lBSUE7RWlGZ3pCQTs7RS9FdnlCUTtJRmJSO0lBSUE7RWlGcXpCQTs7RS9FNXlCUTtJRmJSO0lBSUE7RWlGMHpCQTs7RS9FanpCUTtJRmJSO0lBSUE7RWlGK3pCQTs7RS9FdHpCUTtJRmJSO0lBSUE7RWlGbzBCQTs7RS9FM3pCUTtJRmJSO0lBSUE7RWlGeTBCQTs7RS9FaDBCUTtJRmJSO0lBSUE7RWlGODBCQTs7RS9FcjBCUTtJRmJSO0lBSUE7RWlGbTFCQTs7RS9FMTBCUTtJRmJSO0lBSUE7RWlGdzFCQTs7RS9FLzBCUTtJRmJSO0lBSUE7RWlGNjFCQTs7RS9FOTBCSTtJQUF3QjtFK0VrMUI1Qjs7RS9FaDFCSTtJQUF1QjtFK0VvMUIzQjs7RS9FajFCTTtJQUF3QixRQURiO0UrRXMxQmpCOztFL0VyMUJNO0lBQXdCLFFBRGI7RStFMDFCakI7O0UvRXoxQk07SUFBd0IsUUFEYjtFK0U4MUJqQjs7RS9FNzFCTTtJQUF3QixRQURiO0UrRWsyQmpCOztFL0VqMkJNO0lBQXdCLFFBRGI7RStFczJCakI7O0UvRXIyQk07SUFBd0IsUUFEYjtFK0UwMkJqQjs7RS9FejJCTTtJQUF3QixRQURiO0UrRTgyQmpCOztFL0U3MkJNO0lBQXdCLFFBRGI7RStFazNCakI7O0UvRWozQk07SUFBd0IsUUFEYjtFK0VzM0JqQjs7RS9FcjNCTTtJQUF3QixRQURiO0UrRTAzQmpCOztFL0V6M0JNO0lBQXdCLFNBRGI7RStFODNCakI7O0UvRTczQk07SUFBd0IsU0FEYjtFK0VrNEJqQjs7RS9FajRCTTtJQUF3QixTQURiO0UrRXM0QmpCOztFL0U5M0JVO0lGaEJWO0VpRms1QkE7O0UvRWw0QlU7SUZoQlY7RWlGczVCQTs7RS9FdDRCVTtJRmhCVjtFaUYwNUJBOztFL0UxNEJVO0lGaEJWO0VpRjg1QkE7O0UvRTk0QlU7SUZoQlY7RWlGazZCQTs7RS9FbDVCVTtJRmhCVjtFaUZzNkJBOztFL0V0NUJVO0lGaEJWO0VpRjA2QkE7O0UvRTE1QlU7SUZoQlY7RWlGODZCQTs7RS9FOTVCVTtJRmhCVjtFaUZrN0JBOztFL0VsNkJVO0lGaEJWO0VpRnM3QkE7O0UvRXQ2QlU7SUZoQlY7RWlGMDdCQTs7RS9FMTZCVTtJRmhCVjtFaUY4N0JBO0FBQ0Y7QWhGMTdCSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFK0V3OUJOOztFakY1N0JBO0lBQ0U7SUFDQTtFaUYrN0JGOztFakZqOEJBO0lBQ0U7SUFDQTtFaUZvOEJGOztFakZ0OEJBO0lBQ0U7SUFDQTtFaUZ5OEJGOztFakYzOEJBO0lBQ0U7SUFDQTtFaUY4OEJGOztFakZoOUJBO0lBQ0U7SUFDQTtFaUZtOUJGOztFakZyOUJBO0lBQ0U7SUFDQTtFaUZ3OUJGOztFL0UzK0JJO0lGQ0o7SUFDQTtJQUNBO0VpRjgrQkE7O0UvRTMrQlE7SUZiUjtJQUlBO0VpRnkvQkE7O0UvRWgvQlE7SUZiUjtJQUlBO0VpRjgvQkE7O0UvRXIvQlE7SUZiUjtJQUlBO0VpRm1nQ0E7O0UvRTEvQlE7SUZiUjtJQUlBO0VpRndnQ0E7O0UvRS8vQlE7SUZiUjtJQUlBO0VpRjZnQ0E7O0UvRXBnQ1E7SUZiUjtJQUlBO0VpRmtoQ0E7O0UvRXpnQ1E7SUZiUjtJQUlBO0VpRnVoQ0E7O0UvRTlnQ1E7SUZiUjtJQUlBO0VpRjRoQ0E7O0UvRW5oQ1E7SUZiUjtJQUlBO0VpRmlpQ0E7O0UvRXhoQ1E7SUZiUjtJQUlBO0VpRnNpQ0E7O0UvRTdoQ1E7SUZiUjtJQUlBO0VpRjJpQ0E7O0UvRWxpQ1E7SUZiUjtJQUlBO0VpRmdqQ0E7O0UvRWppQ0k7SUFBd0I7RStFcWlDNUI7O0UvRW5pQ0k7SUFBdUI7RStFdWlDM0I7O0UvRXBpQ007SUFBd0IsUUFEYjtFK0V5aUNqQjs7RS9FeGlDTTtJQUF3QixRQURiO0UrRTZpQ2pCOztFL0U1aUNNO0lBQXdCLFFBRGI7RStFaWpDakI7O0UvRWhqQ007SUFBd0IsUUFEYjtFK0VxakNqQjs7RS9FcGpDTTtJQUF3QixRQURiO0UrRXlqQ2pCOztFL0V4akNNO0lBQXdCLFFBRGI7RStFNmpDakI7O0UvRTVqQ007SUFBd0IsUUFEYjtFK0Vpa0NqQjs7RS9FaGtDTTtJQUF3QixRQURiO0UrRXFrQ2pCOztFL0Vwa0NNO0lBQXdCLFFBRGI7RStFeWtDakI7O0UvRXhrQ007SUFBd0IsUUFEYjtFK0U2a0NqQjs7RS9FNWtDTTtJQUF3QixTQURiO0UrRWlsQ2pCOztFL0VobENNO0lBQXdCLFNBRGI7RStFcWxDakI7O0UvRXBsQ007SUFBd0IsU0FEYjtFK0V5bENqQjs7RS9FamxDVTtJRmhCVjtFaUZxbUNBOztFL0VybENVO0lGaEJWO0VpRnltQ0E7O0UvRXpsQ1U7SUZoQlY7RWlGNm1DQTs7RS9FN2xDVTtJRmhCVjtFaUZpbkNBOztFL0VqbUNVO0lGaEJWO0VpRnFuQ0E7O0UvRXJtQ1U7SUZoQlY7RWlGeW5DQTs7RS9Fem1DVTtJRmhCVjtFaUY2bkNBOztFL0U3bUNVO0lGaEJWO0VpRmlvQ0E7O0UvRWpuQ1U7SUZoQlY7RWlGcW9DQTs7RS9Fcm5DVTtJRmhCVjtFaUZ5b0NBOztFL0V6bkNVO0lGaEJWO0VpRjZvQ0E7O0UvRTduQ1U7SUZoQlY7RWlGaXBDQTtBQUNGO0FoRjdvQ0k7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RStFMnFDTjs7RWpGL29DQTtJQUNFO0lBQ0E7RWlGa3BDRjs7RWpGcHBDQTtJQUNFO0lBQ0E7RWlGdXBDRjs7RWpGenBDQTtJQUNFO0lBQ0E7RWlGNHBDRjs7RWpGOXBDQTtJQUNFO0lBQ0E7RWlGaXFDRjs7RWpGbnFDQTtJQUNFO0lBQ0E7RWlGc3FDRjs7RWpGeHFDQTtJQUNFO0lBQ0E7RWlGMnFDRjs7RS9FOXJDSTtJRkNKO0lBQ0E7SUFDQTtFaUZpc0NBOztFL0U5ckNRO0lGYlI7SUFJQTtFaUY0c0NBOztFL0Vuc0NRO0lGYlI7SUFJQTtFaUZpdENBOztFL0V4c0NRO0lGYlI7SUFJQTtFaUZzdENBOztFL0U3c0NRO0lGYlI7SUFJQTtFaUYydENBOztFL0VsdENRO0lGYlI7SUFJQTtFaUZndUNBOztFL0V2dENRO0lGYlI7SUFJQTtFaUZxdUNBOztFL0U1dENRO0lGYlI7SUFJQTtFaUYwdUNBOztFL0VqdUNRO0lGYlI7SUFJQTtFaUYrdUNBOztFL0V0dUNRO0lGYlI7SUFJQTtFaUZvdkNBOztFL0UzdUNRO0lGYlI7SUFJQTtFaUZ5dkNBOztFL0VodkNRO0lGYlI7SUFJQTtFaUY4dkNBOztFL0VydkNRO0lGYlI7SUFJQTtFaUZtd0NBOztFL0VwdkNJO0lBQXdCO0UrRXd2QzVCOztFL0V0dkNJO0lBQXVCO0UrRTB2QzNCOztFL0V2dkNNO0lBQXdCLFFBRGI7RStFNHZDakI7O0UvRTN2Q007SUFBd0IsUUFEYjtFK0Vnd0NqQjs7RS9FL3ZDTTtJQUF3QixRQURiO0UrRW93Q2pCOztFL0Vud0NNO0lBQXdCLFFBRGI7RStFd3dDakI7O0UvRXZ3Q007SUFBd0IsUUFEYjtFK0U0d0NqQjs7RS9FM3dDTTtJQUF3QixRQURiO0UrRWd4Q2pCOztFL0Uvd0NNO0lBQXdCLFFBRGI7RStFb3hDakI7O0UvRW54Q007SUFBd0IsUUFEYjtFK0V3eENqQjs7RS9FdnhDTTtJQUF3QixRQURiO0UrRTR4Q2pCOztFL0UzeENNO0lBQXdCLFFBRGI7RStFZ3lDakI7O0UvRS94Q007SUFBd0IsU0FEYjtFK0VveUNqQjs7RS9FbnlDTTtJQUF3QixTQURiO0UrRXd5Q2pCOztFL0V2eUNNO0lBQXdCLFNBRGI7RStFNHlDakI7O0UvRXB5Q1U7SUZoQlY7RWlGd3pDQTs7RS9FeHlDVTtJRmhCVjtFaUY0ekNBOztFL0U1eUNVO0lGaEJWO0VpRmcwQ0E7O0UvRWh6Q1U7SUZoQlY7RWlGbzBDQTs7RS9FcHpDVTtJRmhCVjtFaUZ3MENBOztFL0V4ekNVO0lGaEJWO0VpRjQwQ0E7O0UvRTV6Q1U7SUZoQlY7RWlGZzFDQTs7RS9FaDBDVTtJRmhCVjtFaUZvMUNBOztFL0VwMENVO0lGaEJWO0VpRncxQ0E7O0UvRXgwQ1U7SUZoQlY7RWlGNDFDQTs7RS9FNTBDVTtJRmhCVjtFaUZnMkNBOztFL0VoMUNVO0lGaEJWO0VpRm8yQ0E7QUFDRjtBaEZoMkNJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0UrRTgzQ047O0VqRmwyQ0E7SUFDRTtJQUNBO0VpRnEyQ0Y7O0VqRnYyQ0E7SUFDRTtJQUNBO0VpRjAyQ0Y7O0VqRjUyQ0E7SUFDRTtJQUNBO0VpRisyQ0Y7O0VqRmozQ0E7SUFDRTtJQUNBO0VpRm8zQ0Y7O0VqRnQzQ0E7SUFDRTtJQUNBO0VpRnkzQ0Y7O0VqRjMzQ0E7SUFDRTtJQUNBO0VpRjgzQ0Y7O0UvRWo1Q0k7SUZDSjtJQUNBO0lBQ0E7RWlGbzVDQTs7RS9FajVDUTtJRmJSO0lBSUE7RWlGKzVDQTs7RS9FdDVDUTtJRmJSO0lBSUE7RWlGbzZDQTs7RS9FMzVDUTtJRmJSO0lBSUE7RWlGeTZDQTs7RS9FaDZDUTtJRmJSO0lBSUE7RWlGODZDQTs7RS9FcjZDUTtJRmJSO0lBSUE7RWlGbTdDQTs7RS9FMTZDUTtJRmJSO0lBSUE7RWlGdzdDQTs7RS9FLzZDUTtJRmJSO0lBSUE7RWlGNjdDQTs7RS9FcDdDUTtJRmJSO0lBSUE7RWlGazhDQTs7RS9FejdDUTtJRmJSO0lBSUE7RWlGdThDQTs7RS9FOTdDUTtJRmJSO0lBSUE7RWlGNDhDQTs7RS9FbjhDUTtJRmJSO0lBSUE7RWlGaTlDQTs7RS9FeDhDUTtJRmJSO0lBSUE7RWlGczlDQTs7RS9FdjhDSTtJQUF3QjtFK0UyOEM1Qjs7RS9FejhDSTtJQUF1QjtFK0U2OEMzQjs7RS9FMThDTTtJQUF3QixRQURiO0UrRSs4Q2pCOztFL0U5OENNO0lBQXdCLFFBRGI7RStFbTlDakI7O0UvRWw5Q007SUFBd0IsUUFEYjtFK0V1OUNqQjs7RS9FdDlDTTtJQUF3QixRQURiO0UrRTI5Q2pCOztFL0UxOUNNO0lBQXdCLFFBRGI7RStFKzlDakI7O0UvRTk5Q007SUFBd0IsUUFEYjtFK0VtK0NqQjs7RS9FbCtDTTtJQUF3QixRQURiO0UrRXUrQ2pCOztFL0V0K0NNO0lBQXdCLFFBRGI7RStFMitDakI7O0UvRTErQ007SUFBd0IsUUFEYjtFK0UrK0NqQjs7RS9FOStDTTtJQUF3QixRQURiO0UrRW0vQ2pCOztFL0VsL0NNO0lBQXdCLFNBRGI7RStFdS9DakI7O0UvRXQvQ007SUFBd0IsU0FEYjtFK0UyL0NqQjs7RS9FMS9DTTtJQUF3QixTQURiO0UrRSsvQ2pCOztFL0V2L0NVO0lGaEJWO0VpRjJnREE7O0UvRTMvQ1U7SUZoQlY7RWlGK2dEQTs7RS9FLy9DVTtJRmhCVjtFaUZtaERBOztFL0VuZ0RVO0lGaEJWO0VpRnVoREE7O0UvRXZnRFU7SUZoQlY7RWlGMmhEQTs7RS9FM2dEVTtJRmhCVjtFaUYraERBOztFL0UvZ0RVO0lGaEJWO0VpRm1pREE7O0UvRW5oRFU7SUZoQlY7RWlGdWlEQTs7RS9FdmhEVTtJRmhCVjtFaUYyaURBOztFL0UzaERVO0lGaEJWO0VpRitpREE7O0UvRS9oRFU7SUZoQlY7RWlGbWpEQTs7RS9FbmlEVTtJRmhCVjtFaUZ1akRBO0FBQ0Y7QTlFM21EQTtFQUNFO0VBQ0EsbUJiaUlPO0VhaElQLGNiU1M7QTJGb21EWDtBOUUxbURFOztFQUVFLGdCYmtWMEI7RWFqVjFCO0VBQ0E7QThFNG1ESjtBOUV6bURFO0VBQ0U7RUFDQTtBOEUybURKO0E5RXhtREU7RUFDRTtBOEUwbURKOztBOUVobURFOztFQUVFLGViNFQwQjtBMkZ1eUM5Qjs7QTlFMWxEQTtFQUNFO0E4RTZsREY7QTlFM2xERTs7RUFFRTtBOEU2bERKO0E5RXpsREk7O0VBRUU7QThFMmxETjs7QTlFcmxERTs7OztFQUlFO0E4RXdsREo7O0E5RS9rREU7RUFDRSxxQ2J3UjBCO0EyRjB6QzlCOztBekZqcERFO0VXMkVJLGNidkVLO0Vhd0VMLHNDYjZRd0I7QTJGNnpDOUI7O0E3RTVwREk7OztFQUdFLHlCRDJGK0I7QThFb2tEckM7QTdFM3BETTs7OztFQUlFLHFCRG1GeUU7QThFMGtEakY7O0F6RmxxREU7RVlpQk0seUJBSmU7QTZFeXBEdkI7QTdFbnBEUTs7RUFFRSx5QkFSYTtBNkU2cER2Qjs7QTdFaHJESTs7O0VBR0UseUJEMkYrQjtBOEV3bERyQztBN0UvcURNOzs7O0VBSUUscUJEbUZ5RTtBOEU4bERqRjs7QXpGdHJERTtFWWlCTSx5QkFKZTtBNkU2cUR2QjtBN0V2cURROztFQUVFLHlCQVJhO0E2RWlyRHZCOztBN0Vwc0RJOzs7RUFHRSx5QkQyRitCO0E4RTRtRHJDO0E3RW5zRE07Ozs7RUFJRSxxQkRtRnlFO0E4RWtuRGpGOztBekYxc0RFO0VZaUJNLHlCQUplO0E2RWlzRHZCO0E3RTNyRFE7O0VBRUUseUJBUmE7QTZFcXNEdkI7O0E3RXh0REk7OztFQUdFLHlCRDJGK0I7QThFZ29EckM7QTdFdnRETTs7OztFQUlFLHFCRG1GeUU7QThFc29EakY7O0F6Rjl0REU7RVlpQk0seUJBSmU7QTZFcXREdkI7QTdFL3NEUTs7RUFFRSx5QkFSYTtBNkV5dER2Qjs7QTdFNXVESTs7O0VBR0UseUJEMkYrQjtBOEVvcERyQztBN0UzdURNOzs7O0VBSUUscUJEbUZ5RTtBOEUwcERqRjs7QXpGbHZERTtFWWlCTSx5QkFKZTtBNkV5dUR2QjtBN0VudURROztFQUVFLHlCQVJhO0E2RTZ1RHZCOztBN0Vod0RJOzs7RUFHRSx5QkQyRitCO0E4RXdxRHJDO0E3RS92RE07Ozs7RUFJRSxxQkRtRnlFO0E4RThxRGpGOztBekZ0d0RFO0VZaUJNLHlCQUplO0E2RTZ2RHZCO0E3RXZ2RFE7O0VBRUUseUJBUmE7QTZFaXdEdkI7O0E3RXB4REk7OztFQUdFLHlCRDJGK0I7QThFNHJEckM7QTdFbnhETTs7OztFQUlFLHFCRG1GeUU7QThFa3NEakY7O0F6RjF4REU7RVlpQk0seUJBSmU7QTZFaXhEdkI7QTdFM3dEUTs7RUFFRSx5QkFSYTtBNkVxeER2Qjs7QTdFeHlESTs7O0VBR0UseUJEMkYrQjtBOEVndERyQztBN0V2eURNOzs7O0VBSUUscUJEbUZ5RTtBOEVzdERqRjs7QXpGOXlERTtFWWlCTSx5QkFKZTtBNkVxeUR2QjtBN0UveERROztFQUVFLHlCQVJhO0E2RXl5RHZCOztBN0U1ekRJOzs7RUFHRSxzQ2Q0VndCO0EyRm0rQzlCOztBekY1ekRFO0VZaUJNLHNDQUplO0E2RW16RHZCO0E3RTd5RFE7O0VBRUUsc0NBUmE7QTZFdXpEdkI7O0E5RS90REk7RUFDRSxXK0VwRkU7RS9FcUZGLHlCYnBHSztFYXFHTCxxQmJnUXdCO0EyRmsrQzlCO0E5RTd0REk7RUFDRSxjYjVHSztFYTZHTCx5QmJsSEs7RWFtSEwscUJibEhLO0EyRmkxRFg7O0E5RTF0REE7RUFDRSxXK0VwR007RS9FcUdOLHlCYnBIUztBMkZpMURYO0E5RTN0REU7OztFQUdFLHFCYjRPMEI7QTJGaS9DOUI7QTlFMXRERTtFQUNFO0E4RTR0REo7QTlFeHRESTtFQUNFLDJDYmdPd0I7QTJGMC9DOUI7QXpGLzFERTtFVzRJTSxXK0UxSEE7RS9FMkhBLDRDYjBOc0I7QTJGNC9DOUI7O0FoRnR5REk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFOEV3c0ROO0U5RXJzRE07SUFDRTtFOEV1c0RSO0FBQ0Y7QWhGbHpESTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0U4RW10RE47RTlFaHRETTtJQUNFO0U4RWt0RFI7QUFDRjtBaEY3ekRJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RThFOHRETjtFOUUzdERNO0lBQ0U7RThFNnREUjtBQUNGO0FoRngwREk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFOEV5dUROO0U5RXR1RE07SUFDRTtFOEV3dURSO0FBQ0Y7QTlFbHZESTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0E4RW12RFI7QTlFaHZEUTtFQUNFO0E4RWt2RFY7O0EzRS81REE7RUFDRTtFQUNBO0VBQ0EsbUNoQjBlc0M7RWdCemV0QztFZnFISSxpQkF0Q2E7RWU1RWpCLGdCaEJrUjRCO0VnQmpSNUIsZ0I0RVJpQjtFNUVTakIsY2hCRFM7RWdCRVQsc0I0RWNNO0U1RWJOO0VBQ0E7RVRBRTtFVUZFLHdFRFFKO0EyRTY1REY7QTFFajZETTtFRGROO0lDZVE7RTBFbzZETjtBQUNGO0EzRS81REU7RUFDRTtFQUNBO0EyRWk2REo7QTNFNzVERTtFQUNFO0VBQ0E7QTJFKzVESjtBekVyN0RFO0VBQ0U7RUFDQSxzQjBFZUk7RTFFZEoscUJsQnFkb0M7RWtCcGRwQztFQUtFLGdEbEJvWHdCO0EyRitqRDlCO0EzRS81REU7RUFDRSxjaEI5Qk87RWdCZ0NQO0EyRWc2REo7QTNFbjZERTtFQUNFLGNoQjlCTztFZ0JnQ1A7QTJFZzZESjtBM0VuNkRFO0VBQ0UsY2hCOUJPO0VnQmdDUDtBMkVnNkRKO0EzRXg1REU7RUFFRSx5QmhCOUNPO0VnQmdEUDtBMkV3NURKOztBM0VoNURFOzs7O0VBQ0U7S0FBQTtVQUFBO0EyRXM1REo7O0EzRWo1REU7RUFNRSxjaEIvRE87RWdCZ0VQLHNCNEVoREk7QUQrN0RSOztBM0UxNERBOztFQUVFO0VBQ0E7QTJFNjRERjs7QTNFbjREQTtFQUNFO0VBQ0E7RUFDQTtFZjNCRTtFZTZCRixnQjRFL0ZpQjtBRHErRG5COztBM0VuNERBO0VBQ0U7RUFDQTtFZnFCSSxtQkF0Q2E7RWVtQmpCLGdCaEI2SDRCO0EyRnl3RDlCOztBM0VuNERBO0VBQ0U7RUFDQTtFZmNJLG9CQXRDYTtFZTBCakIsZ0JoQnVINEI7QTJGK3dEOUI7O0EzRTczREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFZkRJLGlCQXRDYTtFZXlDakIsZ0I0RTVIaUI7RTVFNkhqQixjaEJuSFM7RWdCb0hUO0VBQ0E7RUFDQTtBMkVnNERGO0EzRTkzREU7RUFFRTtFQUNBO0EyRSszREo7O0EzRW4zREE7RUFDRSxrQ2hCNFZzQztFZ0IzVnRDO0VmMUJJLG9CQXRDYTtFZWtFakIsZ0JoQitFNEI7RU94TjFCO0FvRmdnRUo7O0EzRW4zREE7RUFDRSxnQ2hCcVZzQztFZ0JwVnRDO0VmbENJLG1CQXRDYTtFZTBFakIsZ0JoQnNFNEI7RU92TjFCO0FvRndnRUo7O0EzRWozREU7RUFFRTtBMkVtM0RKOztBM0UvMkRBO0VBQ0U7QTJFazNERjs7QTNFMTJEQTtFQUNFLG1CaEIwVXNDO0EyRm1pRHhDOztBM0UxMkRBO0VBQ0U7RUFDQSxtQmhCMlRzQztBMkZrakR4Qzs7QTNFcjJEQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EyRXcyREY7QTNFdDJERTs7RUFFRTtFQUNBO0EyRXcyREo7O0EzRS8xREE7RUFDRTtFQUNBO0VBQ0EscUJoQmdTc0M7QTJGa2tEeEM7O0EzRS8xREE7RUFDRTtFQUNBLGtCaEI0UnNDO0VnQjNSdEM7QTJFazJERjtBM0UvMURFO0VBRUUsY2hCek5PO0EyRnlqRVg7O0EzRTUxREE7RUFDRTtBMkUrMURGOztBM0U1MURBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJoQjZRc0M7QTJGa2xEeEM7QTNFNTFERTtFQUNFO0VBQ0E7RUFDQSx1QmhCd1FvQztFZ0J2UXBDO0EyRTgxREo7O0F6RTNpRUU7RUFDRTtFQUNBO0VBQ0EsbUJsQjBjb0M7RUNqYnBDO0VpQnZCQSxjRnFOcUM7QTJFeTFEekM7O0F6RTNpRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQm1FRSxvQkF0Q2E7RWlCM0JmLGdCMEV4RGU7RTFFeURmO0VBQ0E7RVg5Q0E7QW9GNmxFSjtBekUxaUVJO0VBRUU7QXlFMmlFTjs7QXpFdGlFSTs7OztFQUVFO0F5RTJpRU47O0F6RXpsRUk7RUFvREUscUJGa0xtQztFRS9LakMsb0NsQndaZ0M7RWtCdlpoQztFQUNBO0VBQ0E7RUFDQTtBeUV1aUVSO0F6RXBpRU07RUFDRSxxQkZ1S2lDO0VFdEtqQztBeUVzaUVSOztBekV0bUVJO0VBeUVJLG9DbEJzWWdDO0VrQnJZaEM7QXlFaWlFUjs7QXpFM21FSTtFQWlGRSxxQkZxSm1DO0VFbEpqQyx1Q2xCdWRvQztFa0J0ZHBDO0F5RTRoRVI7QXpFemhFTTtFQUNFLHFCRjZJaUM7RUU1SWpDO0F5RTJoRVI7O0F6RXBoRU07RUFDRSxjRm9JaUM7QTJFbTVEekM7QXpFcGhFTTs7O0VBRUU7QXlFdWhFUjs7QXpFaGhFTTtFQUNFLGNGdUhpQztBMkU0NUR6QztBekVqaEVRO0VBQ0UscUJGb0grQjtBMkUrNUR6QztBekU5Z0VRO0VBQ0U7RUNsSk4seUJEbUoyQjtBeUVnaEUvQjtBekUzZ0VRO0VBQ0U7QXlFNmdFVjtBekUxZ0VRO0VBQ0UscUJBVnFCO0F5RXNoRS9COztBekVuZ0VNO0VBQ0UscUJBcEJ1QjtBeUUwaEUvQjtBekVsZ0VRO0VBQ0UscUJBekJxQjtFQTBCckI7QXlFb2dFVjs7QXpFM29FRTtFQUNFO0VBQ0E7RUFDQSxtQmxCMGNvQztFQ2picEM7RWlCdkJBLGNGcU5xQztBMkV5N0R6Qzs7QXpFM29FRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpCbUVFLG9CQXRDYTtFaUIzQmYsZ0IwRXhEZTtFMUV5RGY7RUFDQTtFWDlDQTtBb0Y2ckVKO0F6RTFvRUk7RUFFRTtBeUUyb0VOOztBekV0b0VJOzs7O0VBRUU7QXlFMm9FTjs7QXpFenJFSTtFQW9ERSxxQkZrTG1DO0VFL0tqQyxvQ2xCd1pnQztFa0J2WmhDO0VBQ0E7RUFDQTtFQUNBO0F5RXVvRVI7QXpFcG9FTTtFQUNFLHFCRnVLaUM7RUV0S2pDO0F5RXNvRVI7O0F6RXRzRUk7RUF5RUksb0NsQnNZZ0M7RWtCclloQztBeUVpb0VSOztBekUzc0VJO0VBaUZFLHFCRnFKbUM7RUVsSmpDLHVDbEJ1ZG9DO0VrQnRkcEM7QXlFNG5FUjtBekV6bkVNO0VBQ0UscUJGNklpQztFRTVJakM7QXlFMm5FUjs7QXpFcG5FTTtFQUNFLGNGb0lpQztBMkVtL0R6QztBekVwbkVNOzs7RUFFRTtBeUV1bkVSOztBekVobkVNO0VBQ0UsY0Z1SGlDO0EyRTQvRHpDO0F6RWpuRVE7RUFDRSxxQkZvSCtCO0EyRSsvRHpDO0F6RTltRVE7RUFDRTtFQ2xKTix5QkRtSjJCO0F5RWduRS9CO0F6RTNtRVE7RUFDRTtBeUU2bUVWO0F6RTFtRVE7RUFDRSxxQkFWcUI7QXlFc25FL0I7O0F6RW5tRU07RUFDRSxxQkFwQnVCO0F5RTBuRS9CO0F6RWxtRVE7RUFDRSxxQkF6QnFCO0VBMEJyQjtBeUVvbUVWOztBM0VyZ0VBO0VBQ0U7RUFDQTtFQUNBO0EyRXdnRUY7QTNFbmdFRTtFQUNFO0EyRXFnRUo7QWhGcHVFSTtFS29PQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UyRW1nRUo7RTNFLy9ERTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTJFaWdFSjtFM0U3L0RFO0lBQ0U7SUFDQTtJQUNBO0UyRSsvREo7RTNFMy9ERTtJQUNFO0UyRTYvREo7RTNFMS9ERTs7SUFFRTtFMkU0L0RKO0UzRXYvREU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UyRXkvREo7RTNFdi9ERTtJQUNFO0lBQ0E7SUFDQTtJQUNBLHFCaEIrS2tDO0lnQjlLbEM7RTJFeS9ESjtFM0V0L0RFO0lBQ0U7SUFDQTtFMkV3L0RKO0UzRXQvREU7SUFDRTtFMkV3L0RKO0FBQ0Y7O0F2RTEwRUE7RUFDRTtFQUVBLGdCcEJzUjRCO0VvQnJSNUIsY3BCTVM7RW9CTFQ7RUFHQTtFQUNBO0tBQUE7TUFBQTtVQUFBO0VBQ0E7RUFDQTtFQ3VGQTtFcEJ1QkksaUJBdENhO0VvQmlCakIsZ0J1RXBHaUI7RXJGWWY7RVVGRSxxSUdHSjtBdUU2MEVGO0ExRTUwRU07RUdkTjtJSGVRO0UwRSswRU47QUFDRjtBekZ6MUVFO0VrQlVFLGNwQk5PO0VvQk9QO0F1RWsxRUo7QXZFLzBFRTtFQUVFO0VBQ0EsZ0RwQjZXMEI7QTJGbStEOUI7QXZFNTBFRTtFQUVFLGFwQmlaMEI7QTJGNDdEOUI7QXZFejBFRTtFQUNFO0F1RTIwRUo7QXZFN3pFQTs7RUFFRTtBdUUrekVGOztBdkV0ekVFO0VDM0RBO0VGQUUseUJuQnNFVztFcUJwRWIscUJyQm9FYTtBMkZpekVmO0F6RmozRUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRTYzRXpHO0F0RWozRUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFODJFTjtBdEV6MkVFO0VBRUU7RUFDQSx5QnJCMENXO0VxQnpDWCxxQnJCeUNXO0EyRmkwRWY7QXRFbjJFRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBc0U2NEU3TDtBdEU5MUVJO0VBS0k7QXNFNDFFUjs7QXZFcDFFRTtFQzNEQTtFRkFFLHlCbkJzRVc7RXFCcEViLHFCckJvRWE7QTJGKzBFZjtBekYvNEVFO0VtQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBc0UyNUV6RztBdEUvNEVFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0FzRTQ0RU47QXRFdjRFRTtFQUVFO0VBQ0EseUJyQjBDVztFcUJ6Q1gscUJyQnlDVztBMkYrMUVmO0F0RWo0RUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXNFMjZFN0w7QXRFNTNFSTtFQUtJO0FzRTAzRVI7O0F2RWwzRUU7RUMzREE7RUZBRSx5Qm5Cc0VXO0VxQnBFYixxQnJCb0VhO0EyRjYyRWY7QXpGNzZFRTtFbUJBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXNFeTdFekc7QXRFNzZFRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBc0UwNkVOO0F0RXI2RUU7RUFFRTtFQUNBLHlCckIwQ1c7RXFCekNYLHFCckJ5Q1c7QTJGNjNFZjtBdEUvNUVFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRXk4RTdMO0F0RTE1RUk7RUFLSTtBc0V3NUVSOztBdkVoNUVFO0VDM0RBO0VGQUUseUJuQnNFVztFcUJwRWIscUJyQm9FYTtBMkYyNEVmO0F6RjM4RUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRXU5RXpHO0F0RTM4RUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFdzhFTjtBdEVuOEVFO0VBRUU7RUFDQSx5QnJCMENXO0VxQnpDWCxxQnJCeUNXO0EyRjI1RWY7QXRFNzdFRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBc0V1K0U3TDtBdEV4N0VJO0VBS0k7QXNFczdFUjs7QXZFOTZFRTtFQzNEQTtFRkFFLHlCbkJzRVc7RXFCcEViLHFCckJvRWE7QTJGeTZFZjtBekZ6K0VFO0VtQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBc0VxL0V6RztBdEV6K0VFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0FzRXMrRU47QXRFaitFRTtFQUVFO0VBQ0EseUJyQjBDVztFcUJ6Q1gscUJyQnlDVztBMkZ5N0VmO0F0RTM5RUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXNFcWdGN0w7QXRFdDlFSTtFQUtJO0FzRW85RVI7O0F2RTU4RUU7RUMzREE7RUZBRSx5Qm5Cc0VXO0VxQnBFYixxQnJCb0VhO0EyRnU4RWY7QXpGdmdGRTtFbUJBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXNFbWhGekc7QXRFdmdGRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBc0VvZ0ZOO0F0RS8vRUU7RUFFRTtFQUNBLHlCckIwQ1c7RXFCekNYLHFCckJ5Q1c7QTJGdTlFZjtBdEV6L0VFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRW1pRjdMO0F0RXAvRUk7RUFLSTtBc0VrL0VSOztBdkUxK0VFO0VDM0RBO0VGQUUseUJuQnNFVztFcUJwRWIscUJyQm9FYTtBMkZxK0VmO0F6RnJpRkU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRWlqRnpHO0F0RXJpRkU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFa2lGTjtBdEU3aEZFO0VBRUU7RUFDQSx5QnJCMENXO0VxQnpDWCxxQnJCeUNXO0EyRnEvRWY7QXRFdmhGRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBc0Vpa0Y3TDtBdEVsaEZJO0VBS0k7QXNFZ2hGUjs7QXZFeGdGRTtFQzNEQTtFRkFFLHlCbkJzRVc7RXFCcEViLHFCckJvRWE7QTJGbWdGZjtBekZua0ZFO0VtQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBc0Ura0Z6RztBdEVua0ZFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0FzRWdrRk47QXRFM2pGRTtFQUVFO0VBQ0EseUJyQjBDVztFcUJ6Q1gscUJyQnlDVztBMkZtaEZmO0F0RXJqRkU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXNFK2xGN0w7QXRFaGpGSTtFQUtJO0FzRThpRlI7O0F2RWhpRkU7RUNQQSxjckJZYTtFcUJYYixxQnJCV2E7QTJGZ2lGZjtBekZobUZFO0VtQndERSxXQUxnRDtFQU1oRCx5QnJCT1c7RXFCTlgscUJyQk1XO0EyRnFpRmY7QXRFeGlGRTtFQUVFO0FzRXlpRko7QXRFdGlGRTtFQUVFLGNyQkpXO0VxQktYO0FzRXVpRko7QXRFcGlGRTtFQUdFO0VBQ0EseUJyQlpXO0VxQmFYLHFCckJiVztBMkZpakZmO0F0RWxpRkk7RUFLSTtBc0VnaUZSOztBdkV6akZFO0VDUEEsY3JCWWE7RXFCWGIscUJyQldhO0EyRnlqRmY7QXpGem5GRTtFbUJ3REUsV0FMZ0Q7RUFNaEQseUJyQk9XO0VxQk5YLHFCckJNVztBMkY4akZmO0F0RWprRkU7RUFFRTtBc0Vra0ZKO0F0RS9qRkU7RUFFRSxjckJKVztFcUJLWDtBc0Vna0ZKO0F0RTdqRkU7RUFHRTtFQUNBLHlCckJaVztFcUJhWCxxQnJCYlc7QTJGMGtGZjtBdEUzakZJO0VBS0k7QXNFeWpGUjs7QXZFbGxGRTtFQ1BBLGNyQllhO0VxQlhiLHFCckJXYTtBMkZrbEZmO0F6RmxwRkU7RW1Cd0RFLFdBTGdEO0VBTWhELHlCckJPVztFcUJOWCxxQnJCTVc7QTJGdWxGZjtBdEUxbEZFO0VBRUU7QXNFMmxGSjtBdEV4bEZFO0VBRUUsY3JCSlc7RXFCS1g7QXNFeWxGSjtBdEV0bEZFO0VBR0U7RUFDQSx5QnJCWlc7RXFCYVgscUJyQmJXO0EyRm1tRmY7QXRFcGxGSTtFQUtJO0FzRWtsRlI7O0F2RTNtRkU7RUNQQSxjckJZYTtFcUJYYixxQnJCV2E7QTJGMm1GZjtBekYzcUZFO0VtQndERSxXQUxnRDtFQU1oRCx5QnJCT1c7RXFCTlgscUJyQk1XO0EyRmduRmY7QXRFbm5GRTtFQUVFO0FzRW9uRko7QXRFam5GRTtFQUVFLGNyQkpXO0VxQktYO0FzRWtuRko7QXRFL21GRTtFQUdFO0VBQ0EseUJyQlpXO0VxQmFYLHFCckJiVztBMkY0bkZmO0F0RTdtRkk7RUFLSTtBc0UybUZSOztBdkVwb0ZFO0VDUEEsY3JCWWE7RXFCWGIscUJyQldhO0EyRm9vRmY7QXpGcHNGRTtFbUJ3REUsY0FMZ0Q7RUFNaEQseUJyQk9XO0VxQk5YLHFCckJNVztBMkZ5b0ZmO0F0RTVvRkU7RUFFRTtBc0U2b0ZKO0F0RTFvRkU7RUFFRSxjckJKVztFcUJLWDtBc0Uyb0ZKO0F0RXhvRkU7RUFHRTtFQUNBLHlCckJaVztFcUJhWCxxQnJCYlc7QTJGcXBGZjtBdEV0b0ZJO0VBS0k7QXNFb29GUjs7QXZFN3BGRTtFQ1BBLGNyQllhO0VxQlhiLHFCckJXYTtBMkY2cEZmO0F6Rjd0RkU7RW1Cd0RFLFdBTGdEO0VBTWhELHlCckJPVztFcUJOWCxxQnJCTVc7QTJGa3FGZjtBdEVycUZFO0VBRUU7QXNFc3FGSjtBdEVucUZFO0VBRUUsY3JCSlc7RXFCS1g7QXNFb3FGSjtBdEVqcUZFO0VBR0U7RUFDQSx5QnJCWlc7RXFCYVgscUJyQmJXO0EyRjhxRmY7QXRFL3BGSTtFQUtJO0FzRTZwRlI7O0F2RXRyRkU7RUNQQSxjckJZYTtFcUJYYixxQnJCV2E7QTJGc3JGZjtBekZ0dkZFO0VtQndERSxjQUxnRDtFQU1oRCx5QnJCT1c7RXFCTlgscUJyQk1XO0EyRjJyRmY7QXRFOXJGRTtFQUVFO0FzRStyRko7QXRFNXJGRTtFQUVFLGNyQkpXO0VxQktYO0FzRTZyRko7QXRFMXJGRTtFQUdFO0VBQ0EseUJyQlpXO0VxQmFYLHFCckJiVztBMkZ1c0ZmO0F0RXhyRkk7RUFLSTtBc0VzckZSOztBdkUvc0ZFO0VDUEEsY3JCWWE7RXFCWGIscUJyQldhO0EyRitzRmY7QXpGL3dGRTtFbUJ3REUsV0FMZ0Q7RUFNaEQseUJyQk9XO0VxQk5YLHFCckJNVztBMkZvdEZmO0F0RXZ0RkU7RUFFRTtBc0V3dEZKO0F0RXJ0RkU7RUFFRSxjckJKVztFcUJLWDtBc0VzdEZKO0F0RW50RkU7RUFHRTtFQUNBLHlCckJaVztFcUJhWCxxQnJCYlc7QTJGZ3VGZjtBdEVqdEZJO0VBS0k7QXNFK3NGUjs7QXZFN3RGQTtFQUNFLGdCcEI0TTRCO0VvQjNNNUIsY3BCMkZ3QztFb0IxRnhDLHFCcEIyRndDO0EyRnFvRjFDO0F6Rnp5RkU7RWtCNEVFLGNwQnlGc0M7RW9CeEZ0QywwQnBCeUZzQztBMkZ1b0YxQztBdkU3dEZFO0VBRUUsMEJwQm9Gc0M7QTJGMG9GMUM7QXZFM3RGRTtFQUVFLGNwQnRGTztFb0J1RlA7QXVFNHRGSjs7QXZFanRGQTtFQ1BFO0VwQnVCSSxtQkF0Q2E7RW9CaUJqQixnQnJCK0g0QjtFT3ZOMUI7QW9GcXpGSjs7QXZFcHRGQTtFQ1hFO0VwQnVCSSxvQkF0Q2E7RW9CaUJqQixnQnJCZ0k0QjtFT3hOMUI7QW9GNHpGSjs7QXZFbHRGQTtFQUNFO0VBQ0E7QXVFcXRGRjtBdkVsdEZFO0VBQ0Usa0JwQnVUMEI7QTJGNjVFOUI7O0F2RTVzRkU7OztFQUNFO0F1RWl0Rko7O0FyRTUxRkE7RUxnQk0sZ0NLZko7QXFFKzFGRjtBMUU1MEZNO0VLcEJOO0lMcUJRO0UwRSswRk47QUFDRjtBckVsMkZFO0VBQ0U7QXFFbzJGSjs7QXJFLzFGRTtFQUNFO0FxRWsyRko7O0FyRTkxRkE7RUFDRTtFQUNBO0VBQ0E7RUxESSw2QktFSjtBcUVpMkZGO0ExRS8xRk07RUtOTjtJTE9RO0UwRWsyRk47QUFDRjs7QXBFdjNGQTs7OztFQUlFO0FvRTAzRkY7O0FwRXYzRkE7RUFDRTtBb0UwM0ZGO0FuRXQyRkk7RUFDRTtFQUNBLG9CeEIrTndCO0V3QjlOeEIsdUJ4QjZOd0I7RXdCNU54QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBbUV5NEZGO0FuRXAxRkk7RUFDRTtBbUVzMUZOOztBcEVoNEZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXZCd3BCa0M7RXVCdnBCbEM7RUFDQTtFQUNBLGdCdkJndUJrQztFdUIvdEJsQztFQUNBO0V0QnNHSSxpQkF0Q2E7RXNCOURqQixjdkJYUztFdUJZVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQmRFO0FvRms1Rko7O0FwRTMzRkk7RUFDRTtFQUNBO0FvRTgzRk47O0FwRTMzRkk7RUFDRTtFQUNBO0FvRTgzRk47O0FoRmwzRkk7RVluQkE7SUFDRTtJQUNBO0VvRXk0Rko7O0VwRXQ0RkU7SUFDRTtJQUNBO0VvRXk0Rko7QUFDRjtBaEY5M0ZJO0VZbkJBO0lBQ0U7SUFDQTtFb0VvNUZKOztFcEVqNUZFO0lBQ0U7SUFDQTtFb0VvNUZKO0FBQ0Y7QWhGejRGSTtFWW5CQTtJQUNFO0lBQ0E7RW9FKzVGSjs7RXBFNTVGRTtJQUNFO0lBQ0E7RW9FKzVGSjtBQUNGO0FoRnA1Rkk7RVluQkE7SUFDRTtJQUNBO0VvRTA2Rko7O0VwRXY2RkU7SUFDRTtJQUNBO0VvRTA2Rko7QUFDRjtBcEVuNkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsdUJ2QjhyQmdDO0EyRnV1RXBDO0FuRXA4Rkk7RUFDRTtFQUNBLG9CeEIrTndCO0V3QjlOeEIsdUJ4QjZOd0I7RXdCNU54QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBbUVnK0ZGO0FuRWw3Rkk7RUFDRTtBbUVvN0ZOOztBcEV6NkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQnZCZ3JCZ0M7QTJGNHZFcEM7QW5FejlGSTtFQUNFO0VBQ0Esb0J4QitOd0I7RXdCOU54Qix1QnhCNk53QjtFd0I1TnhCO0VBbEJKO0VBQ0E7RUFDQTtFQUNBO0FtRTgrRkY7QW5FdjhGSTtFQUNFO0FtRXk4Rk47QXBFcDdGSTtFQUNFO0FvRXM3Rk47O0FwRWg3RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCdkIrcEJnQztBMkZveEVwQztBbkVqL0ZJO0VBQ0U7RUFDQSxvQnhCK053QjtFd0I5TnhCLHVCeEI2TndCO0V3QjVOeEI7QW1FbS9GTjtBbkV4K0ZNO0VBQ0U7QW1FMCtGUjtBbkV2K0ZNO0VBQ0U7RUFDQSxxQnhCNE1zQjtFd0IzTXRCLHVCeEIwTXNCO0V3QnpNdEI7RUE5Qk47RUFDQTtFQUNBO0FtRXdnR0Y7QW5FditGSTtFQUNFO0FtRXkrRk47QXBFbjhGSTtFQUNFO0FvRXE4Rk47O0FwRTc3RkU7RUFJRTtFQUNBO0FvRTY3Rko7O0FwRXg3RkE7RUU5R0U7RUFDQTtFQUNBO0VBQ0E7QWtFMGlHRjs7QXBFeDdGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0J2QmdLNEI7RXVCL0o1QixjdkJoSFM7RXVCaUhUO0VBRUE7RUFDQTtFQUNBO0FvRTA3RkY7QXpGL2lHRTtFcUJvSUUsY3ZCbW5CZ0M7RXVCbG5CaEM7RUovSUEseUJuQkdPO0EyRjJqR1g7QXBFMzZGRTtFQUVFLFdxRTdISTtFckU4SEo7RUp0SkEseUJuQm9QMEI7QTJGKzBGOUI7QXBFejZGRTtFQUVFLGN2QnRKTztFdUJ1SlA7RUFDQTtBb0UwNkZKOztBcEVsNkZBO0VBQ0U7QW9FcTZGRjs7QXBFajZGQTtFQUNFO0VBQ0Esc0J2QmdtQmtDO0V1Qi9sQmxDO0V0QnJESSxvQkF0Q2E7RXNCNkZqQixjdkJ6S1M7RXVCMEtUO0FvRW82RkY7O0FwRWg2RkE7RUFDRTtFQUNBO0VBQ0EsY3ZCOUtTO0EyRmlsR1g7O0FqRTlsR0E7O0VBRUU7RUFDQTtFQUNBO0FpRWltR0Y7QWpFL2xHRTs7RUFDRTtFQUNBO0FpRWttR0o7QXpGam1HRTs7RXdCSUk7QWlFaW1HTjtBakUvbEdJOzs7O0VBR0U7QWlFa21HTjs7QWpFNWxHQTtFQUNFO0VBQ0E7RUFDQTtBaUUrbEdGO0FqRTdsR0U7RUFDRTtBaUUrbEdKOztBakV6bEdFOztFQUVFO0FpRTRsR0o7QWpFeGxHRTs7RW5CWEU7RUFDQTtBb0Z1bUdKO0FqRXhsR0U7O0VuQkZFO0VBQ0E7QW9GOGxHSjs7QWpFM2tHQTtFQUNFO0VBQ0E7QWlFOGtHRjtBakU1a0dFO0VBR0U7QWlFNGtHSjtBakV6a0dFO0VBQ0U7QWlFMmtHSjs7QWpFdmtHQTtFQUNFO0VBQ0E7QWlFMGtHRjs7QWpFdmtHQTtFQUNFO0VBQ0E7QWlFMGtHRjs7QWpFdGpHQTtFQUNFO0VBQ0E7RUFDQTtBaUV5akdGO0FqRXZqR0U7O0VBRUU7QWlFeWpHSjtBakV0akdFOztFQUVFO0FpRXdqR0o7QWpFcGpHRTs7RW5CckZFO0VBQ0E7QW9GNm9HSjtBakVwakdFOztFbkJ4R0U7RUFDQTtBb0ZncUdKOztBakVyaUdFOztFQUVFO0FpRXdpR0o7QWpFdGlHSTs7OztFQUVFO0VBQ0E7RUFDQTtBaUUwaUdOOztBaEVuc0dBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZ0Vzc0dGO0FoRXBzR0U7Ozs7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FnRXNzR0o7QWhFcHNHSTs7Ozs7Ozs7Ozs7O0VBR0U7QWdFK3NHTjtBaEUxc0dFOzs7RUFHRTtBZ0U0c0dKO0FoRXhzR0U7RUFDRTtBZ0Uwc0dKO0FoRXJzR0k7O0VwQklBO0VBQ0E7QW9GcXNHSjtBaEVyc0dFO0VBQ0U7RUFDQTtBZ0V1c0dKO0FoRXJzR0k7RXBCTEE7RUFDQTtBb0Y2c0dKO0FoRXBzR0k7OztFcEJ4QkE7RUFDQTtBb0ZpdUdKO0FoRWxzR0k7OztFcEJoQ0E7RUFDQTtBb0Z1dUdKOztBaEV6ckdBOztFQUVFO0FnRTRyR0Y7QWhFdnJHRTs7RUFDRTtFQUNBO0FnRTByR0o7QWhFeHJHSTs7RUFDRTtBZ0UyckdOO0FoRXZyR0U7Ozs7Ozs7O0VBSUU7QWdFNnJHSjs7QWhFenJHQTtFQUF1QjtBZ0U2ckd2Qjs7QWhFNXJHQTtFQUFzQjtBZ0Vnc0d0Qjs7QWhFeHJHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0UxQlNJLGlCQXRDYTtFMEIrQmpCLGdCM0J1SzRCO0UyQnRLNUIsZ0JpRW5IaUI7RWpFb0hqQixjM0I1R1M7RTJCNkdUO0VBQ0E7RUFDQSx5QjNCcEhTO0UyQnFIVDtFcEI1R0U7QW9Gd3lHSjtBaEV4ckdFOztFQUVFO0FnRTByR0o7O0FoRWhyR0E7O0VBRUUsZ0MzQnFXc0M7QTJGODBGeEM7O0FoRWhyR0E7Ozs7OztFQU1FO0UxQjFCSSxtQkF0Q2E7RTBCa0VqQixnQjNCOEU0QjtFT3ZOMUI7QW9GNnpHSjs7QWhFaHJHQTs7RUFFRSxrQzNCbVZzQztBMkZnMkZ4Qzs7QWhFaHJHQTs7Ozs7O0VBTUU7RTFCM0NJLG9CQXRDYTtFMEJtRmpCLGdCM0I4RDRCO0VPeE4xQjtBb0Y4MEdKOztBaEVockdBOztFQUVFO0FnRW1yR0Y7O0FoRXhxR0E7Ozs7Ozs7O0VwQjNKSTtFQUNBO0FvRjgwR0o7O0FoRXpxR0E7Ozs7OztFcEJ4Skk7RUFDQTtBb0YwMEdKOztBL0RsM0dBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QStEcTNHRjs7QS9EbDNHQTtFQUNFO0VBQ0Esa0I1Qndmc0M7QTJGNjNGeEM7O0EvRGwzR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxXNUJvZnNDO0U0Qm5mdEM7RUFDQTtBK0RxM0dGO0EvRG4zR0U7RUFDRSxXZ0VGSTtFaEVHSixxQjVCeU4wQjtFbUJwUDFCLHlCbkJvUDBCO0EyRjZwRzlCO0EvRGozR0U7RUFLSSxnRDVCK1Z3QjtBMkZnaEc5QjtBL0QzMkdFO0VBQ0UscUI1QnFib0M7QTJGdzdGeEM7QS9EMTJHRTtFQUNFLFdnRXRCSTtFaEV1QkoseUI1QmlmNEM7RTRCaGY1QyxxQjVCZ2Y0QztBMkY0M0ZoRDtBL0RyMkdJO0VBQ0UsYzVCakRLO0EyRnc1R1g7QS9EcjJHTTtFQUNFLHlCNUJ4REc7QTJGKzVHWDs7QS9ENzFHQTtFQUNFO0VBQ0E7RUFFQTtBK0QrMUdGO0EvRDMxR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFc1QnVib0M7RTRCdGJwQyxZNUJzYm9DO0U0QnJicEM7RUFDQTtFQUNBLHNCZ0U5REk7RWhFK0RKO0ErRDYxR0o7QS9EeDFHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzVCd2FvQztFNEJ2YXBDLFk1QnVhb0M7RTRCdGFwQztFQUNBO0ErRDAxR0o7O0EvRGgxR0U7RXJCbEdFO0FvRnM3R0o7QS9ELzBHSTtFQUNFO0ErRGkxR047QS9ENTBHSTtFQUNFLHFCNUIwSHdCO0VtQnBQMUIseUJuQm9QMEI7QTJGcXRHOUI7QS9EMzBHSTtFQUNFO0ErRDYwR047QS9EeDBHSTtFVHBJQSx3Q25Cd2hCNEM7QTJGdTdGaEQ7QS9EeDBHSTtFVHZJQSx3Q25Cd2hCNEM7QTJGMDdGaEQ7O0EvRGgwR0U7RUFFRSxrQjVCeVo0QztBMkZ5NkZoRDtBL0Q5ekdJO0VBQ0U7QStEZzBHTjtBL0QzekdJO0VUOUpBLHdDbkJ3aEI0QztBMkZvOEZoRDs7QS9EbnpHQTtFQUNFO0ErRHN6R0Y7QS9EbnpHSTtFQUNFO0VBQ0EsYzVCaVkwQztFNEJoWTFDO0VBRUEscUI1QitYMEM7QTJGcTdGaEQ7QS9EanpHSTtFQUNFO0VBQ0E7RUFDQSx1QjVCMFgwQztFNEJ6WDFDLHdCNUJ5WDBDO0U0QnhYMUMseUI1QnBMSztFNEJzTEwscUI1QnFYMEM7RWlCdmlCMUMseUlXbUxBO0ErRGt6R047QTFFaitHTTtFV3VLRjtJWHRLSTtFMEVvK0dOO0FBQ0Y7QS9EbHpHSTtFQUNFLHNCZ0UzS0U7RWhFNEtGO0ErRG96R047QS9EL3lHSTtFVHpNQSx3Q25Cd2hCNEM7QTJGbStGaEQ7O0EvRHJ5R0E7RUFDRTtFQUNBO0VBQ0EsbUM1Qm9Sc0M7RTRCblJ0QztFM0JqR0ksaUJBdENhO0UyQjBJakIsZ0I1QjRENEI7RTRCM0Q1QixnQmdFOU5pQjtFaEUrTmpCLGM1QnZOUztFNEJ3TlQ7RUFDQTtFQUNBO0VyQnRORTtFcUJ5TkY7S0FBQTtVQUFBO0ErRHN5R0Y7QS9EcHlHRTtFQUNFLHFCNUJ1UG9DO0U0QnRQcEM7RUFLRSxnRDVCa1c4QjtBMkZnOEZwQztBL0QveEdJO0VBTUUsYzVCL09LO0U0QmdQTCxzQmdFaE9FO0FENC9HUjtBL0R4eEdFO0VBRUU7RUFDQSxzQjVCOEgwQjtFNEI3SDFCO0ErRHl4R0o7QS9EdHhHRTtFQUNFLGM1QjdQTztFNEI4UFAseUI1QmxRTztBMkYwaEhYO0EvRHB4R0U7RUFDRTtBK0RzeEdKO0EvRGx4R0U7RUFDRTtFQUNBO0ErRG94R0o7O0EvRGh4R0E7RUFDRSxrQzVCeU5zQztFNEJ4TnRDLG9CNUJnSDRCO0U0Qi9HNUIsdUI1QitHNEI7RTRCOUc1QixvQjVCK0c0QjtFQzlReEIsb0JBdENhO0EwRnk5R25COztBL0RoeEdBO0VBQ0UsZ0M1QmtOc0M7RTRCak50QyxtQjVCNkc0QjtFNEI1RzVCLHNCNUI0RzRCO0U0QjNHNUIsa0I1QjRHNEI7RUNuUnhCLG1CQXRDYTtBMEZpK0duQjs7QS9EM3dHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1DNUJnTXNDO0U0Qi9MdEM7QStEOHdHRjs7QS9EM3dHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1DNUJ3THNDO0U0QnZMdEM7RUFDQTtFQUNBO0ErRDh3R0Y7QS9ENXdHRTtFQUNFLHFCNUJvS29DO0U0Qm5LcEMsZ0Q1QndFMEI7QTJGc3NHOUI7QS9EMXdHRTtFQUVFLHlCNUIvVE87QTJGMGtIWDtBL0R2d0dJO0VBQ0UsaUI1QjBUYTtBMkYrOEZuQjtBL0Ryd0dFO0VBQ0U7QStEdXdHSjs7QS9EbndHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQzVCdUpzQztFNEJ0SnRDO0VBQ0E7RUFFQSxnQjVCakU0QjtFNEJrRTVCLGdCZ0UzVmlCO0VoRTRWakIsYzVCcFZTO0U0QnFWVCxzQmdFclVNO0VoRXNVTjtFckJsVkU7QW9Gd2xISjtBL0Rsd0dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNkI1QmdJb0M7RTRCL0hwQztFQUNBLGdCZ0UzV2U7RWhFNFdmLGM1QnBXTztFNEJxV1A7RVQ3V0EseUJuQkdPO0U0QjRXUDtFckJuV0E7QW9Gd21ISjs7QS9EMXZHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtVQUFBO0ErRDZ2R0Y7QS9EM3ZHRTtFQUNFO0ErRDZ2R0o7QS9EenZHSTtFQUEwQixtRTVCbU9lO0EyRnloRzdDO0EvRDN2R0k7RUFBMEIsbUU1QmtPZTtBMkY0aEc3QztBL0Q3dkdJO0VBQTBCLG1FNUJpT2U7QTJGK2hHN0M7QS9EN3ZHRTtFQUNFO0ErRCt2R0o7QS9ENXZHRTtFQUNFLFc1Qm1OeUM7RTRCbE56QyxZNUJrTnlDO0U0QmpOekM7RVRsWkEseUJuQm9QMEI7RTRCZ0sxQixTNUJrTnlDO0VPMWxCekM7RVVGRSxvSFc2WUY7RVg3WUUsNEdXNllGO0VBQ0E7VUFBQTtBK0Q2dkdKO0ExRXZvSE07RVdpWUo7SVhoWU07SUFBQTtFMEUwb0hOO0FBQ0Y7QS9EaHdHSTtFVDFaQSx5Qm5CMm1CeUM7QTJGa2pHN0M7QS9EOXZHRTtFQUNFLFc1QjRMZ0M7RTRCM0xoQyxjNUI0TGdDO0U0QjNMaEM7RUFDQSxlNUIyTGdDO0U0QjFMaEMseUI1QmhhTztFNEJpYVA7RXJCelpBO0FvRjBwSEo7QS9ENXZHRTtFQUNFLFc1QndMeUM7RTRCdkx6QyxZNUJ1THlDO0VtQm5tQnpDLHlCbkJvUDBCO0U0QjBMMUIsUzVCd0x5QztFTzFsQnpDO0VVRkUsaUhXdWFGO0VYdmFFLDRHV3VhRjtFQUNBO09BQUE7QStENnZHSjtBMUVqcUhNO0VXNFpKO0lYM1pNO0lBQUE7RTBFb3FITjtBQUNGO0EvRGh3R0k7RVRwYkEseUJuQjJtQnlDO0EyRjRrRzdDO0EvRDl2R0U7RUFDRSxXNUJrS2dDO0U0QmpLaEMsYzVCa0tnQztFNEJqS2hDO0VBQ0EsZTVCaUtnQztFNEJoS2hDLHlCNUIxYk87RTRCMmJQO0VyQm5iQTtBb0ZvckhKO0EvRDV2R0U7RUFDRSxXNUI4SnlDO0U0QjdKekMsWTVCNkp5QztFNEI1SnpDO0VBQ0Esb0I1QnRFMEI7RTRCdUUxQixtQjVCdkUwQjtFbUJsWTFCLHlCbkJvUDBCO0U0QnVOMUIsUzVCMkp5QztFTzFsQnpDO0VVRkUsZ0hXb2NGO0VYcGNFLDRHV29jRjtFQUNBO0ErRDZ2R0o7QTFFOXJITTtFV3NiSjtJWHJiTTtJQUFBO0UwRWlzSE47QUFDRjtBL0Rod0dJO0VUamRBLHlCbkIybUJ5QztBMkZ5bUc3QztBL0Q5dkdFO0VBQ0UsVzVCcUlnQztFNEJwSWhDLGM1QnFJZ0M7RTRCcEloQztFQUNBLGU1Qm9JZ0M7RTRCbkloQztFQUNBO0VBQ0E7QStEZ3dHSjtBL0Q1dkdFO0VBQ0UseUI1QjlkTztFT1FQO0FvRnF0SEo7QS9EM3ZHRTtFQUNFO0VBQ0EseUI1QnBlTztFT1FQO0FvRjB0SEo7QS9EenZHSTtFQUNFLHlCNUJ4ZUs7QTJGbXVIWDtBL0R4dkdJO0VBQ0U7QStEMHZHTjtBL0R2dkdJO0VBQ0UseUI1QmhmSztBMkZ5dUhYO0EvRHR2R0k7RUFDRTtBK0R3dkdOO0EvRHJ2R0k7RUFDRSx5QjVCeGZLO0EyRit1SFg7O0EvRGx2R0E7OztFWHpmTSw0R1c0Zko7QStEcXZHRjtBMUU3dUhNO0VXcWZOOzs7SVhwZlE7RTBFa3ZITjtBQUNGOztBOURud0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOERzd0hGOztBOURud0hBO0VBQ0U7RUFDQTtBOERzd0hGO0F6RnJ3SEU7RTJCR0U7QThEcXdISjtBOURqd0hFO0VBQ0UsYzdCWE87RTZCWVA7RUFDQTtBOERtd0hKOztBOUQzdkhBO0VBQ0U7QThEOHZIRjtBOUQ1dkhFO0VBQ0U7RUFDQTtFdEJaQTtFQUNBO0FvRjJ3SEo7QXpGdnhIRTtFMkIyQkkscUM3Qm1wQjhCO0EyRjRtR3BDO0E5RDV2SEk7RUFDRSxjN0JsQ0s7RTZCbUNMO0VBQ0E7QThEOHZITjtBOUQxdkhFOztFQUVFLGM3QnpDTztFNkIwQ1AseUIrRHZETTtFL0R3RE4scUM3QndvQmdDO0EyRm9uR3BDO0E5RHp2SEU7RUFFRTtFdEJuQ0E7RUFDQTtBb0Y4eEhKOztBOURodkhFO0V0QnhERTtBb0Y0eUhKO0E5RGh2SEU7O0VBRUUsVytEbERJO0UvRG1ESix5QjdCeUswQjtBMkZ5a0g5Qjs7QTlEeHVIRTs7RUFFRTtFQUNBO0E4RDJ1SEo7O0E5RHR1SEU7O0VBRUU7RUFDQTtFQUNBO0E4RHl1SEo7O0E5RC90SEU7RUFDRTtBOERrdUhKO0E5RGh1SEU7RUFDRTtBOERrdUhKOztBN0R0MEhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E2RHkwSEY7QTdEcjBIRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTZENDBISjtBN0R4ekhBO0VBQ0U7RUFDQSxvQjlCaXFCa0M7RThCaHFCbEMsdUI5QmdxQmtDO0U4Qi9wQmxDLGtCOUJnRk87RUNSSCxtQkF0Q2E7RTZCaENqQjtFQUNBO0E2RDB6SEY7QXpGcDJIRTtFNEI2Q0U7QTZEMHpISjs7QTdEanpIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTZEb3pIRjtBN0RsekhFO0VBQ0U7RUFDQTtBNkRvekhKO0E3RGp6SEU7RUFDRTtFQUNBO0E2RG16SEo7O0E3RDF5SEE7RUFDRTtFQUNBLG1COUJ3bEJrQztFOEJ2bEJsQyxzQjlCdWxCa0M7QTJGc3RHcEM7O0E3RGp5SEE7RUFDRTtFQUNBO0VBR0E7QTZEa3lIRjs7QTdEOXhIQTtFQUNFO0U3QlNJLG1CQXRDYTtFNkIrQmpCO0VBQ0E7RUFDQTtFdkJ4R0U7QW9GMDRISjtBekY1NEhFO0U0QjhHRTtBNkRpeUhKOztBN0QzeEhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E2RDh4SEY7O0E3RDN4SEE7RUFDRSxnQjlCK2tCa0M7RThCOWtCbEM7QTZEOHhIRjs7QWhGcDJISTtFbUJrRkk7Ozs7OztJQUNFO0lBQ0E7RTZEMnhIUjtBQUNGO0FoRjczSEk7RW1CNkZBO0lBb0JJO0lBQ0E7RTZEZ3hITjtFN0Q5d0hNO0lBQ0U7RTZEZ3hIUjtFN0Q5d0hRO0lBQ0U7RTZEZ3hIVjtFN0Q3d0hRO0lBQ0UscUI5QndoQndCO0k4QnZoQnhCLG9COUJ1aEJ3QjtFMkZ3dkdsQztFN0Qxd0hNOzs7Ozs7SUFDRTtFNkRpeEhSO0U3RG53SE07SUFDRTtFNkRxd0hSO0U3RGx3SE07SUFDRTtJQUdBO0U2RGt3SFI7RTdEL3ZITTtJQUNFO0U2RGl3SFI7QUFDRjtBaEZsNUhJO0VtQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFNkR3MEhSO0FBQ0Y7QWhGMTZISTtFbUI2RkE7SUFvQkk7SUFDQTtFNkQ2ekhOO0U3RDN6SE07SUFDRTtFNkQ2ekhSO0U3RDN6SFE7SUFDRTtFNkQ2ekhWO0U3RDF6SFE7SUFDRSxxQjlCd2hCd0I7SThCdmhCeEIsb0I5QnVoQndCO0UyRnF5R2xDO0U3RHZ6SE07Ozs7OztJQUNFO0U2RDh6SFI7RTdEaHpITTtJQUNFO0U2RGt6SFI7RTdEL3lITTtJQUNFO0lBR0E7RTZEK3lIUjtFN0Q1eUhNO0lBQ0U7RTZEOHlIUjtBQUNGO0FoRi83SEk7RW1Ca0ZJOzs7Ozs7SUFDRTtJQUNBO0U2RHEzSFI7QUFDRjtBaEZ2OUhJO0VtQjZGQTtJQW9CSTtJQUNBO0U2RDAySE47RTdEeDJITTtJQUNFO0U2RDAySFI7RTdEeDJIUTtJQUNFO0U2RDAySFY7RTdEdjJIUTtJQUNFLHFCOUJ3aEJ3QjtJOEJ2aEJ4QixvQjlCdWhCd0I7RTJGazFHbEM7RTdEcDJITTs7Ozs7O0lBQ0U7RTZEMjJIUjtFN0Q3MUhNO0lBQ0U7RTZEKzFIUjtFN0Q1MUhNO0lBQ0U7SUFHQTtFNkQ0MUhSO0U3RHoxSE07SUFDRTtFNkQyMUhSO0FBQ0Y7QWhGNStISTtFbUJrRkk7Ozs7OztJQUNFO0lBQ0E7RTZEazZIUjtBQUNGO0FoRnBnSUk7RW1CNkZBO0lBb0JJO0lBQ0E7RTZEdTVITjtFN0RyNUhNO0lBQ0U7RTZEdTVIUjtFN0RyNUhRO0lBQ0U7RTZEdTVIVjtFN0RwNUhRO0lBQ0UscUI5QndoQndCO0k4QnZoQnhCLG9COUJ1aEJ3QjtFMkYrM0dsQztFN0RqNUhNOzs7Ozs7SUFDRTtFNkR3NUhSO0U3RDE0SE07SUFDRTtFNkQ0NEhSO0U3RHo0SE07SUFDRTtJQUdBO0U2RHk0SFI7RTdEdDRITTtJQUNFO0U2RHc0SFI7QUFDRjtBN0R6OEhJO0VBb0JJO0VBQ0E7QTZEdzdIUjtBN0QzOEhROzs7Ozs7RUFDRTtFQUNBO0E2RGs5SFY7QTdELzdIUTtFQUNFO0E2RGk4SFY7QTdELzdIVTtFQUNFO0E2RGk4SFo7QTdEOTdIVTtFQUNFLHFCOUJ3aEJ3QjtFOEJ2aEJ4QixvQjlCdWhCd0I7QTJGeTZHcEM7QTdEMzdIUTs7Ozs7O0VBQ0U7QTZEazhIVjtBN0RwN0hRO0VBQ0U7QTZEczdIVjtBN0RuN0hRO0VBQ0U7RUFHQTtBNkRtN0hWO0E3RGg3SFE7RUFDRTtBNkRrN0hWOztBN0RwNkhFO0VBQ0UseUI5QmdnQmdDO0EyRnU2R3BDO0F6Ri9uSUU7RTRCMk5JLHlCOUI2ZjhCO0EyRjA2R3BDO0E3RGw2SEk7RUFDRSx5QjlCcWY4QjtBMkYrNkdwQztBekZyb0lFO0U0Qm9PTSx5QjlCbWY0QjtBMkZpN0dwQztBN0RqNkhNO0VBQ0UseUI5QmlmNEI7QTJGazdHcEM7QTdELzVISTs7OztFQUlFLHlCOUJ3ZThCO0EyRnk3R3BDO0E3RDc1SEU7RUFDRSx5QjlCaWVnQztFOEJoZWhDLGdDOUJxZWdDO0EyRjA3R3BDO0E3RDU1SEU7RUFDRTtBNkQ4NUhKO0E3RDM1SEU7RUFDRSx5QjlCd2RnQztBMkZxOEdwQztBN0Q1NUhJO0VBQ0UseUI5QndkOEI7QTJGczhHcEM7QXpGOXBJRTtFNEJtUU0seUI5QnFkNEI7QTJGeThHcEM7O0E3RHQ1SEU7RUFDRSxXOEQ5UEk7QUR1cElSO0F6RnJxSUU7RTRCK1FJLFc4RGpRRTtBRDBwSVI7QTdEcDVISTtFQUNFLCtCOUIwYjhCO0EyRjQ5R3BDO0F6RjNxSUU7RTRCd1JNLGdDOUJ3YjRCO0EyRjg5R3BDO0E3RG41SE07RUFDRSxnQzlCc2I0QjtBMkYrOUdwQztBN0RqNUhJOzs7O0VBSUUsVzhEdFJFO0FEeXFJUjtBN0QvNEhFO0VBQ0UsK0I5QnNhZ0M7RThCcmFoQyxzQzlCMGFnQztBMkZ1K0dwQztBN0Q5NEhFO0VBQ0U7QTZEZzVISjtBN0Q3NEhFO0VBQ0UsK0I5QjZaZ0M7QTJGay9HcEM7QTdEOTRISTtFQUNFLFc4RHRTRTtBRHNySVI7QXpGcHNJRTtFNEJ1VE0sVzhEelNBO0FEeXJJUjs7QTVEbnRJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQjZEbUJNO0U3RGxCTjtFQUNBO0V4QktFO0FvRml0SUo7QTVEbnRJRTtFQUNFO0VBQ0E7QTREcXRJSjtBNURsdElFO0VBQ0U7RUFDQTtBNERvdElKO0E1RGx0SUk7RUFDRTtFeEJDRjtFQUNBO0FvRm90SUo7QTVEbHRJSTtFQUNFO0V4QlVGO0VBQ0E7QW9GMnNJSjtBNUQvc0lFOztFQUVFO0E0RGl0SUo7O0E1RDdzSUE7RUFHRTtFQUdBO0VBQ0EsZ0IvQjh3QmtDO0EyRjg3R3BDOztBNUR4c0lBO0VBQ0Usc0IvQnd3QmtDO0EyRm04R3BDOztBNUR4c0lBO0VBQ0U7RUFDQTtBNEQyc0lGOztBNUR4c0lBO0VBQ0U7QTREMnNJRjs7QXpGaHdJRTtFNkIwREU7QTREMHNJSjtBNUR2c0lFO0VBQ0Usb0IvQnV2QmdDO0EyRms5R3BDOztBNURqc0lBO0VBQ0U7RUFDQTtFQUVBLHFDL0JndkJrQztFK0IvdUJsQztBNERtc0lGO0E1RGpzSUU7RXhCdkVFO0FvRjJ3SUo7O0E1RC9ySUE7RUFDRTtFQUVBLHFDL0JxdUJrQztFK0JwdUJsQztBNERpc0lGO0E1RC9ySUU7RXhCbEZFO0FvRm94SUo7O0E1RHhySUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNEQycklGOztBNUR4cklBO0VBQ0U7RUFDQTtBNEQycklGOztBNUR2cklBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCL0Iyc0JrQztFTzF6QmhDO0FvRjB5SUo7O0E1RHZySUE7OztFQUdFO0VBQ0E7QTREMHJJRjs7QTVEdnJJQTs7RXhCakhJO0VBQ0E7QW9GNnlJSjs7QTVEeHJJQTs7RXhCeEdJO0VBQ0E7QW9GcXlJSjs7QTVEcnJJRTtFQUNFLG1CL0JtckJnQztBMkZxZ0hwQztBaEZ2eElJO0VvQjZGSjtJQU1JO0lBQ0E7SUFDQTtJQUNBO0U0RHdySUY7RTVEdHJJRTtJQUVFO0lBQ0Esa0IvQnVxQjhCO0krQnRxQjlCO0lBQ0EsaUIvQnFxQjhCO0UyRmtoSGxDO0FBQ0Y7O0E1RDNxSUU7RUFDRSxtQi9CdXBCZ0M7QTJGdWhIcEM7QWhGenlJSTtFb0J1SEo7SUFRSTtJQUNBO0U0RDhxSUY7RTVEM3FJRTtJQUVFO0lBQ0E7RTRENHFJSjtFNUQxcUlJO0lBQ0U7SUFDQTtFNEQ0cUlOO0U1RHZxSU07SXhCektKO0lBQ0E7RW9GbTFJRjtFNUR4cUlROztJQUdFO0U0RHlxSVY7RTVEdnFJUTs7SUFHRTtFNER3cUlWO0U1RHBxSU07SXhCMUtKO0lBQ0E7RW9GaTFJRjtFNURycUlROztJQUdFO0U0RHNxSVY7RTVEcHFJUTs7SUFHRTtFNERxcUlWO0FBQ0Y7O0E1RHhwSUU7RUFDRSxzQi9CNGtCZ0M7QTJGK2tIcEM7QWhGbjFJSTtFb0JzTEo7SUFNSSxvQi9CeWxCZ0M7UytCemxCaEMsZS9CeWxCZ0M7SStCeGxCaEMsd0IvQnlsQmdDO1MrQnpsQmhDLG1CL0J5bEJnQztJK0J4bEJoQztJQUNBO0U0RDJwSUY7RTVEenBJRTtJQUNFO0lBQ0E7RTREMnBJSjtBQUNGOztBNURscElBO0VBQ0U7QTREcXBJRjtBNURucElFO0VBQ0U7QTREcXBJSjtBNURucElJO0VBQ0U7RXhCdk9GO0VBQ0E7QW9GNjNJSjtBNURucElJO0V4QnpQQTtFQUNBO0FvRis0SUo7QTVEbnBJSTtFeEJ0UUE7RXdCd1FFO0E0RHFwSU47O0EzRC82SUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQmhDbWlDa0M7RWdDamlDbEM7RUFDQSx5QmhDRVM7RU9TUDtBb0Z1NklKOztBM0Q1NklFO0VBQ0Usb0JoQ3VoQ2dDO0EyRnc1R3BDO0EzRDc2SUk7RUFDRTtFQUNBLHFCaENtaEM4QjtFZ0NsaEM5QixjaENOSztFZ0NPTDtBMkQrNklOO0EzRHI2SUU7RUFDRTtBMkR1NklKO0EzRHA2SUU7RUFDRTtBMkRzNklKO0EzRG42SUU7RUFDRSxjaEMxQk87QTJGKzdJWDs7QTFENThJQTtFQUNFO0U3QkdBO0VBQ0E7RUdhRTtBb0ZpOElKOztBMUQ3OElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQmpDbXhCa0M7RWlDbHhCbEMsY2pDbUt3QztFaUNqS3hDLHNCMkRnQk07RTNEZk47QTBEKzhJRjtBMUQ3OElFO0VBQ0U7RUFDQSxjakM4SnNDO0VpQzdKdEM7RUFDQSx5QmpDWk87RWlDYVAscUJqQ1pPO0EyRjI5SVg7QTFENThJRTtFQUNFO0VBQ0EsVWpDMndCZ0M7RWlDMXdCaEMsZ0RqQzhXMEI7QTJGZ21JOUI7O0ExRHg4SUk7RUFDRTtFMUJhRjtFQUNBO0FvRis3SUo7QTFEeDhJSTtFMUJOQTtFQUNBO0FvRmk5SUo7QTFEdjhJRTtFQUNFO0VBQ0EsVzJEakJJO0UzRGtCSix5QmpDME0wQjtFaUN6TTFCLHFCakN5TTBCO0EyRmd3STlCO0ExRHQ4SUU7RUFDRSxjakN4Q087RWlDeUNQO0VBRUE7RUFDQSxzQjJEM0JJO0UzRDRCSixxQmpDaERPO0EyRnUvSVg7O0F6RDkvSUU7RUFDRTtFakMySEUsbUJBdENhO0VpQ25GZixnQmxDbU8wQjtBMkY4eEk5QjtBekQ1L0lNO0UzQnFDRjtFQUNBO0FvRjA5SUo7QXpEMy9JTTtFM0JrQkY7RUFDQTtBb0Y0K0lKOztBekQ1Z0pFO0VBQ0U7RWpDMkhFLG9CQXRDYTtFaUNuRmYsZ0JsQ29PMEI7QTJGMnlJOUI7QXpEMWdKTTtFM0JxQ0Y7RUFDQTtBb0Z3K0lKO0F6RHpnSk07RTNCa0JGO0VBQ0E7QW9GMC9JSjs7QXhEeGhKQTtFQUNFO0VBQ0E7RWxDaUVFO0VrQy9ERixnQm5DdVI0QjtFbUN0UjVCO0VBQ0E7RUFDQTtFQUNBO0U1QktFO0VVRkUscUlrQkRKO0F3RDJoSkY7QTFFdGhKTTtFa0JmTjtJbEJnQlE7RTBFeWhKTjtBQUNGO0F6Ri9oSkU7RWlDR0k7QXdEK2hKTjs7QXhEMWhKRTtFQUNFO0F3RDZoSko7O0F4RHhoSkE7RUFDRTtFQUNBO0F3RDJoSkY7O0F4RHBoSkE7RUFDRSxvQm5DKzNCa0M7RW1DOTNCbEMsbUJuQzgzQmtDO0VPcjVCaEM7QW9GK2lKSjs7QXhEL2dKRTtFQ2pEQTtFQUNBLHlCcEMwRWE7QTJGMC9JZjtBekZ0akpFO0VrQ1ZJO0VBQ0E7QXVEbWtKTjtBdkRoa0pJO0VBRUU7RUFDQTtBdURpa0pOOztBeEQ1aEpFO0VDakRBO0VBQ0EseUJwQzBFYTtBMkZ1Z0pmO0F6Rm5rSkU7RWtDVkk7RUFDQTtBdURnbEpOO0F2RDdrSkk7RUFFRTtFQUNBO0F1RDhrSk47O0F4RHppSkU7RUNqREE7RUFDQSx5QnBDMEVhO0EyRm9oSmY7QXpGaGxKRTtFa0NWSTtFQUNBO0F1RDZsSk47QXZEMWxKSTtFQUVFO0VBQ0E7QXVEMmxKTjs7QXhEdGpKRTtFQ2pEQTtFQUNBLHlCcEMwRWE7QTJGaWlKZjtBekY3bEpFO0VrQ1ZJO0VBQ0E7QXVEMG1KTjtBdkR2bUpJO0VBRUU7RUFDQTtBdUR3bUpOOztBeERua0pFO0VDakRBO0VBQ0EseUJwQzBFYTtBMkY4aUpmO0F6RjFtSkU7RWtDVkk7RUFDQTtBdUR1bkpOO0F2RHBuSkk7RUFFRTtFQUNBO0F1RHFuSk47O0F4RGhsSkU7RUNqREE7RUFDQSx5QnBDMEVhO0EyRjJqSmY7QXpGdm5KRTtFa0NWSTtFQUNBO0F1RG9vSk47QXZEam9KSTtFQUVFO0VBQ0E7QXVEa29KTjs7QXhEN2xKRTtFQ2pEQTtFQUNBLHlCcEMwRWE7QTJGd2tKZjtBekZwb0pFO0VrQ1ZJO0VBQ0E7QXVEaXBKTjtBdkQ5b0pJO0VBRUU7RUFDQTtBdUQrb0pOOztBeEQxbUpFO0VDakRBO0VBQ0EseUJwQzBFYTtBMkZxbEpmO0F6RmpwSkU7RWtDVkk7RUFDQTtBdUQ4cEpOO0F2RDNwSkk7RUFFRTtFQUNBO0F1RDRwSk47O0F0RHpxSkE7RUFDRTtFQUNBLG1CckN1ekJrQztFcUNyekJsQyx5QnJDS1M7RU9TUDtBb0Y4cEpKO0FoRnBuSkk7RTBCNURKO0lBUUk7RXNENHFKRjtBQUNGOztBdER6cUpBO0VBQ0U7RUFDQTtFOUJJRTtBb0Z5cUpKOztBckR2ckpBO0VBQ0U7RUFDQTtFQUNBLG1CdEN1OUJrQztFc0N0OUJsQztFL0JVRTtBb0ZpckpKOztBckR0ckpBO0VBRUU7QXFEd3JKRjs7QXJEcHJKQTtFQUNFLGdCdEM0UTRCO0EyRjI2STlCOztBckQvcUpBO0VBQ0U7QXFEa3JKRjtBckQvcUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FxRGlySko7O0FyRHZxSkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFENHFKdkU7QXBEeHRKRTtFQUNFO0FvRDB0Sko7QXBEdnRKRTtFQUNFO0FvRHl0Sko7O0FyRG5ySkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEd3JKdkU7QXBEcHVKRTtFQUNFO0FvRHN1Sko7QXBEbnVKRTtFQUNFO0FvRHF1Sko7O0FyRC9ySkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEb3NKdkU7QXBEaHZKRTtFQUNFO0FvRGt2Sko7QXBEL3VKRTtFQUNFO0FvRGl2Sko7O0FyRDNzSkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEZ3RKdkU7QXBENXZKRTtFQUNFO0FvRDh2Sko7QXBEM3ZKRTtFQUNFO0FvRDZ2Sko7O0FyRHZ0SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFENHRKdkU7QXBEeHdKRTtFQUNFO0FvRDB3Sko7QXBEdndKRTtFQUNFO0FvRHl3Sko7O0FyRG51SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEd3VKdkU7QXBEcHhKRTtFQUNFO0FvRHN4Sko7QXBEbnhKRTtFQUNFO0FvRHF4Sko7O0FyRC91SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEb3ZKdkU7QXBEaHlKRTtFQUNFO0FvRGt5Sko7QXBEL3hKRTtFQUNFO0FvRGl5Sko7O0FyRDN2SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEZ3dKdkU7QXBENXlKRTtFQUNFO0FvRDh5Sko7QXBEM3lKRTtFQUNFO0FvRDZ5Sko7O0FuRHJ6SkU7RUFDRTtJQUFPO0VtRHl6SlQ7RW5EeHpKRTtJQUFLO0VtRDJ6SlA7QUFDRjs7QW5EOXpKRTtFQUNFO0lBQU87RW1EeXpKVDtFbkR4ekpFO0lBQUs7RW1EMnpKUDtBQUNGO0FuRHh6SkE7RUFDRTtFQUNBLFl4Q2crQmtDO0V3Qy85QmxDO0VBQ0E7RXZDbUhJLG1CQXRDYTtFdUMzRWpCLHlCeENMUztFT1NQO0FvRnV6Sko7O0FuRHR6SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdvRE1NO0VwRExOO0VBQ0E7RUFDQSx5QnhDcTlCa0M7RWlCaCtCOUIsMkJ1QllKO0FtRHl6SkY7QTFFajBKTTtFdUJETjtJdkJFUTtFMEVvMEpOO0FBQ0Y7O0FuRDN6SkE7RXJCWUU7RXFCVkE7QW1EOHpKRjs7QW5EMXpKRTtFQUNFO1VBQUE7QW1ENnpKSjtBbkQxekpNO0VBSko7SUFLTTtZQUFBO0VtRDZ6Sk47QUFDRjs7QWxEeDJKQTtFQUNFO0VBQ0E7QWtEMjJKRjs7QWxEeDJKQTtFQUNFO0FrRDIySkY7O0FqRDcySkE7RUFDRTtFQUNBO0VBR0E7RUFDQTtFbkNRRTtBb0Z1MkpKOztBakRyMkpBO0VBQ0U7RUFDQSxjMUNSUztFMENTVDtBaUR3MkpGO0F6Ri8ySkU7RXdDV0U7RUFDQSxjMUNkTztFMENlUDtFQUNBLHlCMUN0Qk87QTJGNjNKWDtBakRwMkpFO0VBQ0UsYzFDbEJPO0UwQ21CUCx5QjFDMUJPO0EyRmc0Slg7O0FqRDcxSkE7RUFDRTtFQUNBO0VBQ0E7RUFHQSxzQmtEcEJNO0VsRHFCTjtBaUQ4MUpGO0FqRDUxSkU7RW5DMUJFO0VBQ0E7QW9GeTNKSjtBakQ1MUpFO0VuQ2hCRTtFQUNBO0FvRisySko7QWpENTFKRTtFQUVFLGMxQ2xETztFMENtRFA7RUFDQSxzQmtEbkNJO0FEZzRKUjtBakR6MUpFO0VBQ0U7RUFDQSxXa0R6Q0k7RWxEMENKLHlCMUNrTDBCO0UwQ2pMMUIscUIxQ2lMMEI7QTJGMHFKOUI7QWpEeDFKRTtFQUNFO0FpRDAxSko7QWpEeDFKSTtFQUNFO0VBQ0EscUIxQzJKd0I7QTJGK3JKOUI7O0FqRDUwSkk7RUFDRTtBaUQrMEpOO0FqRDUwSlE7RW5DMUJKO0VBWkE7QW9GczNKSjtBakQzMEpRO0VuQzNDSjtFQVlBO0FvRjgySko7QWpEMTBKUTtFQUNFO0FpRDQwSlY7QWpEejBKUTtFQUNFLHFCMUMwSG9CO0UwQ3pIcEI7QWlEMjBKVjtBakR6MEpVO0VBQ0U7RUFDQSxzQjFDcUhrQjtBMkZzdEo5Qjs7QWhGdDRKSTtFK0JtQ0E7SUFDRTtFaUR1MkpKO0VqRHAySk07SW5DMUJKO0lBWkE7RW9GODRKRjtFakRuMkpNO0luQzNDSjtJQVlBO0VvRnM0SkY7RWpEbDJKTTtJQUNFO0VpRG8ySlI7RWpEajJKTTtJQUNFLHFCMUMwSG9CO0kwQ3pIcEI7RWlEbTJKUjtFakRqMkpRO0lBQ0U7SUFDQSxzQjFDcUhrQjtFMkY4dUo1QjtBQUNGO0FoRi81Skk7RStCbUNBO0lBQ0U7RWlEKzNKSjtFakQ1M0pNO0luQzFCSjtJQVpBO0VvRnM2SkY7RWpEMzNKTTtJbkMzQ0o7SUFZQTtFb0Y4NUpGO0VqRDEzSk07SUFDRTtFaUQ0M0pSO0VqRHozSk07SUFDRSxxQjFDMEhvQjtJMEN6SHBCO0VpRDIzSlI7RWpEejNKUTtJQUNFO0lBQ0Esc0IxQ3FIa0I7RTJGc3dKNUI7QUFDRjtBaEZ2N0pJO0UrQm1DQTtJQUNFO0VpRHU1Sko7RWpEcDVKTTtJbkMxQko7SUFaQTtFb0Y4N0pGO0VqRG41Sk07SW5DM0NKO0lBWUE7RW9GczdKRjtFakRsNUpNO0lBQ0U7RWlEbzVKUjtFakRqNUpNO0lBQ0UscUIxQzBIb0I7STBDekhwQjtFaURtNUpSO0VqRGo1SlE7SUFDRTtJQUNBLHNCMUNxSGtCO0UyRjh4SjVCO0FBQ0Y7QWhGLzhKSTtFK0JtQ0E7SUFDRTtFaUQrNkpKO0VqRDU2Sk07SW5DMUJKO0lBWkE7RW9GczlKRjtFakQzNkpNO0luQzNDSjtJQVlBO0VvRjg4SkY7RWpEMTZKTTtJQUNFO0VpRDQ2SlI7RWpEejZKTTtJQUNFLHFCMUMwSG9CO0kwQ3pIcEI7RWlEMjZKUjtFakR6NkpRO0lBQ0U7SUFDQSxzQjFDcUhrQjtFMkZzeko1QjtBQUNGO0FqRDk1SkE7RW5DbkhJO0FvRm9oS0o7QWpEOTVKRTtFQUNFO0FpRGc2Sko7QWpEOTVKSTtFQUNFO0FpRGc2Sk47O0FoRHppS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWlEeTVKM0M7QXpGamlLRTtFeUNQTSxjRCtJa0U7RUM5SWxFO0FnRDJpS1I7QWhEeGlLTTtFQUNFLFdpRGdCQTtFakRmQSx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FpRGs2SjFFOztBaER2aktFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FpRHU2SjNDO0F6Ri9pS0U7RXlDUE0sY0QrSWtFO0VDOUlsRTtBZ0R5aktSO0FoRHRqS007RUFDRSxXaURnQkE7RWpEZkEseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaURnN0oxRTs7QWhEcmtLRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBaURxN0ozQztBekY3aktFO0V5Q1BNLGNEK0lrRTtFQzlJbEU7QWdEdWtLUjtBaERwa0tNO0VBQ0UsV2lEZ0JBO0VqRGZBLHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QWlEODdKMUU7O0FoRG5sS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWlEbThKM0M7QXpGM2tLRTtFeUNQTSxjRCtJa0U7RUM5SWxFO0FnRHFsS1I7QWhEbGxLTTtFQUNFLFdpRGdCQTtFakRmQSx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FpRDQ4SjFFOztBaERqbUtFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FpRGk5SjNDO0F6RnpsS0U7RXlDUE0sY0QrSWtFO0VDOUlsRTtBZ0RtbUtSO0FoRGhtS007RUFDRSxXaURnQkE7RWpEZkEseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaUQwOUoxRTs7QWhEL21LRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBaUQrOUozQztBekZ2bUtFO0V5Q1BNLGNEK0lrRTtFQzlJbEU7QWdEaW5LUjtBaEQ5bUtNO0VBQ0UsV2lEZ0JBO0VqRGZBLHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QWlEdytKMUU7O0FoRDduS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWlENitKM0M7QXpGcm5LRTtFeUNQTSxjRCtJa0U7RUM5SWxFO0FnRCtuS1I7QWhENW5LTTtFQUNFLFdpRGdCQTtFakRmQSx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FpRHMvSjFFOztBaEQzb0tFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FpRDIvSjNDO0F6Rm5vS0U7RXlDUE0sY0QrSWtFO0VDOUlsRTtBZ0Q2b0tSO0FoRDFvS007RUFDRSxXaURnQkE7RWpEZkEseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaURvZ0sxRTs7QS9DNXBLQTtFQUNFO0UzQzhISSxrQkF0Q2E7RTJDdEZqQixnQjVDNlI0QjtFNEM1UjVCO0VBQ0EsVzVDWVM7RTRDWFQseUI1Q3NsQ2tDO0U0Q3JsQ2xDO0ErQytwS0Y7QXpGMXBLRTtFMENERSxXNUNNTztFNENMUDtBK0M4cEtKO0F6RjFwS0U7RTBDQ0k7QStDNHBLTjs7QS9DanBLQTtFQUNFO0VBQ0E7RUFDQTtBK0NvcEtGOztBL0M5b0tBO0VBQ0U7QStDaXBLRjs7QTlDdnJLQTtFQUdFLGlCN0N5NEJrQztFNkN4NEJsQyxnQjdDdzRCa0M7RUM3d0I5QixtQkF0Q2E7RTRDbEZqQiwyQzdDMDRCa0M7RTZDejRCbEM7RUFDQTtFQUNBLGdEN0MyNEJrQztFNkMxNEJsQztFdENPRTtBb0ZpcktKO0E5Q3JyS0U7RUFDRSxzQjdDODNCZ0M7QTJGeXpJcEM7QTlDcHJLRTtFQUNFO0E4Q3NyS0o7QTlDbnJLRTtFQUNFO0VBQ0E7QThDcXJLSjtBOUNscktFO0VBQ0U7QThDb3JLSjs7QTlDaHJLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGM3Q3ZCUztFNkN3QlQsMkM3Q20zQmtDO0U2Q2wzQmxDO0VBQ0E7RXRDWkU7RUFDQTtBb0Znc0tKOztBOUNqcktBO0VBQ0UsZ0I3Q2kyQmtDO0EyRm0xSXBDOztBN0MxdEtBO0VBRUU7QTZDNHRLRjtBN0MxdEtFO0VBQ0U7RUFDQTtBNkM0dEtKOztBN0N2dEtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYTlDMnBCa0M7RThDMXBCbEM7RUFDQTtFQUNBO0VBQ0E7RUFHQTtBNkN3dEtGOztBN0NqdEtBO0VBQ0U7RUFDQTtFQUNBLGM5Qys0QmtDO0U4Qzc0QmxDO0E2Q210S0Y7QTdDaHRLRTtFN0IzQkksbUM2QjRCRjtFQUNBLDhCOUNxNkJnQztBMkY2eUlwQztBMUUzdUtNO0U2QnVCSjtJN0J0Qk07RTBFOHVLTjtBQUNGO0E3Q3J0S0U7RUFDRSxlOUNtNkJnQztBMkZveklwQztBN0NudEtFO0VBQ0Usc0I5Q2c2QmdDO0EyRnF6SXBDOztBN0NqdEtBO0VBQ0U7RUFDQTtBNkNvdEtGO0E3Q2x0S0U7RUFDRTtFQUNBO0E2Q290S0o7QTdDanRLRTs7RUFFRTtBNkNtdEtKO0E3Q2h0S0U7RUFDRTtBNkNrdEtKOztBN0M5c0tBO0VBQ0U7RUFDQTtFQUNBO0E2Q2l0S0Y7QTdDOXNLRTtFQUNFO0VBQ0E7RUFDQTtFQUFBO0VBQUE7RUFDQTtBNkNndEtKO0E3QzVzS0U7RUFDRTtFQUNBO0VBQ0E7QTZDOHNLSjtBN0M1c0tJO0VBQ0U7QTZDOHNLTjtBN0Mzc0tJO0VBQ0U7QTZDNnNLTjs7QTdDdnNLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxzQjhDcEZNO0U5Q3FGTjtFQUNBO0V2Q2xHRTtFdUNzR0Y7QTZDc3NLRjs7QTdDbHNLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE5QytpQmtDO0U4QzlpQmxDO0VBQ0E7RUFDQSxzQjlDbEhTO0EyRnV6S1g7QTdDbHNLRTtFQUFTO0E2Q3FzS1g7QTdDcHNLRTtFQUFTLFk5QzZ6QnlCO0EyRjA0SXBDOztBN0Nsc0tBO0VBQ0U7RUFDQTtFQUNBO0VBQ0Esa0I5QzJ6QmtDO0U4QzF6QmxDO0V2Q3RIRTtFQUNBO0FvRjR6S0o7QTdDcHNLRTtFQUNFLGtCOUNzekJnQztFOENwekJoQztBNkNxc0tKOztBN0Noc0tBO0VBQ0U7RUFDQSxnQjhDeEppQjtBRDIxS25COztBN0M5cktBO0VBQ0U7RUFHQTtFQUNBLGE5Q3d3QmtDO0EyRnU3SXBDOztBN0MzcktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V2Q3pJRTtFQUNBO0FvRncwS0o7QTdDMXJLRTtFQUNFO0E2QzRyS0o7O0E3Q3ZyS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E2QzByS0Y7O0FoRmowS0k7RW1DNklGO0lBQ0UsZ0I5Q3F3QmdDO0k4Q3B3QmhDO0U2Q3dyS0Y7O0U3Q3JyS0E7SUFDRTtFNkN3cktGO0U3Q3RyS0U7SUFDRTtFNkN3cktKOztFN0NwcktBO0lBQ0U7RTZDdXJLRjtFN0NycktFO0lBQ0U7SUFDQTtJQUFBO0lBQUE7RTZDdXJLSjs7RTdDL3FLQTtJQUFZLGdCOUM2dUJzQjtFMkZzOElsQztBQUNGO0FoRjMxS0k7RW1DMktGOztJQUVFLGdCOUNxdUJnQztFMkY4OElsQztBQUNGO0FoRmoyS0k7RW1Da0xGO0lBQVksaUI5Qyt0QnNCO0UyRm85SWxDO0FBQ0Y7QTVDajZLQTtFQUNFO0VBQ0EsYS9DK3FCa0M7RStDOXFCbEM7RUFDQSxTL0MyMUJrQztFZ0QvMUJsQyxpQzRDR3VCO0U1Q0R2QjtFQUNBLGdCaEQyUjRCO0VnRDFSNUIsZ0I0Q0NpQjtFNUNBakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DZ0hJLG9CQXRDYTtFOEM5RWpCO0VBQ0E7QTRDNjZLRjtBNUMzNktFO0VBQVMsWS9DKzBCeUI7QTJGK2xKcEM7QTVDNTZLRTtFQUNFO0VBQ0E7RUFDQSxhL0MrMEJnQztFK0M5MEJoQyxjL0MrMEJnQztBMkYrbEpwQztBNUM1NktJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTRDODZLTjs7QTVDejZLQTtFQUNFO0E0QzQ2S0Y7QTVDMTZLRTtFQUNFO0E0QzQ2S0o7QTVDMTZLSTtFQUNFO0VBQ0E7RUFDQSxzQi9DdkJLO0EyRm04S1g7O0E1Q3Y2S0E7RUFDRTtBNEMwNktGO0E1Q3g2S0U7RUFDRTtFQUNBLGEvQ2l6QmdDO0UrQ2h6QmhDLGMvQyt5QmdDO0EyRjJuSnBDO0E1Q3g2S0k7RUFDRTtFQUNBO0VBQ0Esd0IvQ3ZDSztBMkZpOUtYOztBNUNyNktBO0VBQ0U7QTRDdzZLRjtBNUN0NktFO0VBQ0U7QTRDdzZLSjtBNUN0NktJO0VBQ0U7RUFDQTtFQUNBLHlCL0NyREs7QTJGNjlLWDs7QTVDbjZLQTtFQUNFO0E0Q3M2S0Y7QTVDcDZLRTtFQUNFO0VBQ0EsYS9DbXhCZ0M7RStDbHhCaEMsYy9DaXhCZ0M7QTJGcXBKcEM7QTVDcDZLSTtFQUNFO0VBQ0E7RUFDQSx1Qi9DckVLO0EyRjIrS1g7O0E1Q2o1S0E7RUFDRSxnQi9DNnVCa0M7RStDNXVCbEM7RUFDQSxXNkNoRk07RTdDaUZOO0VBQ0Esc0IvQy9GUztFT0NQO0FvRm0vS0o7O0ExQ3JnTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhakQ2cUJrQztFaUQ1cUJsQztFQUNBLGdCakQ2MkJrQztFZ0RsM0JsQyxpQzRDR3VCO0U1Q0R2QjtFQUNBLGdCaEQyUjRCO0VnRDFSNUIsZ0I0Q0NpQjtFNUNBakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DZ0hJLG9CQXRDYTtFZ0Q3RWpCO0VBQ0Esc0IyQ2lCTTtFM0NoQk47RUFDQTtFMUNHRTtBb0ZnaExKO0ExQy9nTEU7RUFDRTtFQUNBO0VBQ0EsV2pENjJCZ0M7RWlENTJCaEMsY2pENjJCZ0M7RWlENTJCaEM7QTBDaWhMSjtBMUMvZ0xJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMENnaExOOztBMUMzZ0xBO0VBQ0UscUJqRDgxQmtDO0EyRmdySnBDO0ExQzVnTEU7RUFDRTtBMEM4Z0xKO0ExQzVnTEk7RUFDRTtFQUNBO0VBQ0EscUNqRHkxQjhCO0EyRnFySnBDO0ExQzNnTEk7RUFDRSxXakQwTHdCO0VpRHpMeEI7RUFDQSxzQjJDdEJFO0FEbWlMUjs7QTFDeGdMQTtFQUNFLG1CakQwMEJrQztBMkZpc0pwQztBMUN6Z0xFO0VBQ0U7RUFDQSxhakRzMEJnQztFaURyMEJoQyxZakRvMEJnQztFaURuMEJoQztBMEMyZ0xKO0ExQ3pnTEk7RUFDRTtFQUNBO0VBQ0EsdUNqRGswQjhCO0EyRnlzSnBDO0ExQ3hnTEk7RUFDRSxTakRtS3dCO0VpRGxLeEI7RUFDQSx3QjJDN0NFO0FEdWpMUjs7QTFDcmdMQTtFQUNFLGtCakRtekJrQztBMkZxdEpwQztBMUN0Z0xFO0VBQ0U7QTBDd2dMSjtBMUN0Z0xJO0VBQ0U7RUFDQTtFQUNBLHdDakQ4eUI4QjtBMkYwdEpwQztBMUNyZ0xJO0VBQ0UsUWpEK0l3QjtFaUQ5SXhCO0VBQ0EseUIyQ2pFRTtBRHdrTFI7QTFDbGdMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2pEMHhCZ0M7RWlEenhCaEM7RUFDQTtFQUNBO0EwQ29nTEo7O0ExQ2hnTEE7RUFDRSxvQmpEbXhCa0M7QTJGZ3ZKcEM7QTFDamdMRTtFQUNFO0VBQ0EsYWpEK3dCZ0M7RWlEOXdCaEMsWWpENndCZ0M7RWlENXdCaEM7QTBDbWdMSjtBMUNqZ0xJO0VBQ0U7RUFDQTtFQUNBLHNDakQyd0I4QjtBMkZ3dkpwQztBMUNoZ0xJO0VBQ0UsVWpENEd3QjtFaUQzR3hCO0VBQ0EsdUIyQ3BHRTtBRHNtTFI7O0ExQzUrS0E7RUFDRTtFQUNBO0VoRDNCSSxpQkF0Q2E7RWdEb0VqQix5QmpENnRCa0M7RWlENXRCbEM7RTFDbklFO0VBQ0E7QW9Ga25MSjtBMUM3K0tFO0VBQ0U7QTBDKytLSjs7QTFDMytLQTtFQUNFO0VBQ0EsY2pEeEpTO0EyRnNvTFg7O0F6Q3pvTEE7RUFDRTtBeUM0b0xGOztBekN6b0xBO0VBQ0U7QXlDNG9MRjs7QXpDem9MQTtFQUNFO0VBQ0E7RUFDQTtBeUM0b0xGO0F4Q25xTEU7RUFDRTtFQUNBO0VBQ0E7QXdDcXFMSjs7QXpDN29MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0VqQ2xCSSxzQ2lDbUJKO0F5Q2dwTEY7QTFFL3BMTTtFaUNRTjtJakNQUTtFMEVrcUxOO0FBQ0Y7O0F6Q2xwTEE7OztFQUdFO0F5Q3FwTEY7O0F6Q2xwTEE7O0VBRUU7QXlDcXBMRjs7QXpDbHBMQTs7RUFFRTtBeUNxcExGOztBekM1b0xFO0VBQ0U7RUFDQTtFQUNBO0F5QytvTEo7QXpDNW9MRTs7O0VBR0U7RUFDQTtBeUM4b0xKO0F6QzNvTEU7O0VBRUU7RUFDQTtFakM1REUsMkJpQzZERjtBeUM2b0xKO0ExRXRzTE07RWlDcURKOztJakNwRE07RTBFMHNMTjtBQUNGOztBekMxb0xBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWxEbzlCbUM7RWtEbjlCbkMsVzBDbkVNO0UxQ29FTjtFQUNBLFlsRGs5Qm1DO0VpQnJpQy9CLDhCaUNvRko7QXlDNG9MRjtBMUU1dExNO0VpQ2tFTjs7SWpDakVRO0UwRWd1TE47QUFDRjtBekZ0dUxFOzs7RWdEd0ZFLFcwQzFFSTtFMUMyRUo7RUFDQTtFQUNBLFlsRDI4QmlDO0EyRndzSnJDOztBekNocExBO0VBQ0U7QXlDbXBMRjs7QXpDOW9MQTtFQUNFO0F5Q2lwTEY7O0F6QzFvTEE7O0VBRUU7RUFDQSxXbERvOEJtQztFa0RuOEJuQyxZbERtOEJtQztFa0RsOEJuQztBeUM2b0xGOztBekMzb0xBO0VBQ0U7QXlDOG9MRjs7QXpDNW9MQTtFQUNFO0F5QytvTEY7O0F6Q3RvTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsaUJsRDA1Qm1DO0VrRHo1Qm5DLGdCbER5NUJtQztFa0R4NUJuQztBeUN3b0xGO0F6Q3RvTEU7RUFDRTtFQUNBO0VBQ0EsV2xEdzVCaUM7RWtEdjVCakMsV2xEdzVCaUM7RWtEdjVCakMsaUJsRHk1QmlDO0VrRHg1QmpDLGdCbER3NUJpQztFa0R2NUJqQztFQUNBO0VBQ0Esc0IwQ3pJSTtFMUMwSUo7RUFFQTtFQUNBO0VBQ0E7RWpDNUpFLDZCaUM2SkY7QXlDdW9MSjtBMUVoeUxNO0VpQzBJSjtJakN6SU07RTBFbXlMTjtBQUNGO0F6Q3pvTEU7RUFDRTtBeUMyb0xKOztBekNsb0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXMENwS007RTFDcUtOO0F5Q3FvTEY7O0F2Q3AwTEE7RUFDRTtJQUFLO0V1Q3cwTEw7QUFDRjs7QXZDMTBMQTtFQUNFO0lBQUs7RXVDdzBMTDtBQUNGO0F2Q3QwTEE7RUFDRTtFQUNBLFdwRG9rQ3NCO0VvRG5rQ3RCLFlwRG1rQ3NCO0VvRGxrQ3RCO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7VUFBQTtBdUN1MExGOztBdkNwMExBO0VBQ0UsV3BENmpDd0I7RW9ENWpDeEIsWXBENGpDd0I7RW9EM2pDeEIsbUJwRDZqQ3dCO0EyRjB3SjFCOztBdkNoMExBO0VBQ0U7SUFDRTtFdUNtMExGO0V2Q2owTEE7SUFDRTtJQUNBO0V1Q20wTEY7QUFDRjs7QXZDMTBMQTtFQUNFO0lBQ0U7RXVDbTBMRjtFdkNqMExBO0lBQ0U7SUFDQTtFdUNtMExGO0FBQ0Y7QXZDaDBMQTtFQUNFO0VBQ0EsV3BEb2lDc0I7RW9EbmlDdEIsWXBEbWlDc0I7RW9EbGlDdEI7RUFDQTtFQUVBO0VBQ0E7RUFDQTtVQUFBO0F1Q2kwTEY7O0F2Qzl6TEE7RUFDRSxXcEQ2aEN3QjtFb0Q1aEN4QixZcEQ0aEN3QjtBMkZxeUoxQjs7QXZDN3pMRTtFQUNFOztJQUVFO1lBQUE7RXVDZzBMSjtBQUNGO0F0QzUzTEE7RUFBcUI7QXNDKzNMckI7O0F0QzkzTEE7RUFBcUI7QXNDazRMckI7O0F0Q2o0TEE7RUFBcUI7QXNDcTRMckI7O0F0Q3A0TEE7RUFBcUI7QXNDdzRMckI7O0F0Q3Y0TEE7RUFBcUI7QXNDMjRMckI7O0F0QzE0TEE7RUFBcUI7QXNDODRMckI7O0FyQ2g1TEU7RUFDRTtBcUNtNUxKOztBekZ6NExFOzs7RW9ETEk7QXFDbzVMTjs7QXJDMTVMRTtFQUNFO0FxQzY1TEo7O0F6Rm41TEU7OztFb0RMSTtBcUM4NUxOOztBckNwNkxFO0VBQ0U7QXFDdTZMSjs7QXpGNzVMRTs7O0VvRExJO0FxQ3c2TE47O0FyQzk2TEU7RUFDRTtBcUNpN0xKOztBekZ2NkxFOzs7RW9ETEk7QXFDazdMTjs7QXJDeDdMRTtFQUNFO0FxQzI3TEo7O0F6Rmo3TEU7OztFb0RMSTtBcUM0N0xOOztBckNsOExFO0VBQ0U7QXFDcThMSjs7QXpGMzdMRTs7O0VvRExJO0FxQ3M4TE47O0FyQzU4TEU7RUFDRTtBcUMrOExKOztBekZyOExFOzs7RW9ETEk7QXFDZzlMTjs7QXJDdDlMRTtFQUNFO0FxQ3k5TEo7O0F6Ri84TEU7OztFb0RMSTtBcUMwOUxOOztBcEN6OUxBO0VBQ0U7QW9DNDlMRjs7QXBDejlMQTtFQUNFO0FvQzQ5TEY7O0FuQ3YrTEE7RUFBa0I7QW1DMitMbEI7O0FuQzErTEE7RUFBa0I7QW1DOCtMbEI7O0FuQzcrTEE7RUFBa0I7QW1DaS9MbEI7O0FuQ2gvTEE7RUFBa0I7QW1Dby9MbEI7O0FuQ24vTEE7RUFBa0I7QW1DdS9MbEI7O0FuQ3IvTEE7RUFBbUI7QW1DeS9MbkI7O0FuQ3gvTEE7RUFBbUI7QW1DNC9MbkI7O0FuQzMvTEE7RUFBbUI7QW1DKy9MbkI7O0FuQzkvTEE7RUFBbUI7QW1Da2dNbkI7O0FuQ2pnTUE7RUFBbUI7QW1DcWdNbkI7O0FuQ2xnTUU7RUFDRTtBbUNxZ01KOztBbkN0Z01FO0VBQ0U7QW1DeWdNSjs7QW5DMWdNRTtFQUNFO0FtQzZnTUo7O0FuQzlnTUU7RUFDRTtBbUNpaE1KOztBbkNsaE1FO0VBQ0U7QW1DcWhNSjs7QW5DdGhNRTtFQUNFO0FtQ3loTUo7O0FuQzFoTUU7RUFDRTtBbUM2aE1KOztBbkM5aE1FO0VBQ0U7QW1DaWlNSjs7QW5DN2hNQTtFQUNFO0FtQ2dpTUY7O0FuQ3poTUE7RUFDRTtBbUM0aE1GOztBbkN6aE1BO0VBQ0U7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0FtQzRoTUY7O0FuQ3poTUE7RUFDRTtBbUM0aE1GOztBbkN6aE1BO0VBQ0U7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0FtQzRoTUY7O0F4Q3BtTUU7RUFDRTtFQUNBO0VBQ0E7QXdDdW1NSjs7QWxDaG1NTTtFQUF3QjtBa0NvbU05Qjs7QWxDcG1NTTtFQUF3QjtBa0N3bU05Qjs7QWxDeG1NTTtFQUF3QjtBa0M0bU05Qjs7QWxDNW1NTTtFQUF3QjtBa0Nnbk05Qjs7QWxDaG5NTTtFQUF3QjtBa0Nvbk05Qjs7QWxDcG5NTTtFQUF3QjtBa0N3bk05Qjs7QWxDeG5NTTtFQUF3QjtBa0M0bk05Qjs7QWxDNW5NTTtFQUF3QjtBa0Nnb005Qjs7QWxDaG9NTTtFQUF3QjtBa0Nvb005Qjs7QWhGbmxNSTtFOENqREU7SUFBd0I7RWtDeW9NNUI7O0VsQ3pvTUk7SUFBd0I7RWtDNm9NNUI7O0VsQzdvTUk7SUFBd0I7RWtDaXBNNUI7O0VsQ2pwTUk7SUFBd0I7RWtDcXBNNUI7O0VsQ3JwTUk7SUFBd0I7RWtDeXBNNUI7O0VsQ3pwTUk7SUFBd0I7RWtDNnBNNUI7O0VsQzdwTUk7SUFBd0I7RWtDaXFNNUI7O0VsQ2pxTUk7SUFBd0I7RWtDcXFNNUI7O0VsQ3JxTUk7SUFBd0I7RWtDeXFNNUI7QUFDRjtBaEZ6bk1JO0U4Q2pERTtJQUF3QjtFa0M4cU01Qjs7RWxDOXFNSTtJQUF3QjtFa0Nrck01Qjs7RWxDbHJNSTtJQUF3QjtFa0Nzck01Qjs7RWxDdHJNSTtJQUF3QjtFa0Mwck01Qjs7RWxDMXJNSTtJQUF3QjtFa0M4ck01Qjs7RWxDOXJNSTtJQUF3QjtFa0Nrc001Qjs7RWxDbHNNSTtJQUF3QjtFa0Nzc001Qjs7RWxDdHNNSTtJQUF3QjtFa0Mwc001Qjs7RWxDMXNNSTtJQUF3QjtFa0M4c001QjtBQUNGO0FoRjlwTUk7RThDakRFO0lBQXdCO0VrQ210TTVCOztFbENudE1JO0lBQXdCO0VrQ3V0TTVCOztFbEN2dE1JO0lBQXdCO0VrQzJ0TTVCOztFbEMzdE1JO0lBQXdCO0VrQyt0TTVCOztFbEMvdE1JO0lBQXdCO0VrQ211TTVCOztFbENudU1JO0lBQXdCO0VrQ3V1TTVCOztFbEN2dU1JO0lBQXdCO0VrQzJ1TTVCOztFbEMzdU1JO0lBQXdCO0VrQyt1TTVCOztFbEMvdU1JO0lBQXdCO0VrQ212TTVCO0FBQ0Y7QWhGbnNNSTtFOENqREU7SUFBd0I7RWtDd3ZNNUI7O0VsQ3h2TUk7SUFBd0I7RWtDNHZNNUI7O0VsQzV2TUk7SUFBd0I7RWtDZ3dNNUI7O0VsQ2h3TUk7SUFBd0I7RWtDb3dNNUI7O0VsQ3B3TUk7SUFBd0I7RWtDd3dNNUI7O0VsQ3h3TUk7SUFBd0I7RWtDNHdNNUI7O0VsQzV3TUk7SUFBd0I7RWtDZ3hNNUI7O0VsQ2h4TUk7SUFBd0I7RWtDb3hNNUI7O0VsQ3B4TUk7SUFBd0I7RWtDd3hNNUI7QUFDRjtBbEMvd01BO0VBRUk7SUFBcUI7RWtDaXhNdkI7O0VsQ2p4TUU7SUFBcUI7RWtDcXhNdkI7O0VsQ3J4TUU7SUFBcUI7RWtDeXhNdkI7O0VsQ3p4TUU7SUFBcUI7RWtDNnhNdkI7O0VsQzd4TUU7SUFBcUI7RWtDaXlNdkI7O0VsQ2p5TUU7SUFBcUI7RWtDcXlNdkI7O0VsQ3J5TUU7SUFBcUI7RWtDeXlNdkI7O0VsQ3p5TUU7SUFBcUI7RWtDNnlNdkI7O0VsQzd5TUU7SUFBcUI7RWtDaXpNdkI7QUFDRjtBakN2ME1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaUN5ME1GO0FqQ3YwTUU7RUFDRTtFQUNBO0FpQ3kwTUo7QWpDdDBNRTs7Ozs7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaUN3ME1KOztBakMvek1JO0VBQ0U7QWlDazBNTjs7QWpDbjBNSTtFQUNFO0FpQ3MwTU47O0FqQ3YwTUk7RUFDRTtBaUMwME1OOztBakMzME1JO0VBQ0U7QWlDODBNTjs7QWhDdjJNSTtFQUFnQztBZ0MyMk1wQzs7QWhDMTJNSTtFQUFnQztBZ0M4Mk1wQzs7QWhDNzJNSTtFQUFnQztBZ0NpM01wQzs7QWhDaDNNSTtFQUFnQztBZ0NvM01wQzs7QWhDbDNNSTtFQUE4QjtBZ0NzM01sQzs7QWhDcjNNSTtFQUE4QjtBZ0N5M01sQzs7QWhDeDNNSTtFQUE4QjtBZ0M0M01sQzs7QWhDMzNNSTtFQUE4QjtBZ0MrM01sQzs7QWhDOTNNSTtFQUE4QjtBZ0NrNE1sQzs7QWhDajRNSTtFQUE4QjtBZ0NxNE1sQzs7QWhDcDRNSTtFQUE4QjtBZ0N3NE1sQzs7QWhDdjRNSTtFQUE4QjtBZ0MyNE1sQzs7QWhDejRNSTtFQUFvQztBZ0M2NE14Qzs7QWhDNTRNSTtFQUFvQztBZ0NnNU14Qzs7QWhDLzRNSTtFQUFvQztBZ0NtNU14Qzs7QWhDbDVNSTtFQUFvQztBZ0NzNU14Qzs7QWhDcjVNSTtFQUFvQztBZ0N5NU14Qzs7QWhDdjVNSTtFQUFpQztBZ0MyNU1yQzs7QWhDMTVNSTtFQUFpQztBZ0M4NU1yQzs7QWhDNzVNSTtFQUFpQztBZ0NpNk1yQzs7QWhDaDZNSTtFQUFpQztBZ0NvNk1yQzs7QWhDbjZNSTtFQUFpQztBZ0N1Nk1yQzs7QWhDcjZNSTtFQUFrQztBZ0N5Nk10Qzs7QWhDeDZNSTtFQUFrQztBZ0M0Nk10Qzs7QWhDMzZNSTtFQUFrQztBZ0MrNk10Qzs7QWhDOTZNSTtFQUFrQztBZ0NrN010Qzs7QWhDajdNSTtFQUFrQztBZ0NxN010Qzs7QWhDcDdNSTtFQUFrQztBZ0N3N010Qzs7QWhDdDdNSTtFQUFnQztBZ0MwN01wQzs7QWhDejdNSTtFQUFnQztBZ0M2N01wQzs7QWhDNTdNSTtFQUFnQztBZ0NnOE1wQzs7QWhDLzdNSTtFQUFnQztBZ0NtOE1wQzs7QWhDbDhNSTtFQUFnQztBZ0NzOE1wQzs7QWhDcjhNSTtFQUFnQztBZ0N5OE1wQzs7QWhGNzdNSTtFZ0RsREE7SUFBZ0M7RWdDby9NbEM7O0VoQ24vTUU7SUFBZ0M7RWdDdS9NbEM7O0VoQ3QvTUU7SUFBZ0M7RWdDMC9NbEM7O0VoQ3ovTUU7SUFBZ0M7RWdDNi9NbEM7O0VoQzMvTUU7SUFBOEI7RWdDKy9NaEM7O0VoQzkvTUU7SUFBOEI7RWdDa2dOaEM7O0VoQ2pnTkU7SUFBOEI7RWdDcWdOaEM7O0VoQ3BnTkU7SUFBOEI7RWdDd2dOaEM7O0VoQ3ZnTkU7SUFBOEI7RWdDMmdOaEM7O0VoQzFnTkU7SUFBOEI7RWdDOGdOaEM7O0VoQzdnTkU7SUFBOEI7RWdDaWhOaEM7O0VoQ2hoTkU7SUFBOEI7RWdDb2hOaEM7O0VoQ2xoTkU7SUFBb0M7RWdDc2hOdEM7O0VoQ3JoTkU7SUFBb0M7RWdDeWhOdEM7O0VoQ3hoTkU7SUFBb0M7RWdDNGhOdEM7O0VoQzNoTkU7SUFBb0M7RWdDK2hOdEM7O0VoQzloTkU7SUFBb0M7RWdDa2lOdEM7O0VoQ2hpTkU7SUFBaUM7RWdDb2lObkM7O0VoQ25pTkU7SUFBaUM7RWdDdWlObkM7O0VoQ3RpTkU7SUFBaUM7RWdDMGlObkM7O0VoQ3ppTkU7SUFBaUM7RWdDNmlObkM7O0VoQzVpTkU7SUFBaUM7RWdDZ2pObkM7O0VoQzlpTkU7SUFBa0M7RWdDa2pOcEM7O0VoQ2pqTkU7SUFBa0M7RWdDcWpOcEM7O0VoQ3BqTkU7SUFBa0M7RWdDd2pOcEM7O0VoQ3ZqTkU7SUFBa0M7RWdDMmpOcEM7O0VoQzFqTkU7SUFBa0M7RWdDOGpOcEM7O0VoQzdqTkU7SUFBa0M7RWdDaWtOcEM7O0VoQy9qTkU7SUFBZ0M7RWdDbWtObEM7O0VoQ2xrTkU7SUFBZ0M7RWdDc2tObEM7O0VoQ3JrTkU7SUFBZ0M7RWdDeWtObEM7O0VoQ3hrTkU7SUFBZ0M7RWdDNGtObEM7O0VoQzNrTkU7SUFBZ0M7RWdDK2tObEM7O0VoQzlrTkU7SUFBZ0M7RWdDa2xObEM7QUFDRjtBaEZ2a05JO0VnRGxEQTtJQUFnQztFZ0M2bk5sQzs7RWhDNW5ORTtJQUFnQztFZ0Nnb05sQzs7RWhDL25ORTtJQUFnQztFZ0Ntb05sQzs7RWhDbG9ORTtJQUFnQztFZ0Nzb05sQzs7RWhDcG9ORTtJQUE4QjtFZ0N3b05oQzs7RWhDdm9ORTtJQUE4QjtFZ0Myb05oQzs7RWhDMW9ORTtJQUE4QjtFZ0M4b05oQzs7RWhDN29ORTtJQUE4QjtFZ0NpcE5oQzs7RWhDaHBORTtJQUE4QjtFZ0NvcE5oQzs7RWhDbnBORTtJQUE4QjtFZ0N1cE5oQzs7RWhDdHBORTtJQUE4QjtFZ0MwcE5oQzs7RWhDenBORTtJQUE4QjtFZ0M2cE5oQzs7RWhDM3BORTtJQUFvQztFZ0MrcE50Qzs7RWhDOXBORTtJQUFvQztFZ0NrcU50Qzs7RWhDanFORTtJQUFvQztFZ0NxcU50Qzs7RWhDcHFORTtJQUFvQztFZ0N3cU50Qzs7RWhDdnFORTtJQUFvQztFZ0MycU50Qzs7RWhDenFORTtJQUFpQztFZ0M2cU5uQzs7RWhDNXFORTtJQUFpQztFZ0Nnck5uQzs7RWhDL3FORTtJQUFpQztFZ0Ntck5uQzs7RWhDbHJORTtJQUFpQztFZ0Nzck5uQzs7RWhDcnJORTtJQUFpQztFZ0N5ck5uQzs7RWhDdnJORTtJQUFrQztFZ0Myck5wQzs7RWhDMXJORTtJQUFrQztFZ0M4ck5wQzs7RWhDN3JORTtJQUFrQztFZ0Npc05wQzs7RWhDaHNORTtJQUFrQztFZ0Nvc05wQzs7RWhDbnNORTtJQUFrQztFZ0N1c05wQzs7RWhDdHNORTtJQUFrQztFZ0Mwc05wQzs7RWhDeHNORTtJQUFnQztFZ0M0c05sQzs7RWhDM3NORTtJQUFnQztFZ0Mrc05sQzs7RWhDOXNORTtJQUFnQztFZ0NrdE5sQzs7RWhDanRORTtJQUFnQztFZ0NxdE5sQzs7RWhDcHRORTtJQUFnQztFZ0N3dE5sQzs7RWhDdnRORTtJQUFnQztFZ0MydE5sQztBQUNGO0FoRmh0Tkk7RWdEbERBO0lBQWdDO0VnQ3N3TmxDOztFaENyd05FO0lBQWdDO0VnQ3l3TmxDOztFaEN4d05FO0lBQWdDO0VnQzR3TmxDOztFaEMzd05FO0lBQWdDO0VnQyt3TmxDOztFaEM3d05FO0lBQThCO0VnQ2l4TmhDOztFaENoeE5FO0lBQThCO0VnQ294TmhDOztFaENueE5FO0lBQThCO0VnQ3V4TmhDOztFaEN0eE5FO0lBQThCO0VnQzB4TmhDOztFaEN6eE5FO0lBQThCO0VnQzZ4TmhDOztFaEM1eE5FO0lBQThCO0VnQ2d5TmhDOztFaEMveE5FO0lBQThCO0VnQ215TmhDOztFaENseU5FO0lBQThCO0VnQ3N5TmhDOztFaENweU5FO0lBQW9DO0VnQ3d5TnRDOztFaEN2eU5FO0lBQW9DO0VnQzJ5TnRDOztFaEMxeU5FO0lBQW9DO0VnQzh5TnRDOztFaEM3eU5FO0lBQW9DO0VnQ2l6TnRDOztFaENoek5FO0lBQW9DO0VnQ296TnRDOztFaENsek5FO0lBQWlDO0VnQ3N6Tm5DOztFaENyek5FO0lBQWlDO0VnQ3l6Tm5DOztFaEN4ek5FO0lBQWlDO0VnQzR6Tm5DOztFaEMzek5FO0lBQWlDO0VnQyt6Tm5DOztFaEM5ek5FO0lBQWlDO0VnQ2swTm5DOztFaENoME5FO0lBQWtDO0VnQ28wTnBDOztFaENuME5FO0lBQWtDO0VnQ3UwTnBDOztFaEN0ME5FO0lBQWtDO0VnQzAwTnBDOztFaEN6ME5FO0lBQWtDO0VnQzYwTnBDOztFaEM1ME5FO0lBQWtDO0VnQ2cxTnBDOztFaEMvME5FO0lBQWtDO0VnQ20xTnBDOztFaENqMU5FO0lBQWdDO0VnQ3ExTmxDOztFaENwMU5FO0lBQWdDO0VnQ3cxTmxDOztFaEN2MU5FO0lBQWdDO0VnQzIxTmxDOztFaEMxMU5FO0lBQWdDO0VnQzgxTmxDOztFaEM3MU5FO0lBQWdDO0VnQ2kyTmxDOztFaENoMk5FO0lBQWdDO0VnQ28yTmxDO0FBQ0Y7QWhGejFOSTtFZ0RsREE7SUFBZ0M7RWdDKzRObEM7O0VoQzk0TkU7SUFBZ0M7RWdDazVObEM7O0VoQ2o1TkU7SUFBZ0M7RWdDcTVObEM7O0VoQ3A1TkU7SUFBZ0M7RWdDdzVObEM7O0VoQ3Q1TkU7SUFBOEI7RWdDMDVOaEM7O0VoQ3o1TkU7SUFBOEI7RWdDNjVOaEM7O0VoQzU1TkU7SUFBOEI7RWdDZzZOaEM7O0VoQy81TkU7SUFBOEI7RWdDbTZOaEM7O0VoQ2w2TkU7SUFBOEI7RWdDczZOaEM7O0VoQ3I2TkU7SUFBOEI7RWdDeTZOaEM7O0VoQ3g2TkU7SUFBOEI7RWdDNDZOaEM7O0VoQzM2TkU7SUFBOEI7RWdDKzZOaEM7O0VoQzc2TkU7SUFBb0M7RWdDaTdOdEM7O0VoQ2g3TkU7SUFBb0M7RWdDbzdOdEM7O0VoQ243TkU7SUFBb0M7RWdDdTdOdEM7O0VoQ3Q3TkU7SUFBb0M7RWdDMDdOdEM7O0VoQ3o3TkU7SUFBb0M7RWdDNjdOdEM7O0VoQzM3TkU7SUFBaUM7RWdDKzdObkM7O0VoQzk3TkU7SUFBaUM7RWdDazhObkM7O0VoQ2o4TkU7SUFBaUM7RWdDcThObkM7O0VoQ3A4TkU7SUFBaUM7RWdDdzhObkM7O0VoQ3Y4TkU7SUFBaUM7RWdDMjhObkM7O0VoQ3o4TkU7SUFBa0M7RWdDNjhOcEM7O0VoQzU4TkU7SUFBa0M7RWdDZzlOcEM7O0VoQy84TkU7SUFBa0M7RWdDbTlOcEM7O0VoQ2w5TkU7SUFBa0M7RWdDczlOcEM7O0VoQ3I5TkU7SUFBa0M7RWdDeTlOcEM7O0VoQ3g5TkU7SUFBa0M7RWdDNDlOcEM7O0VoQzE5TkU7SUFBZ0M7RWdDODlObEM7O0VoQzc5TkU7SUFBZ0M7RWdDaStObEM7O0VoQ2grTkU7SUFBZ0M7RWdDbytObEM7O0VoQ24rTkU7SUFBZ0M7RWdDdStObEM7O0VoQ3QrTkU7SUFBZ0M7RWdDMCtObEM7O0VoQ3orTkU7SUFBZ0M7RWdDNitObEM7QUFDRjtBL0J4aE9JO0VBQXdCO0ErQjJoTzVCOztBL0IxaE9JO0VBQXdCO0ErQjhoTzVCOztBL0I3aE9JO0VBQXdCO0ErQmlpTzVCOztBaEY3K05JO0VpRHREQTtJQUF3QjtFK0J3aU8xQjs7RS9CdmlPRTtJQUF3QjtFK0IyaU8xQjs7RS9CMWlPRTtJQUF3QjtFK0I4aU8xQjtBQUNGO0FoRjMvTkk7RWlEdERBO0lBQXdCO0UrQnFqTzFCOztFL0Jwak9FO0lBQXdCO0UrQndqTzFCOztFL0J2ak9FO0lBQXdCO0UrQjJqTzFCO0FBQ0Y7QWhGeGdPSTtFaUR0REE7SUFBd0I7RStCa2tPMUI7O0UvQmprT0U7SUFBd0I7RStCcWtPMUI7O0UvQnBrT0U7SUFBd0I7RStCd2tPMUI7QUFDRjtBaEZyaE9JO0VpRHREQTtJQUF3QjtFK0Ira08xQjs7RS9COWtPRTtJQUF3QjtFK0JrbE8xQjs7RS9CamxPRTtJQUF3QjtFK0JxbE8xQjtBQUNGO0E5QjNsT0U7RUFBeUI7S0FBQTtVQUFBO0E4QjhsTzNCOztBOUI5bE9FO0VBQXlCO0tBQUE7TUFBQTtVQUFBO0E4QmttTzNCOztBOUJsbU9FO0VBQXlCO0tBQUE7TUFBQTtVQUFBO0E4QnNtTzNCOztBN0J0bU9FO0VBQXNCO0E2QjBtT3hCOztBN0IxbU9FO0VBQXNCO0E2QjhtT3hCOztBNUI3bU9FO0VBQXlCO0E0QmluTzNCOztBNUJqbk9FO0VBQXlCO0E0QnFuTzNCOztBNUJybk9FO0VBQXlCO0E0QnluTzNCOztBNUJ6bk9FO0VBQXlCO0E0QjZuTzNCOztBNUI3bk9FO0VBQXlCO0E0QmlvTzNCOztBNUI1bk9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhL0RncUJrQztBMkYrOU1wQzs7QTVCNW5PQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYS9Ed3BCa0M7QTJGdStNcEM7O0E1QjNuT0U7RUFERjtJQUVJO0lBQ0E7SUFDQSxhL0RncEJnQztFMkYrK01sQztBQUNGOztBM0J6cE9BO0VDRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EwQjJwT0Y7O0ExQmpwT0U7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTBCbXBPSjs7QXpCaHJPQTtFQUFhO0F5Qm9yT2I7O0F6Qm5yT0E7RUFBVTtBeUJ1ck9WOztBekJ0ck9BO0VBQWE7QXlCMHJPYjs7QXpCenJPQTtFQUFlO0F5QjZyT2Y7O0F4QjVyT0k7RUFBdUI7QXdCZ3NPM0I7O0F4QmhzT0k7RUFBdUI7QXdCb3NPM0I7O0F4QnBzT0k7RUFBdUI7QXdCd3NPM0I7O0F4QnhzT0k7RUFBdUI7QXdCNHNPM0I7O0F4QjVzT0k7RUFBdUI7QXdCZ3RPM0I7O0F4Qmh0T0k7RUFBdUI7QXdCb3RPM0I7O0F4QnB0T0k7RUFBdUI7QXdCd3RPM0I7O0F4Qnh0T0k7RUFBdUI7QXdCNHRPM0I7O0F4QjV0T0k7RUFBdUI7QXdCZ3VPM0I7O0F4Qmh1T0k7RUFBdUI7QXdCb3VPM0I7O0F4Qmh1T0E7RUFBVTtBd0JvdU9WOztBeEJudU9BO0VBQVU7QXdCdXVPVjs7QXhCbnVPQTtFQUFjO0F3QnV1T2Q7O0F4QnR1T0E7RUFBYztBd0IwdU9kOztBeEJ4dU9BO0VBQVU7QXdCNHVPVjs7QXhCM3VPQTtFQUFVO0F3Qit1T1Y7O0F2Qnh2T1E7RUFBZ0M7QXVCNHZPeEM7O0F2QjN2T1E7O0VBRUU7QXVCOHZPVjs7QXZCNXZPUTs7RUFFRTtBdUIrdk9WOztBdkI3dk9ROztFQUVFO0F1Qmd3T1Y7O0F2Qjl2T1E7O0VBRUU7QXVCaXdPVjs7QXZCaHhPUTtFQUFnQztBdUJveE94Qzs7QXZCbnhPUTs7RUFFRTtBdUJzeE9WOztBdkJweE9ROztFQUVFO0F1QnV4T1Y7O0F2QnJ4T1E7O0VBRUU7QXVCd3hPVjs7QXZCdHhPUTs7RUFFRTtBdUJ5eE9WOztBdkJ4eU9RO0VBQWdDO0F1QjR5T3hDOztBdkIzeU9ROztFQUVFO0F1Qjh5T1Y7O0F2QjV5T1E7O0VBRUU7QXVCK3lPVjs7QXZCN3lPUTs7RUFFRTtBdUJnek9WOztBdkI5eU9ROztFQUVFO0F1Qml6T1Y7O0F2QmgwT1E7RUFBZ0M7QXVCbzBPeEM7O0F2Qm4wT1E7O0VBRUU7QXVCczBPVjs7QXZCcDBPUTs7RUFFRTtBdUJ1ME9WOztBdkJyME9ROztFQUVFO0F1QncwT1Y7O0F2QnQwT1E7O0VBRUU7QXVCeTBPVjs7QXZCeDFPUTtFQUFnQztBdUI0MU94Qzs7QXZCMzFPUTs7RUFFRTtBdUI4MU9WOztBdkI1MU9ROztFQUVFO0F1QisxT1Y7O0F2QjcxT1E7O0VBRUU7QXVCZzJPVjs7QXZCOTFPUTs7RUFFRTtBdUJpMk9WOztBdkJoM09RO0VBQWdDO0F1Qm8zT3hDOztBdkJuM09ROztFQUVFO0F1QnMzT1Y7O0F2QnAzT1E7O0VBRUU7QXVCdTNPVjs7QXZCcjNPUTs7RUFFRTtBdUJ3M09WOztBdkJ0M09ROztFQUVFO0F1QnkzT1Y7O0F2Qng0T1E7RUFBZ0M7QXVCNDRPeEM7O0F2QjM0T1E7O0VBRUU7QXVCODRPVjs7QXZCNTRPUTs7RUFFRTtBdUIrNE9WOztBdkI3NE9ROztFQUVFO0F1Qmc1T1Y7O0F2Qjk0T1E7O0VBRUU7QXVCaTVPVjs7QXZCaDZPUTtFQUFnQztBdUJvNk94Qzs7QXZCbjZPUTs7RUFFRTtBdUJzNk9WOztBdkJwNk9ROztFQUVFO0F1QnU2T1Y7O0F2QnI2T1E7O0VBRUU7QXVCdzZPVjs7QXZCdDZPUTs7RUFFRTtBdUJ5Nk9WOztBdkJ4N09RO0VBQWdDO0F1QjQ3T3hDOztBdkIzN09ROztFQUVFO0F1Qjg3T1Y7O0F2QjU3T1E7O0VBRUU7QXVCKzdPVjs7QXZCNzdPUTs7RUFFRTtBdUJnOE9WOztBdkI5N09ROztFQUVFO0F1Qmk4T1Y7O0F2Qmg5T1E7RUFBZ0M7QXVCbzlPeEM7O0F2Qm45T1E7O0VBRUU7QXVCczlPVjs7QXZCcDlPUTs7RUFFRTtBdUJ1OU9WOztBdkJyOU9ROztFQUVFO0F1Qnc5T1Y7O0F2QnQ5T1E7O0VBRUU7QXVCeTlPVjs7QXZCeCtPUTtFQUFnQztBdUI0K094Qzs7QXZCMytPUTs7RUFFRTtBdUI4K09WOztBdkI1K09ROztFQUVFO0F1QisrT1Y7O0F2QjcrT1E7O0VBRUU7QXVCZy9PVjs7QXZCOStPUTs7RUFFRTtBdUJpL09WOztBdkJoZ1BRO0VBQWdDO0F1Qm9nUHhDOztBdkJuZ1BROztFQUVFO0F1QnNnUFY7O0F2QnBnUFE7O0VBRUU7QXVCdWdQVjs7QXZCcmdQUTs7RUFFRTtBdUJ3Z1BWOztBdkJ0Z1BROztFQUVFO0F1QnlnUFY7O0F2QmpnUFE7RUFBd0I7QXVCcWdQaEM7O0F2QnBnUFE7O0VBRUU7QXVCdWdQVjs7QXZCcmdQUTs7RUFFRTtBdUJ3Z1BWOztBdkJ0Z1BROztFQUVFO0F1QnlnUFY7O0F2QnZnUFE7O0VBRUU7QXVCMGdQVjs7QXZCemhQUTtFQUF3QjtBdUI2aFBoQzs7QXZCNWhQUTs7RUFFRTtBdUIraFBWOztBdkI3aFBROztFQUVFO0F1QmdpUFY7O0F2QjloUFE7O0VBRUU7QXVCaWlQVjs7QXZCL2hQUTs7RUFFRTtBdUJraVBWOztBdkJqalBRO0VBQXdCO0F1QnFqUGhDOztBdkJwalBROztFQUVFO0F1QnVqUFY7O0F2QnJqUFE7O0VBRUU7QXVCd2pQVjs7QXZCdGpQUTs7RUFFRTtBdUJ5alBWOztBdkJ2alBROztFQUVFO0F1QjBqUFY7O0F2QnprUFE7RUFBd0I7QXVCNmtQaEM7O0F2QjVrUFE7O0VBRUU7QXVCK2tQVjs7QXZCN2tQUTs7RUFFRTtBdUJnbFBWOztBdkI5a1BROztFQUVFO0F1QmlsUFY7O0F2Qi9rUFE7O0VBRUU7QXVCa2xQVjs7QXZCam1QUTtFQUF3QjtBdUJxbVBoQzs7QXZCcG1QUTs7RUFFRTtBdUJ1bVBWOztBdkJybVBROztFQUVFO0F1QndtUFY7O0F2QnRtUFE7O0VBRUU7QXVCeW1QVjs7QXZCdm1QUTs7RUFFRTtBdUIwbVBWOztBdkJwbVBJO0VBQW1CO0F1QndtUHZCOztBdkJ2bVBJOztFQUVFO0F1QjBtUE47O0F2QnhtUEk7O0VBRUU7QXVCMm1QTjs7QXZCem1QSTs7RUFFRTtBdUI0bVBOOztBdkIxbVBJOztFQUVFO0F1QjZtUE47O0FoRnRuUEk7RXlEbERJO0lBQWdDO0V1QjZxUHRDOztFdkI1cVBNOztJQUVFO0V1QitxUFI7O0V2QjdxUE07O0lBRUU7RXVCZ3JQUjs7RXZCOXFQTTs7SUFFRTtFdUJpclBSOztFdkIvcVBNOztJQUVFO0V1QmtyUFI7O0V2QmpzUE07SUFBZ0M7RXVCcXNQdEM7O0V2QnBzUE07O0lBRUU7RXVCdXNQUjs7RXZCcnNQTTs7SUFFRTtFdUJ3c1BSOztFdkJ0c1BNOztJQUVFO0V1QnlzUFI7O0V2QnZzUE07O0lBRUU7RXVCMHNQUjs7RXZCenRQTTtJQUFnQztFdUI2dFB0Qzs7RXZCNXRQTTs7SUFFRTtFdUIrdFBSOztFdkI3dFBNOztJQUVFO0V1Qmd1UFI7O0V2Qjl0UE07O0lBRUU7RXVCaXVQUjs7RXZCL3RQTTs7SUFFRTtFdUJrdVBSOztFdkJqdlBNO0lBQWdDO0V1QnF2UHRDOztFdkJwdlBNOztJQUVFO0V1QnV2UFI7O0V2QnJ2UE07O0lBRUU7RXVCd3ZQUjs7RXZCdHZQTTs7SUFFRTtFdUJ5dlBSOztFdkJ2dlBNOztJQUVFO0V1QjB2UFI7O0V2Qnp3UE07SUFBZ0M7RXVCNndQdEM7O0V2QjV3UE07O0lBRUU7RXVCK3dQUjs7RXZCN3dQTTs7SUFFRTtFdUJneFBSOztFdkI5d1BNOztJQUVFO0V1Qml4UFI7O0V2Qi93UE07O0lBRUU7RXVCa3hQUjs7RXZCanlQTTtJQUFnQztFdUJxeVB0Qzs7RXZCcHlQTTs7SUFFRTtFdUJ1eVBSOztFdkJyeVBNOztJQUVFO0V1Qnd5UFI7O0V2QnR5UE07O0lBRUU7RXVCeXlQUjs7RXZCdnlQTTs7SUFFRTtFdUIweVBSOztFdkJ6elBNO0lBQWdDO0V1QjZ6UHRDOztFdkI1elBNOztJQUVFO0V1Qit6UFI7O0V2Qjd6UE07O0lBRUU7RXVCZzBQUjs7RXZCOXpQTTs7SUFFRTtFdUJpMFBSOztFdkIvelBNOztJQUVFO0V1QmswUFI7O0V2QmoxUE07SUFBZ0M7RXVCcTFQdEM7O0V2QnAxUE07O0lBRUU7RXVCdTFQUjs7RXZCcjFQTTs7SUFFRTtFdUJ3MVBSOztFdkJ0MVBNOztJQUVFO0V1QnkxUFI7O0V2QnYxUE07O0lBRUU7RXVCMDFQUjs7RXZCejJQTTtJQUFnQztFdUI2MlB0Qzs7RXZCNTJQTTs7SUFFRTtFdUIrMlBSOztFdkI3MlBNOztJQUVFO0V1QmczUFI7O0V2QjkyUE07O0lBRUU7RXVCaTNQUjs7RXZCLzJQTTs7SUFFRTtFdUJrM1BSOztFdkJqNFBNO0lBQWdDO0V1QnE0UHRDOztFdkJwNFBNOztJQUVFO0V1QnU0UFI7O0V2QnI0UE07O0lBRUU7RXVCdzRQUjs7RXZCdDRQTTs7SUFFRTtFdUJ5NFBSOztFdkJ2NFBNOztJQUVFO0V1QjA0UFI7O0V2Qno1UE07SUFBZ0M7RXVCNjVQdEM7O0V2QjU1UE07O0lBRUU7RXVCKzVQUjs7RXZCNzVQTTs7SUFFRTtFdUJnNlBSOztFdkI5NVBNOztJQUVFO0V1Qmk2UFI7O0V2Qi81UE07O0lBRUU7RXVCazZQUjs7RXZCajdQTTtJQUFnQztFdUJxN1B0Qzs7RXZCcDdQTTs7SUFFRTtFdUJ1N1BSOztFdkJyN1BNOztJQUVFO0V1Qnc3UFI7O0V2QnQ3UE07O0lBRUU7RXVCeTdQUjs7RXZCdjdQTTs7SUFFRTtFdUIwN1BSOztFdkJsN1BNO0lBQXdCO0V1QnM3UDlCOztFdkJyN1BNOztJQUVFO0V1Qnc3UFI7O0V2QnQ3UE07O0lBRUU7RXVCeTdQUjs7RXZCdjdQTTs7SUFFRTtFdUIwN1BSOztFdkJ4N1BNOztJQUVFO0V1QjI3UFI7O0V2QjE4UE07SUFBd0I7RXVCODhQOUI7O0V2Qjc4UE07O0lBRUU7RXVCZzlQUjs7RXZCOThQTTs7SUFFRTtFdUJpOVBSOztFdkIvOFBNOztJQUVFO0V1Qms5UFI7O0V2Qmg5UE07O0lBRUU7RXVCbTlQUjs7RXZCbCtQTTtJQUF3QjtFdUJzK1A5Qjs7RXZCcitQTTs7SUFFRTtFdUJ3K1BSOztFdkJ0K1BNOztJQUVFO0V1QnkrUFI7O0V2QnYrUE07O0lBRUU7RXVCMCtQUjs7RXZCeCtQTTs7SUFFRTtFdUIyK1BSOztFdkIxL1BNO0lBQXdCO0V1QjgvUDlCOztFdkI3L1BNOztJQUVFO0V1QmdnUVI7O0V2QjkvUE07O0lBRUU7RXVCaWdRUjs7RXZCLy9QTTs7SUFFRTtFdUJrZ1FSOztFdkJoZ1FNOztJQUVFO0V1Qm1nUVI7O0V2QmxoUU07SUFBd0I7RXVCc2hROUI7O0V2QnJoUU07O0lBRUU7RXVCd2hRUjs7RXZCdGhRTTs7SUFFRTtFdUJ5aFFSOztFdkJ2aFFNOztJQUVFO0V1QjBoUVI7O0V2QnhoUU07O0lBRUU7RXVCMmhRUjs7RXZCcmhRRTtJQUFtQjtFdUJ5aFFyQjs7RXZCeGhRRTs7SUFFRTtFdUIyaFFKOztFdkJ6aFFFOztJQUVFO0V1QjRoUUo7O0V2QjFoUUU7O0lBRUU7RXVCNmhRSjs7RXZCM2hRRTs7SUFFRTtFdUI4aFFKO0FBQ0Y7QWhGeGlRSTtFeURsREk7SUFBZ0M7RXVCOGxRdEM7O0V2QjdsUU07O0lBRUU7RXVCZ21RUjs7RXZCOWxRTTs7SUFFRTtFdUJpbVFSOztFdkIvbFFNOztJQUVFO0V1QmttUVI7O0V2QmhtUU07O0lBRUU7RXVCbW1RUjs7RXZCbG5RTTtJQUFnQztFdUJzblF0Qzs7RXZCcm5RTTs7SUFFRTtFdUJ3blFSOztFdkJ0blFNOztJQUVFO0V1QnluUVI7O0V2QnZuUU07O0lBRUU7RXVCMG5RUjs7RXZCeG5RTTs7SUFFRTtFdUIyblFSOztFdkIxb1FNO0lBQWdDO0V1QjhvUXRDOztFdkI3b1FNOztJQUVFO0V1QmdwUVI7O0V2QjlvUU07O0lBRUU7RXVCaXBRUjs7RXZCL29RTTs7SUFFRTtFdUJrcFFSOztFdkJocFFNOztJQUVFO0V1Qm1wUVI7O0V2QmxxUU07SUFBZ0M7RXVCc3FRdEM7O0V2QnJxUU07O0lBRUU7RXVCd3FRUjs7RXZCdHFRTTs7SUFFRTtFdUJ5cVFSOztFdkJ2cVFNOztJQUVFO0V1QjBxUVI7O0V2QnhxUU07O0lBRUU7RXVCMnFRUjs7RXZCMXJRTTtJQUFnQztFdUI4clF0Qzs7RXZCN3JRTTs7SUFFRTtFdUJnc1FSOztFdkI5clFNOztJQUVFO0V1QmlzUVI7O0V2Qi9yUU07O0lBRUU7RXVCa3NRUjs7RXZCaHNRTTs7SUFFRTtFdUJtc1FSOztFdkJsdFFNO0lBQWdDO0V1QnN0UXRDOztFdkJydFFNOztJQUVFO0V1Qnd0UVI7O0V2QnR0UU07O0lBRUU7RXVCeXRRUjs7RXZCdnRRTTs7SUFFRTtFdUIwdFFSOztFdkJ4dFFNOztJQUVFO0V1QjJ0UVI7O0V2QjF1UU07SUFBZ0M7RXVCOHVRdEM7O0V2Qjd1UU07O0lBRUU7RXVCZ3ZRUjs7RXZCOXVRTTs7SUFFRTtFdUJpdlFSOztFdkIvdVFNOztJQUVFO0V1Qmt2UVI7O0V2Qmh2UU07O0lBRUU7RXVCbXZRUjs7RXZCbHdRTTtJQUFnQztFdUJzd1F0Qzs7RXZCcndRTTs7SUFFRTtFdUJ3d1FSOztFdkJ0d1FNOztJQUVFO0V1Qnl3UVI7O0V2QnZ3UU07O0lBRUU7RXVCMHdRUjs7RXZCeHdRTTs7SUFFRTtFdUIyd1FSOztFdkIxeFFNO0lBQWdDO0V1Qjh4UXRDOztFdkI3eFFNOztJQUVFO0V1Qmd5UVI7O0V2Qjl4UU07O0lBRUU7RXVCaXlRUjs7RXZCL3hRTTs7SUFFRTtFdUJreVFSOztFdkJoeVFNOztJQUVFO0V1Qm15UVI7O0V2Qmx6UU07SUFBZ0M7RXVCc3pRdEM7O0V2QnJ6UU07O0lBRUU7RXVCd3pRUjs7RXZCdHpRTTs7SUFFRTtFdUJ5elFSOztFdkJ2elFNOztJQUVFO0V1QjB6UVI7O0V2Qnh6UU07O0lBRUU7RXVCMnpRUjs7RXZCMTBRTTtJQUFnQztFdUI4MFF0Qzs7RXZCNzBRTTs7SUFFRTtFdUJnMVFSOztFdkI5MFFNOztJQUVFO0V1QmkxUVI7O0V2Qi8wUU07O0lBRUU7RXVCazFRUjs7RXZCaDFRTTs7SUFFRTtFdUJtMVFSOztFdkJsMlFNO0lBQWdDO0V1QnMyUXRDOztFdkJyMlFNOztJQUVFO0V1QncyUVI7O0V2QnQyUU07O0lBRUU7RXVCeTJRUjs7RXZCdjJRTTs7SUFFRTtFdUIwMlFSOztFdkJ4MlFNOztJQUVFO0V1QjIyUVI7O0V2Qm4yUU07SUFBd0I7RXVCdTJROUI7O0V2QnQyUU07O0lBRUU7RXVCeTJRUjs7RXZCdjJRTTs7SUFFRTtFdUIwMlFSOztFdkJ4MlFNOztJQUVFO0V1QjIyUVI7O0V2QnoyUU07O0lBRUU7RXVCNDJRUjs7RXZCMzNRTTtJQUF3QjtFdUIrM1E5Qjs7RXZCOTNRTTs7SUFFRTtFdUJpNFFSOztFdkIvM1FNOztJQUVFO0V1Qms0UVI7O0V2Qmg0UU07O0lBRUU7RXVCbTRRUjs7RXZCajRRTTs7SUFFRTtFdUJvNFFSOztFdkJuNVFNO0lBQXdCO0V1QnU1UTlCOztFdkJ0NVFNOztJQUVFO0V1Qnk1UVI7O0V2QnY1UU07O0lBRUU7RXVCMDVRUjs7RXZCeDVRTTs7SUFFRTtFdUIyNVFSOztFdkJ6NVFNOztJQUVFO0V1QjQ1UVI7O0V2QjM2UU07SUFBd0I7RXVCKzZROUI7O0V2Qjk2UU07O0lBRUU7RXVCaTdRUjs7RXZCLzZRTTs7SUFFRTtFdUJrN1FSOztFdkJoN1FNOztJQUVFO0V1Qm03UVI7O0V2Qmo3UU07O0lBRUU7RXVCbzdRUjs7RXZCbjhRTTtJQUF3QjtFdUJ1OFE5Qjs7RXZCdDhRTTs7SUFFRTtFdUJ5OFFSOztFdkJ2OFFNOztJQUVFO0V1QjA4UVI7O0V2Qng4UU07O0lBRUU7RXVCMjhRUjs7RXZCejhRTTs7SUFFRTtFdUI0OFFSOztFdkJ0OFFFO0lBQW1CO0V1QjA4UXJCOztFdkJ6OFFFOztJQUVFO0V1QjQ4UUo7O0V2QjE4UUU7O0lBRUU7RXVCNjhRSjs7RXZCMzhRRTs7SUFFRTtFdUI4OFFKOztFdkI1OFFFOztJQUVFO0V1Qis4UUo7QUFDRjtBaEZ6OVFJO0V5RGxESTtJQUFnQztFdUIrZ1J0Qzs7RXZCOWdSTTs7SUFFRTtFdUJpaFJSOztFdkIvZ1JNOztJQUVFO0V1QmtoUlI7O0V2QmhoUk07O0lBRUU7RXVCbWhSUjs7RXZCamhSTTs7SUFFRTtFdUJvaFJSOztFdkJuaVJNO0lBQWdDO0V1QnVpUnRDOztFdkJ0aVJNOztJQUVFO0V1QnlpUlI7O0V2QnZpUk07O0lBRUU7RXVCMGlSUjs7RXZCeGlSTTs7SUFFRTtFdUIyaVJSOztFdkJ6aVJNOztJQUVFO0V1QjRpUlI7O0V2QjNqUk07SUFBZ0M7RXVCK2pSdEM7O0V2QjlqUk07O0lBRUU7RXVCaWtSUjs7RXZCL2pSTTs7SUFFRTtFdUJra1JSOztFdkJoa1JNOztJQUVFO0V1Qm1rUlI7O0V2QmprUk07O0lBRUU7RXVCb2tSUjs7RXZCbmxSTTtJQUFnQztFdUJ1bFJ0Qzs7RXZCdGxSTTs7SUFFRTtFdUJ5bFJSOztFdkJ2bFJNOztJQUVFO0V1QjBsUlI7O0V2QnhsUk07O0lBRUU7RXVCMmxSUjs7RXZCemxSTTs7SUFFRTtFdUI0bFJSOztFdkIzbVJNO0lBQWdDO0V1QittUnRDOztFdkI5bVJNOztJQUVFO0V1QmluUlI7O0V2Qi9tUk07O0lBRUU7RXVCa25SUjs7RXZCaG5STTs7SUFFRTtFdUJtblJSOztFdkJqblJNOztJQUVFO0V1Qm9uUlI7O0V2Qm5vUk07SUFBZ0M7RXVCdW9SdEM7O0V2QnRvUk07O0lBRUU7RXVCeW9SUjs7RXZCdm9STTs7SUFFRTtFdUIwb1JSOztFdkJ4b1JNOztJQUVFO0V1QjJvUlI7O0V2QnpvUk07O0lBRUU7RXVCNG9SUjs7RXZCM3BSTTtJQUFnQztFdUIrcFJ0Qzs7RXZCOXBSTTs7SUFFRTtFdUJpcVJSOztFdkIvcFJNOztJQUVFO0V1QmtxUlI7O0V2QmhxUk07O0lBRUU7RXVCbXFSUjs7RXZCanFSTTs7SUFFRTtFdUJvcVJSOztFdkJuclJNO0lBQWdDO0V1QnVyUnRDOztFdkJ0clJNOztJQUVFO0V1QnlyUlI7O0V2QnZyUk07O0lBRUU7RXVCMHJSUjs7RXZCeHJSTTs7SUFFRTtFdUIyclJSOztFdkJ6clJNOztJQUVFO0V1QjRyUlI7O0V2QjNzUk07SUFBZ0M7RXVCK3NSdEM7O0V2QjlzUk07O0lBRUU7RXVCaXRSUjs7RXZCL3NSTTs7SUFFRTtFdUJrdFJSOztFdkJodFJNOztJQUVFO0V1Qm10UlI7O0V2Qmp0Uk07O0lBRUU7RXVCb3RSUjs7RXZCbnVSTTtJQUFnQztFdUJ1dVJ0Qzs7RXZCdHVSTTs7SUFFRTtFdUJ5dVJSOztFdkJ2dVJNOztJQUVFO0V1QjB1UlI7O0V2Qnh1Uk07O0lBRUU7RXVCMnVSUjs7RXZCenVSTTs7SUFFRTtFdUI0dVJSOztFdkIzdlJNO0lBQWdDO0V1Qit2UnRDOztFdkI5dlJNOztJQUVFO0V1Qml3UlI7O0V2Qi92Uk07O0lBRUU7RXVCa3dSUjs7RXZCaHdSTTs7SUFFRTtFdUJtd1JSOztFdkJqd1JNOztJQUVFO0V1Qm93UlI7O0V2Qm54Uk07SUFBZ0M7RXVCdXhSdEM7O0V2QnR4Uk07O0lBRUU7RXVCeXhSUjs7RXZCdnhSTTs7SUFFRTtFdUIweFJSOztFdkJ4eFJNOztJQUVFO0V1QjJ4UlI7O0V2Qnp4Uk07O0lBRUU7RXVCNHhSUjs7RXZCcHhSTTtJQUF3QjtFdUJ3eFI5Qjs7RXZCdnhSTTs7SUFFRTtFdUIweFJSOztFdkJ4eFJNOztJQUVFO0V1QjJ4UlI7O0V2Qnp4Uk07O0lBRUU7RXVCNHhSUjs7RXZCMXhSTTs7SUFFRTtFdUI2eFJSOztFdkI1eVJNO0lBQXdCO0V1Qmd6UjlCOztFdkIveVJNOztJQUVFO0V1Qmt6UlI7O0V2Qmh6Uk07O0lBRUU7RXVCbXpSUjs7RXZCanpSTTs7SUFFRTtFdUJvelJSOztFdkJselJNOztJQUVFO0V1QnF6UlI7O0V2QnAwUk07SUFBd0I7RXVCdzBSOUI7O0V2QnYwUk07O0lBRUU7RXVCMDBSUjs7RXZCeDBSTTs7SUFFRTtFdUIyMFJSOztFdkJ6MFJNOztJQUVFO0V1QjQwUlI7O0V2QjEwUk07O0lBRUU7RXVCNjBSUjs7RXZCNTFSTTtJQUF3QjtFdUJnMlI5Qjs7RXZCLzFSTTs7SUFFRTtFdUJrMlJSOztFdkJoMlJNOztJQUVFO0V1Qm0yUlI7O0V2QmoyUk07O0lBRUU7RXVCbzJSUjs7RXZCbDJSTTs7SUFFRTtFdUJxMlJSOztFdkJwM1JNO0lBQXdCO0V1QnczUjlCOztFdkJ2M1JNOztJQUVFO0V1QjAzUlI7O0V2QngzUk07O0lBRUU7RXVCMjNSUjs7RXZCejNSTTs7SUFFRTtFdUI0M1JSOztFdkIxM1JNOztJQUVFO0V1QjYzUlI7O0V2QnYzUkU7SUFBbUI7RXVCMjNSckI7O0V2QjEzUkU7O0lBRUU7RXVCNjNSSjs7RXZCMzNSRTs7SUFFRTtFdUI4M1JKOztFdkI1M1JFOztJQUVFO0V1QiszUko7O0V2QjczUkU7O0lBRUU7RXVCZzRSSjtBQUNGO0FoRjE0Ukk7RXlEbERJO0lBQWdDO0V1Qmc4UnRDOztFdkIvN1JNOztJQUVFO0V1Qms4UlI7O0V2Qmg4Uk07O0lBRUU7RXVCbThSUjs7RXZCajhSTTs7SUFFRTtFdUJvOFJSOztFdkJsOFJNOztJQUVFO0V1QnE4UlI7O0V2QnA5Uk07SUFBZ0M7RXVCdzlSdEM7O0V2QnY5Uk07O0lBRUU7RXVCMDlSUjs7RXZCeDlSTTs7SUFFRTtFdUIyOVJSOztFdkJ6OVJNOztJQUVFO0V1QjQ5UlI7O0V2QjE5Uk07O0lBRUU7RXVCNjlSUjs7RXZCNStSTTtJQUFnQztFdUJnL1J0Qzs7RXZCLytSTTs7SUFFRTtFdUJrL1JSOztFdkJoL1JNOztJQUVFO0V1Qm0vUlI7O0V2QmovUk07O0lBRUU7RXVCby9SUjs7RXZCbC9STTs7SUFFRTtFdUJxL1JSOztFdkJwZ1NNO0lBQWdDO0V1QndnU3RDOztFdkJ2Z1NNOztJQUVFO0V1QjBnU1I7O0V2QnhnU007O0lBRUU7RXVCMmdTUjs7RXZCemdTTTs7SUFFRTtFdUI0Z1NSOztFdkIxZ1NNOztJQUVFO0V1QjZnU1I7O0V2QjVoU007SUFBZ0M7RXVCZ2lTdEM7O0V2Qi9oU007O0lBRUU7RXVCa2lTUjs7RXZCaGlTTTs7SUFFRTtFdUJtaVNSOztFdkJqaVNNOztJQUVFO0V1Qm9pU1I7O0V2QmxpU007O0lBRUU7RXVCcWlTUjs7RXZCcGpTTTtJQUFnQztFdUJ3alN0Qzs7RXZCdmpTTTs7SUFFRTtFdUIwalNSOztFdkJ4alNNOztJQUVFO0V1QjJqU1I7O0V2QnpqU007O0lBRUU7RXVCNGpTUjs7RXZCMWpTTTs7SUFFRTtFdUI2alNSOztFdkI1a1NNO0lBQWdDO0V1QmdsU3RDOztFdkIva1NNOztJQUVFO0V1QmtsU1I7O0V2QmhsU007O0lBRUU7RXVCbWxTUjs7RXZCamxTTTs7SUFFRTtFdUJvbFNSOztFdkJsbFNNOztJQUVFO0V1QnFsU1I7O0V2QnBtU007SUFBZ0M7RXVCd21TdEM7O0V2QnZtU007O0lBRUU7RXVCMG1TUjs7RXZCeG1TTTs7SUFFRTtFdUIybVNSOztFdkJ6bVNNOztJQUVFO0V1QjRtU1I7O0V2QjFtU007O0lBRUU7RXVCNm1TUjs7RXZCNW5TTTtJQUFnQztFdUJnb1N0Qzs7RXZCL25TTTs7SUFFRTtFdUJrb1NSOztFdkJob1NNOztJQUVFO0V1Qm1vU1I7O0V2QmpvU007O0lBRUU7RXVCb29TUjs7RXZCbG9TTTs7SUFFRTtFdUJxb1NSOztFdkJwcFNNO0lBQWdDO0V1QndwU3RDOztFdkJ2cFNNOztJQUVFO0V1QjBwU1I7O0V2QnhwU007O0lBRUU7RXVCMnBTUjs7RXZCenBTTTs7SUFFRTtFdUI0cFNSOztFdkIxcFNNOztJQUVFO0V1QjZwU1I7O0V2QjVxU007SUFBZ0M7RXVCZ3JTdEM7O0V2Qi9xU007O0lBRUU7RXVCa3JTUjs7RXZCaHJTTTs7SUFFRTtFdUJtclNSOztFdkJqclNNOztJQUVFO0V1Qm9yU1I7O0V2QmxyU007O0lBRUU7RXVCcXJTUjs7RXZCcHNTTTtJQUFnQztFdUJ3c1N0Qzs7RXZCdnNTTTs7SUFFRTtFdUIwc1NSOztFdkJ4c1NNOztJQUVFO0V1QjJzU1I7O0V2QnpzU007O0lBRUU7RXVCNHNTUjs7RXZCMXNTTTs7SUFFRTtFdUI2c1NSOztFdkJyc1NNO0lBQXdCO0V1QnlzUzlCOztFdkJ4c1NNOztJQUVFO0V1QjJzU1I7O0V2QnpzU007O0lBRUU7RXVCNHNTUjs7RXZCMXNTTTs7SUFFRTtFdUI2c1NSOztFdkIzc1NNOztJQUVFO0V1QjhzU1I7O0V2Qjd0U007SUFBd0I7RXVCaXVTOUI7O0V2Qmh1U007O0lBRUU7RXVCbXVTUjs7RXZCanVTTTs7SUFFRTtFdUJvdVNSOztFdkJsdVNNOztJQUVFO0V1QnF1U1I7O0V2Qm51U007O0lBRUU7RXVCc3VTUjs7RXZCcnZTTTtJQUF3QjtFdUJ5dlM5Qjs7RXZCeHZTTTs7SUFFRTtFdUIydlNSOztFdkJ6dlNNOztJQUVFO0V1QjR2U1I7O0V2QjF2U007O0lBRUU7RXVCNnZTUjs7RXZCM3ZTTTs7SUFFRTtFdUI4dlNSOztFdkI3d1NNO0lBQXdCO0V1Qml4UzlCOztFdkJoeFNNOztJQUVFO0V1Qm14U1I7O0V2Qmp4U007O0lBRUU7RXVCb3hTUjs7RXZCbHhTTTs7SUFFRTtFdUJxeFNSOztFdkJueFNNOztJQUVFO0V1QnN4U1I7O0V2QnJ5U007SUFBd0I7RXVCeXlTOUI7O0V2Qnh5U007O0lBRUU7RXVCMnlTUjs7RXZCenlTTTs7SUFFRTtFdUI0eVNSOztFdkIxeVNNOztJQUVFO0V1QjZ5U1I7O0V2QjN5U007O0lBRUU7RXVCOHlTUjs7RXZCeHlTRTtJQUFtQjtFdUI0eVNyQjs7RXZCM3lTRTs7SUFFRTtFdUI4eVNKOztFdkI1eVNFOztJQUVFO0V1Qit5U0o7O0V2Qjd5U0U7O0lBRUU7RXVCZ3pTSjs7RXZCOXlTRTs7SUFFRTtFdUJpelNKO0FBQ0Y7QXRCbDNTRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtBc0JrM1NKOztBckI1M1NBO0VBQWtCO0FxQmc0U2xCOztBckI1M1NBO0VBQWlCO0FxQmc0U2pCOztBckIvM1NBO0VBQWlCO0FxQm00U2pCOztBckJsNFNBO0VBQWlCO0FxQnM0U2pCOztBckJyNFNBO0VDVEU7RUFDQTtFQUNBO0FvQms1U0Y7O0FyQm40U0k7RUFBd0I7QXFCdTRTNUI7O0FyQnQ0U0k7RUFBd0I7QXFCMDRTNUI7O0FyQno0U0k7RUFBd0I7QXFCNjRTNUI7O0FoRngyU0k7RTJEdkNBO0lBQXdCO0VxQm81UzFCOztFckJuNVNFO0lBQXdCO0VxQnU1UzFCOztFckJ0NVNFO0lBQXdCO0VxQjA1UzFCO0FBQ0Y7QWhGdDNTSTtFMkR2Q0E7SUFBd0I7RXFCaTZTMUI7O0VyQmg2U0U7SUFBd0I7RXFCbzZTMUI7O0VyQm42U0U7SUFBd0I7RXFCdTZTMUI7QUFDRjtBaEZuNFNJO0UyRHZDQTtJQUF3QjtFcUI4NlMxQjs7RXJCNzZTRTtJQUF3QjtFcUJpN1MxQjs7RXJCaDdTRTtJQUF3QjtFcUJvN1MxQjtBQUNGO0FoRmg1U0k7RTJEdkNBO0lBQXdCO0VxQjI3UzFCOztFckIxN1NFO0lBQXdCO0VxQjg3UzFCOztFckI3N1NFO0lBQXdCO0VxQmk4UzFCO0FBQ0Y7QXJCNTdTQTtFQUFtQjtBcUIrN1NuQjs7QXJCOTdTQTtFQUFtQjtBcUJrOFNuQjs7QXJCajhTQTtFQUFtQjtBcUJxOFNuQjs7QXJCajhTQTtFQUF1QjtBcUJxOFN2Qjs7QXJCcDhTQTtFQUF1QjtBcUJ3OFN2Qjs7QXJCdjhTQTtFQUF1QjtBcUIyOFN2Qjs7QXJCMThTQTtFQUF1QjtBcUI4OFN2Qjs7QXJCNzhTQTtFQUF1QjtBcUJpOVN2Qjs7QXJCaDlTQTtFQUF1QjtBcUJvOVN2Qjs7QXJCaDlTQTtFQUFjO0FxQm85U2Q7O0FuQjMvU0U7RUFDRTtBbUI4L1NKOztBekZwL1NFO0VzRUxNO0FtQjYvU1I7O0FuQm5nVEU7RUFDRTtBbUJzZ1RKOztBekY1L1NFO0VzRUxNO0FtQnFnVFI7O0FuQjNnVEU7RUFDRTtBbUI4Z1RKOztBekZwZ1RFO0VzRUxNO0FtQjZnVFI7O0FuQm5oVEU7RUFDRTtBbUJzaFRKOztBekY1Z1RFO0VzRUxNO0FtQnFoVFI7O0FuQjNoVEU7RUFDRTtBbUI4aFRKOztBekZwaFRFO0VzRUxNO0FtQjZoVFI7O0FuQm5pVEU7RUFDRTtBbUJzaVRKOztBekY1aFRFO0VzRUxNO0FtQnFpVFI7O0FuQjNpVEU7RUFDRTtBbUI4aVRKOztBekZwaVRFO0VzRUxNO0FtQjZpVFI7O0FuQm5qVEU7RUFDRTtBbUJzalRKOztBekY1aVRFO0VzRUxNO0FtQnFqVFI7O0FyQjlnVEE7RUFBYTtBcUJraFRiOztBckJqaFRBO0VBQWM7QXFCcWhUZDs7QXJCbmhUQTtFQUFpQjtBcUJ1aFRqQjs7QXJCdGhUQTtFQUFpQjtBcUIwaFRqQjs7QXJCdGhUQTtFR3ZERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FrQmlsVEY7O0FyQjFoVEE7RUFBd0I7QXFCOGhUeEI7O0FyQjVoVEE7RUFDRTtFQUNBO0FxQitoVEY7O0FyQjFoVEE7RUFBYztBcUI4aFRkOztBakIvbFRBO0VBQ0U7QWlCa21URjs7QWpCL2xUQTtFQUNFO0FpQmttVEY7O0FoQmxtVEU7RUFDRTs7O0lBS0U7SUFFQTtFZ0JrbVRKOztFaEI5bFRJO0lBQ0U7RWdCaW1UTjs7RWhCeGxURTtJQUNFO0VnQjJsVEo7O0VoQjdrVEU7SUFDRTtFZ0JnbFRKOztFaEI5a1RFOztJQUVFO0lBQ0E7RWdCaWxUSjs7RWhCemtURTtJQUNFO0VnQjRrVEo7O0VoQnprVEU7O0lBRUU7RWdCNGtUSjs7RWhCemtURTs7O0lBR0U7SUFDQTtFZ0I0a1RKOztFaEJ6a1RFOztJQUVFO0VnQjRrVEo7O0VoQnBrVEU7SUFDRSxRM0UraEM4QjtFMkZ3aVJsQztFaEJya1RFO0lBQ0U7RWdCdWtUSjs7RWhCcmtURTtJQUNFO0VnQndrVEo7O0VoQnBrVEU7SUFDRTtFZ0J1a1RKOztFaEJya1RFO0lBQ0U7RWdCd2tUSjs7RWhCcmtURTtJQUNFO0VnQndrVEo7RWhCdGtUSTs7SUFFRTtFZ0J3a1ROOztFaEJua1RJOztJQUVFO0VnQnNrVE47O0VoQmxrVEU7SUFDRTtFZ0Jxa1RKO0VoQm5rVEk7Ozs7SUFJRSxxQjNFdkhHO0UyRjRyVFQ7O0VoQmprVEU7SUFDRTtJQUNBLHFCM0U3SEs7RTJGaXNUVDtBQUNGO0FFbnNURTtFQUNFO0FGcXNUSjs7QWhGdG9USTtFa0Z6REU7SUFDRTtFRm1zVE47QUFDRjtBaEY1b1RJO0VrRnpERTtJQUNFO0VGd3NUTjtBQUNGO0FoRmpwVEk7RWtGekRFO0lBQ0U7RUY2c1ROO0FBQ0Y7QWhGdHBUSTtFa0Z6REU7SUFDRTtFRmt0VE47QUFDRjtBRXB0VE07RUFDRTtBRnN0VFI7O0FHL3RURTtFQUNFLGM5RktPO0U4RkpQLHNCRm9CSTtFRW5CSixxQjlGMGRvQztFOEZ6ZHBDO0VBSUUsZ0Q5RjBYd0I7QTJGcTJTOUI7QUc1dFRJO0VBQ0UscUI5RjRuQjhCO0U4RjNuQjlCO0FIOHRUTjtBRzN0VEk7RUFDRSxxQjlGd25COEI7RThGdm5COUI7QUg2dFROOztBSXJ2VEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYUNxSmM7RURwSmQsY0NvSmM7RURuSmQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKd3ZURjtBSXJ2VEU7RUFDRTtBSnV2VEo7QUlwdlRFO0VBRUU7RUFDQTtBSnF2VEo7QUludlRJO0VBQ0U7QUpxdlROO0FJbHZUSTtFQUNFO0FKb3ZUTjtBSWp2VFE7RUFDRTtBSm12VFY7QUk3dVRFO0VBR0UsYS9Gb1kwQjtFK0ZuWTFCO0FKNnVUSjtBSTF1VEU7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7VUFBQTtBSjJ1VEo7QUl4dVRFO0VBQ0U7RUFDQTtBSjB1VEo7QUl2dVRFO0VBQ0U7QUp5dVRKO0FJdHVURTtFQUNFO0VBQ0E7RUFDQTtBSnd1VEo7QUlydVRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFHQTtLQUFBO0FKcXVUSjtBSWx1VEU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUptdVRKOztBSS90VEE7RUFDRSxhQ29EaUI7RURuRGpCLGNDbURpQjtBTCtxVG5CO0FJaHVURTtFQUNFO0FKa3VUSjtBSS90VEU7RUFDRTtBSml1VEo7O0FJN3RUQTtFQUNFLGFDd0NpQjtFRHZDakIsY0N1Q2lCO0FMeXJUbkI7QUk5dFRFO0VBQ0U7QUpndVRKO0FJN3RURTtFQUNFO0FKK3RUSjs7QUkxdFRFO0VBQ0U7RUFDQTtBSjZ0VEo7QUkxdFRFO0VBQ0U7QUo0dFRKO0FJdnRUSTs7RUFDRTtBSjB0VE47O0FNeDJUQTtFQUNFO0FOMjJURjtBTXoyVEU7RUFFRTtBTjAyVEo7QU12MlRFOztFQUVFO0FOeTJUSjtBTXQyVEU7RUFDRTtBTncyVEo7QU1yMlRFO0VBQ0U7RUFDQTtBTnUyVEo7QU1yMlRJO0VBQ0UseUJqR2ZLO0VpR2dCTDtBTnUyVE47QU1uMlRFO0VBQ0U7QU5xMlRKO0FNbDJURTtFQUNFO0VBQ0E7RUFHQTtBTmsyVEo7QU1oMlRJO0VBRUU7QU5pMlROO0FNNzFURTtFQUNFO0FOKzFUSjtBTXgxVE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU4wMVRSO0FNaDFUSTtFQUdFO0VBQ0E7QU5nMVROOztBTzE1VEE7RTNGZ0RJO0VBQ0E7QW9GODJUSjs7QU8zNVRBO0UzRjhCSTtFQUNBO0FvRmk0VEo7O0FReDVUUTtFQUNFO0FSMjVUVjtBUW41VFE7RUFDRTtBUnE1VFY7QVE3NFRJO0VBQ0U7QVIrNFROOztBU3Q2VEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCcEdrUjBCO0EyRnVwVDlCO0FTdjZUSTtFQU1FO0VBQ0E7QVRvNlROO0FTajZUSTtFQUVFO0VBQ0EsY3BHaEJLO0VvR2lCTDtBVGs2VE47O0FVdjdURTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxvQnJHK1EwQjtBMkYycVQ5Qjs7QVd0OFRBOztFQUVFLG1CdEdzUjRCO0VzR3JSNUIsZ0J0R29PNEI7RXNHbk81QjtBWHk4VEY7QVd2OFRFOztFQUNFO0VBQ0E7RUFDQSxjTkRpQztFTUVqQyxlTkZpQztFekZRakM7QW9GcThUSjtBV3Y4VEU7O0VBQ0U7RUFDQTtFQUNBLGNOVGlDO0VNVWpDLGVOVmlDO0VNV2pDLHdCdEc2Zm9DO0EyRjY4U3hDOztBV3Q4VEE7O0VBRUUsb0J0R2dRNEI7RXNHL1A1QixnQnRHOE00QjtFc0c3TTVCO0FYeThURjtBV3Y4VEU7O0VBQ0U7RUFDQTtFQUNBLGVOdkJpQztFTXdCakMsZ0JOeEJpQztFekZPakM7QW9GNDlUSjtBV3Y4VEU7O0VBQ0U7RUFDQTtFQUNBLGVOL0JpQztFTWdDakMsZ0JOaENpQztFTWlDakMsd0J0R3Nlb0M7QTJGbytTeEM7O0FXdDhUQTs7RUFFRTtBWHk4VEY7QVd2OFRFOztFQUNFLG1CdEdxTzBCO0VzR3BPMUIsZ0J0R21MMEI7QTJGdXhUOUI7QVd4OFRJOztFQUNFO0VBQ0EsZU5oRCtCO0VNaUQvQjtFQUNBLGdCTjlCcUI7RU0rQnJCLHVCTjdCdUM7QUx3K1Q3QztBV3g4VEk7O0VBQ0U7RUFJQTtFQUlBLDRCTnZDOEI7RU13QzlCLDZCTnhDOEI7RU15QzlCLHVCTjNDdUM7RU00Q3ZDLHdCdEdzY2tDO0EyRisvU3hDO0FXaDhUSTs7RUFDRTtBWG04VE47O0FXOTdUQTs7RUFFRTtBWGk4VEY7QVcvN1RFOztFQUNFLG9CdEcrTDBCO0VzRzlMMUIsZ0J0RzZJMEI7QTJGcXpUOUI7QVdoOFRJOztFQUNFO0VBQ0E7RUFDQSxpQk5uRXFCO0VNb0VyQixnQk54RitCO0VNeUYvQix3Qk5uRXVDO0FMc2dVN0M7QVdoOFRJOztFQUNFO0VBSUE7RUFJQSw2Qk4zRThCO0VNNEU5Qiw4Qk41RThCO0VNNkU5Qix3Qk5qRnVDO0VNa0Z2Qyx3QnRHK1prQztBMkY4aFR4QztBV3g3VEk7O0VBQ0U7QVgyN1ROOztBWXZpVU07OztFQUNFO0VBQ0E7QVo0aVVSO0FZcmlVTTs7O0VBQ0U7RUFDQTtBWnlpVVI7O0FheGpVRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QWJ5alVKO0FhcmpVTTtFQUNFO0FidWpVUjs7QWFqalVNO0VBRUU7QWJtalVSO0FhampVUTtFQUNFO0FibWpVVjs7QWE5aVVJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWJpalVOO0FhL2lVTTtFQUNFO0FiaWpVUjtBYTdpVUk7RUFDRSxjeEcrbEI4QjtBMkZnOVNwQztBYTVpVUk7RUFDRSxjeEc0bEI4QjtBMkZrOVNwQztBYTNpVUk7RUFDRTtBYjZpVU47QWExaVVJO0VBQ0U7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFRTtBYndpVVI7QWFyaVVNO0VBQ0U7QWJ1aVVSO0FhcGlVTTtFQUNFO0Fic2lVUjtBYWppVVE7RUFDRTtFQUNBLG9CeEdrVG9CO0V3R2pUcEIsdUJ4R2lUb0I7QTJGa3ZUOUI7O0FhaGlVUTtFQUNFO0VBQ0EsbUJ4R2lUb0I7RXdHaFRwQixzQnhHZ1RvQjtBMkZtdlQ5Qjs7QWE3aFVJO0VBRUUseUJ4R2hHSztFd0dpR0w7QWIraFVOO0FhNWhVSTtFQUNFO0FiOGhVTjtBYTVoVU07RUFDRTtBYjhoVVI7O0FhdmhVSTtFQUNFO0FiMGhVTjs7QWM5b1VBO0VBQ0U7RUFDQTtBZGlwVUY7O0FjNW9VRTs7Ozs7O0VBR0UsbUJ6RzJRMEI7RXlHMVExQixnQ3pHcWVvQztBMkY2cVR4QztBYy9vVUU7Ozs7RUFFRTtFQUNBLGdCekdtTjBCO0EyRmc4VDlCO0FjaHBVRTs7RWxHUEU7QW9GMnBVSjtBY2pwVUk7O0VBQ0U7RUFDQSw0QlR3QjBCO0V6RnBDNUI7QW9GaXFVSjs7QWM3b1VFOzs7Ozs7RUFHRSxvQnpHa1AwQjtFeUdqUDFCLGtDekcwY29DO0EyRnlzVHhDO0FjaHBVRTs7OztFQUVFO0VBQ0EsZ0J6RzBMMEI7QTJGMDlUOUI7QWNqcFVFOztFbEdqQ0U7QW9Gc3JVSjtBY2xwVUk7O0VBQ0U7RUFDQSw4QlRDMEI7RXpGdkM1QjtBb0Y0clVKOztBZXpzVUk7RUFJRTtBZnlzVU47O0FlbHNVQTtFQUNFLG1DMUdrZXNDO0UwR2hldEM7QWZvc1VGOztBZWpzVUE7O0VBRUUsa0MxRzRkc0M7RTBHMWR0QztBZm1zVUY7O0FlaHNVQTs7RUFFRSxnQzFHc2RzQztFMEdyZHRDO0FmbXNVRjs7QWVoc1VBO0VBRUUseUIxR3pCUztFMEcwQlQsYTFHOFk0QjtBMkZvelQ5Qjs7QWU3clVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWZnc1VKO0FlOXJVSTs7Ozs7RUFLRTtBZmdzVU47QWV2clVJOzs7OztFQUNFO0FmNnJVTjtBZXpyVUU7RUFDRTtBZjJyVUo7QWV2clVJO0VuR3ZDQTtFQUNBO0FvRml1VUo7QWV4clVJO0VuRzVCQTtFQUNBO0FvRnV0VUo7QWV2clVFO0VBQ0UsbUMxR2lhb0M7RTBHaGFwQztFQUNBLHNCZHRESTtFY3VESjtFQUNBO0VBQ0EsbUMxRzRab0M7RTBHelpsQyxzQjFHcUp3QjtFaUIvTnhCLHdFeUZnRkY7QWZrclVKO0ExRTl2VU07RXlGNkRKO0l6RjVETTtFMEVpd1VOO0FBQ0Y7QWVuclVJO0VBQ0UsYzFHdkZLO0UwR3dGTCxzQmR4RUU7RWN5RUYscUIxRzhYa0M7RTBHN1hsQztFQUlFLGdEMUc4UnNCO0EyRm81VDlCO0FlOXFVSTtFQUVFLHlCMUd6R0s7QTJGd3hVWDs7QWUxcVVBO0VBQ0UsZ0MxRzZYc0M7RTBHNVh0QztFbkd2R0U7QW9GcXhVSjs7QWUxcVVBO0VBQ0Usa0MxR3NYc0M7RTBHclh0QztFbkc3R0U7QW9GMnhVSjs7QWV0cVVJO0VBRUUscUIxR3VnQjhCO0EyRmlxVHBDO0FldHFVTTtFQUNFLHFCMUdvZ0I0QjtFMEduZ0I1QjtBZndxVVI7O0FlOXBVUTtFQUNFO0FmaXFVVjtBZS9wVVE7RUFDRTtBZmlxVVY7QWUvcFVRO0VBQ0U7QWZpcVVWO0FlN3BVTTtFQUNFLHlCMUc2ZTRCO0UwRzVlNUI7QWYrcFVSO0FlN3BVUTtFQUNFO0VBQ0E7QWYrcFVWO0FlM3BVTTtFQUNFO0FmNnBVUjtBZTFwVU07RUFDRSx5QjFHK2Q0QjtFMEc5ZDVCO0FmNHBVUjtBZTFwVVE7RUFDRTtFQUNBO0FmNHBVVjtBZXhwVU07RUFDRTtBZjBwVVI7QWV2cFVNOzs7RUFFRTtBZjBwVVI7QWV2cFVNO0VBQ0UseUIxRzRjNEI7RTBHM2M1QjtBZnlwVVI7QWV2cFVRO0VBQ0U7RUFDQTtBZnlwVVY7QWVycFVNO0VBQ0U7QWZ1cFVSO0FlcnBVTTtFQUNFO0FmdXBVUjs7QWVqdVVJO0VBRUUscUIxR3dnQjhCO0EyRjJ0VHBDO0FlanVVTTtFQUNFLHFCMUdxZ0I0QjtFMEdwZ0I1QjtBZm11VVI7O0FlenRVUTtFQUNFO0FmNHRVVjtBZTF0VVE7RUFDRTtBZjR0VVY7QWUxdFVRO0VBQ0U7QWY0dFVWO0FleHRVTTtFQUNFLHlCMUc4ZTRCO0UwRzdlNUI7QWYwdFVSO0FleHRVUTtFQUNFO0VBQ0E7QWYwdFVWO0FldHRVTTtFQUNFO0Fmd3RVUjtBZXJ0VU07RUFDRSx5QjFHZ2U0QjtFMEcvZDVCO0FmdXRVUjtBZXJ0VVE7RUFDRTtFQUNBO0FmdXRVVjtBZW50VU07RUFDRTtBZnF0VVI7QWVsdFVNOzs7RUFFRTtBZnF0VVI7QWVsdFVNO0VBQ0UseUIxRzZjNEI7RTBHNWM1QjtBZm90VVI7QWVsdFVRO0VBQ0U7RUFDQTtBZm90VVY7QWVodFVNO0VBQ0U7QWZrdFVSO0FlaHRVTTtFQUNFO0Fma3RVUjs7QWdCajZVQTs7RUFFRSxtQjNHc1I0QjtFMkdyUjVCLGdCM0dvTzRCO0UyR25PNUI7QWhCbzZVRjtBZ0JsNlVFOztFQUNFO0VBQ0E7RUFDQSxjWERpQztFV0VqQyxlWEZpQztFV0dqQyxrQjNHc2lCNEM7QTJGKzNUaEQ7QWdCbDZVRTs7RUFDRTtFQUNBO0VBQ0EsY1hUaUM7RVdVakMsZVhWaUM7RVdXakM7QWhCcTZVSjs7QWdCajZVQTs7RUFFRSxvQjNHZ1E0QjtFMkcvUDVCLGdCM0c4TTRCO0UyRzdNNUI7QWhCbzZVRjtBZ0JsNlVFOztFQUNFO0VBQ0E7RUFDQSxlWHZCaUM7RVd3QmpDLGdCWHhCaUM7RVd5QmpDLGtCM0crZ0I0QztBMkZzNVRoRDtBZ0JsNlVFOztFQUNFO0VBQ0E7RUFDQSxlWC9CaUM7RVdnQ2pDLGdCWGhDaUM7RVdpQ2pDO0FoQnE2VUo7O0FpQmo5VUE7RUFDRTtBakJvOVVGO0FpQmw5VUU7RUFDRTtBakJvOVVKO0FpQmo5VUU7O0VBRUU7QWpCbTlVSjtBaUJoOVVFO0VBRUU7QWpCaTlVSjtBaUI5OFVFO0VBQ0U7RUFDQTtFQUNBO0FqQmc5VUo7QWlCOThVSTtFQUNFO0VBQ0E7QWpCZzlVTjtBaUI1OFVFO0VBRUUseUI1R3JCTztFNEdzQlAsYzVHbEJPO0EyRis5VVg7QWlCejhVSTtFQUNFO0FqQjI4VU47QWlCcjhVTTs7RUFDRTtBakJ3OFVSO0FpQi83VUk7RUFDRTtBakJpOFVOOztBa0J0L1VBO0VBQ0U7RUFFQTtFQUVBO0VBQ0E7QWxCdS9VRjtBa0JuL1VJO0VBRUU7QWxCby9VTjs7QWtCaC9VRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQm0vVUo7QWtCai9VSTs7RUFFRTtFQUNBO0VBRUE7QWxCay9VTjtBa0I5K1VFO0VBQ0U7RUFDQTtBbEJnL1VKO0FrQjkrVUk7RUFDRTtFQUNBO0FsQmcvVU47QWtCNStVRTtFQUVJO0FsQjYrVU47QWtCeitVRTtFQUNFO0FsQjIrVUo7QWtCeCtVRTtFQUNFO0VBQ0E7QWxCMCtVSjtBa0J4K1VJO0VBQ0U7QWxCMCtVTjtBa0J2K1VJO0VBQ0U7QWxCeStVTjtBa0JyK1VFO0VBRUUseUI3RzVETztBMkZraVZYO0FrQm4rVUU7RUFDRTtBbEJxK1VKOztBbUI3aVZFO0VBQ0U7QW5CZ2pWSjtBbUI5aVZJOztFQUVFO0FuQmdqVk47QW1CNWlWRTtFQUNFLGM5R0dPO0U4R0ZQLHNCbEJrQkk7RWtCakJKLHFCOUd3ZG9DO0U4R3ZkcEM7RUFJRSxnRDlHd1h3QjtBMkZtclU5QjtBbUJ4aVZJO0VBQ0UscUI5RzBuQjhCO0U4R3puQjlCO0FuQjBpVk47QW1CdmlWSTtFQUNFLHFCOUdzbkI4QjtFOEdybkI5QjtBbkJ5aVZOO0FtQnJpVkU7RUFDRSx5QjlHeEJPO0EyRitqVlg7O0FtQm5pVkE7RUFHRTtFQUNBO0VBQ0EsZ0JsQnBDaUI7RWtCcUNqQjtBbkJvaVZGO0FtQmxpVkU7RUFDRTtBbkJvaVZKO0FtQmhpVkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQmtpVko7O0FtQjloVkE7RUFDRSxnQjlHOEs0QjtBMkZtM1U5Qjs7QW1COWhWQTtFQUNFLGdCOUd5SzRCO0EyRnczVTlCOztBb0JqbVZBO0VBQ0U7RUFDQTtBcEJvbVZGOztBb0JqbVZBO0VBQ0U7RUFDQTtBcEJvbVZGOztBcUJ6bVZBO0VBQ0UsWWhIaThCa0M7QTJGMnFUcEM7O0FzQm5tVk07RUFDRTtFQUNBO0VBQ0E7QXRCc21WUjtBc0JsbVZRO0VBQ0U7QXRCb21WVjs7QXVCdm5WQTtFQUNFO0VBQ0E7RUFFQTtBdkJ5blZGO0F1QnZuVkU7RUFDRTtBdkJ5blZKO0F1QnRuVkU7RUFDRTtBdkJ3blZKOztBdUJ4bVZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcW5WeEI7QXVCdG1WVTtFQUNFLHlCQVZpQjtBdkJrblY3QjtBdUJybVZVO0VBQ0UseUJBckJRO0F2QjRuVnBCO0F1QmhtVlU7RUFDRSwyQkF0QmlCO0F2QnduVjdCO0F1Qi9sVlU7RUFDRSwyQkFqQ1E7QXZCa29WcEI7QXVCMWxWVTtFQUNFLDRCQWxDaUI7QXZCOG5WN0I7QXVCemxWVTtFQUVFLDRCQTNDUztBdkJxb1ZyQjtBdUJ0bFZRO0VBQ0UsNEJBaERXO0F2QndvVnJCO0F1QmxsVlU7RUFDRSwwQkFuRGlCO0F2QnVvVjdCO0F1QmpsVlU7RUFDRSwwQkE5RFE7QXZCaXBWcEI7QXVCL2pWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QmlrVlI7QXVCOWpWTTtFQUNFLGNBdkZTO0F2QnVwVmpCOztBdUJocFZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNnBWeEI7QXVCOW9WVTtFQUNFLHlCQVZpQjtBdkIwcFY3QjtBdUI3b1ZVO0VBQ0UseUJBckJRO0F2Qm9xVnBCO0F1QnhvVlU7RUFDRSwyQkF0QmlCO0F2QmdxVjdCO0F1QnZvVlU7RUFDRSwyQkFqQ1E7QXZCMHFWcEI7QXVCbG9WVTtFQUNFLDRCQWxDaUI7QXZCc3FWN0I7QXVCam9WVTtFQUVFLDRCQTNDUztBdkI2cVZyQjtBdUI5blZRO0VBQ0UsNEJBaERXO0F2QmdyVnJCO0F1QjFuVlU7RUFDRSwwQkFuRGlCO0F2QitxVjdCO0F1QnpuVlU7RUFDRSwwQkE5RFE7QXZCeXJWcEI7QXVCdm1WTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QnltVlI7QXVCdG1WTTtFQUNFLGNBdkZTO0F2QityVmpCOztBdUJ4clZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcXNWeEI7QXVCdHJWVTtFQUNFLHlCQVZpQjtBdkJrc1Y3QjtBdUJyclZVO0VBQ0UseUJBckJRO0F2QjRzVnBCO0F1QmhyVlU7RUFDRSwyQkF0QmlCO0F2QndzVjdCO0F1Qi9xVlU7RUFDRSwyQkFqQ1E7QXZCa3RWcEI7QXVCMXFWVTtFQUNFLDRCQWxDaUI7QXZCOHNWN0I7QXVCenFWVTtFQUVFLDRCQTNDUztBdkJxdFZyQjtBdUJ0cVZRO0VBQ0UsNEJBaERXO0F2Qnd0VnJCO0F1QmxxVlU7RUFDRSwwQkFuRGlCO0F2QnV0VjdCO0F1QmpxVlU7RUFDRSwwQkE5RFE7QXZCaXVWcEI7QXVCL29WTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QmlwVlI7QXVCOW9WTTtFQUNFLGNBdkZTO0F2QnV1VmpCOztBdUJodVZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNnVWeEI7QXVCOXRWVTtFQUNFLHlCQVZpQjtBdkIwdVY3QjtBdUI3dFZVO0VBQ0UseUJBckJRO0F2Qm92VnBCO0F1Qnh0VlU7RUFDRSwyQkF0QmlCO0F2Qmd2VjdCO0F1QnZ0VlU7RUFDRSwyQkFqQ1E7QXZCMHZWcEI7QXVCbHRWVTtFQUNFLDRCQWxDaUI7QXZCc3ZWN0I7QXVCanRWVTtFQUVFLDRCQTNDUztBdkI2dlZyQjtBdUI5c1ZRO0VBQ0UsNEJBaERXO0F2Qmd3VnJCO0F1QjFzVlU7RUFDRSwwQkFuRGlCO0F2Qit2VjdCO0F1QnpzVlU7RUFDRSwwQkE5RFE7QXZCeXdWcEI7QXVCdnJWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QnlyVlI7QXVCdHJWTTtFQUNFLGNBdkZTO0F2Qit3VmpCOztBdUJ4d1ZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcXhWeEI7QXVCdHdWVTtFQUNFLHlCQVZpQjtBdkJreFY3QjtBdUJyd1ZVO0VBQ0UseUJBckJRO0F2QjR4VnBCO0F1Qmh3VlU7RUFDRSwyQkF0QmlCO0F2Qnd4VjdCO0F1Qi92VlU7RUFDRSwyQkFqQ1E7QXZCa3lWcEI7QXVCMXZWVTtFQUNFLDRCQWxDaUI7QXZCOHhWN0I7QXVCenZWVTtFQUVFLDRCQTNDUztBdkJxeVZyQjtBdUJ0dlZRO0VBQ0UsNEJBaERXO0F2Qnd5VnJCO0F1Qmx2VlU7RUFDRSwwQkFuRGlCO0F2QnV5VjdCO0F1Qmp2VlU7RUFDRSwwQkE5RFE7QXZCaXpWcEI7QXVCL3RWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2Qml1VlI7QXVCOXRWTTtFQUNFLGNBdkZTO0F2QnV6VmpCOztBdUJoelZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNnpWeEI7QXVCOXlWVTtFQUNFLHlCQVZpQjtBdkIwelY3QjtBdUI3eVZVO0VBQ0UseUJBckJRO0F2Qm8wVnBCO0F1Qnh5VlU7RUFDRSwyQkF0QmlCO0F2QmcwVjdCO0F1QnZ5VlU7RUFDRSwyQkFqQ1E7QXZCMDBWcEI7QXVCbHlWVTtFQUNFLDRCQWxDaUI7QXZCczBWN0I7QXVCanlWVTtFQUVFLDRCQTNDUztBdkI2MFZyQjtBdUI5eFZRO0VBQ0UsNEJBaERXO0F2QmcxVnJCO0F1QjF4VlU7RUFDRSwwQkFuRGlCO0F2QiswVjdCO0F1Qnp4VlU7RUFDRSwwQkE5RFE7QXZCeTFWcEI7QXVCdndWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2Qnl3VlI7QXVCdHdWTTtFQUNFLGNBdkZTO0F2QisxVmpCOztBdUJ4MVZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcTJWeEI7QXVCdDFWVTtFQUNFLHlCQVZpQjtBdkJrMlY3QjtBdUJyMVZVO0VBQ0UseUJBckJRO0F2QjQyVnBCO0F1QmgxVlU7RUFDRSwyQkF0QmlCO0F2QncyVjdCO0F1Qi8wVlU7RUFDRSwyQkFqQ1E7QXZCazNWcEI7QXVCMTBWVTtFQUNFLDRCQWxDaUI7QXZCODJWN0I7QXVCejBWVTtFQUVFLDRCQTNDUztBdkJxM1ZyQjtBdUJ0MFZRO0VBQ0UsNEJBaERXO0F2QnczVnJCO0F1QmwwVlU7RUFDRSwwQkFuRGlCO0F2QnUzVjdCO0F1QmowVlU7RUFDRSwwQkE5RFE7QXZCaTRWcEI7QXVCL3lWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2Qml6VlI7QXVCOXlWTTtFQUNFLGNBdkZTO0F2QnU0VmpCOztBdUJoNFZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNjRWeEI7QXVCOTNWVTtFQUNFLHlCQVZpQjtBdkIwNFY3QjtBdUI3M1ZVO0VBQ0UseUJBckJRO0F2Qm81VnBCO0F1QngzVlU7RUFDRSwyQkF0QmlCO0F2Qmc1VjdCO0F1QnYzVlU7RUFDRSwyQkFqQ1E7QXZCMDVWcEI7QXVCbDNWVTtFQUNFLDRCQWxDaUI7QXZCczVWN0I7QXVCajNWVTtFQUVFLDRCQTNDUztBdkI2NVZyQjtBdUI5MlZRO0VBQ0UsNEJBaERXO0F2Qmc2VnJCO0F1QjEyVlU7RUFDRSwwQkFuRGlCO0F2Qis1VjdCO0F1QnoyVlU7RUFDRSwwQkE5RFE7QXZCeTZWcEI7QXVCdjFWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QnkxVlI7QXVCdDFWTTtFQUNFLGNBdkZTO0F2Qis2VmpCOztBd0JwOFZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsdUJuQndFaUI7QUwrM1ZuQjs7QXdCcDhWQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QnU4VkY7O0F3QnA4VkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFluQm9EZ0I7RW1CbkRoQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCdThWRjtBd0JyOFZFO0VBQ0U7QXhCdThWSjtBd0J0OFZJO0VBRkY7SUFHSTtFeEJ5OFZKO0FBQ0Y7QXdCdDhWRTtFQUNFO0VBQ0E7QXhCdzhWSjtBd0J0OFZJO0VBQ0U7QXhCdzhWTjtBd0JyOFZJO0VBQ0U7QXhCdThWTjtBd0JuOFZFO0VBQ0U7RUFDQTtBeEJxOFZKO0F3Qm44Vkk7RUFDRTtBeEJxOFZOO0F3Qmw4Vkk7RUFDRTtBeEJvOFZOO0F3Qmg4VkU7RUFDRSxpQm5CYXlCO0VtQlp6QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Qms4Vko7QXdCOTdWTTtFQUNFO0F4Qmc4VlI7O0F3QjU3Vkk7RUFDRTtFQUNBLGlCbkJIdUI7QUxrOFY3QjtBd0IzN1ZFO0VBQ0U7RUFDQTtFQUNBO0F4QjY3Vko7QXdCMTdWRTtFQUNFO0F4QjQ3Vko7O0F5QnpoV0E7RUFDRSxZcEJvSzBCO0FMdzNWNUI7O0F5QnhoV0E7RUFDRTtFQUNBO0VBQ0EscUNwQjRKNEI7RW9CM0o1QixZcEI0SjBCO0VvQjFKMUI7VUFBQTtBekIwaFdGO0F5QnZoV0U7RUFDRTtBekJ5aFdKOztBeUJwaFdBO0VBQ0UsY3hCakJlO0V3QmtCZixzQnBCaUp3QjtFb0I5SXRCO0F6QnFoV0o7O0F5QmhoV0E7RUFDRSxXcEJ5SXFCO0VvQnhJckI7RUFDQSxpQnhCN0JlO0V3QjhCZixnQnhCN0JpQjtFd0JnQ2Ysc0JwSHlNMEI7QTJGdzBWOUI7O0F5QjVnV0E7RUFDRTtFQUNBO0VBQ0E7QXpCK2dXRjs7QXlCM2dXQTtFQUNFLG1DcEhnY3NDO0VvSC9idEM7RUFDQSxnQnhCL0NpQjtFd0JnRGpCO0VBR0Usc0JwSHNMMEI7QTJGczFWOUI7O0F5QnRnV0U7RUFDRSwwQnBCcUcwQjtBTG82VjlCOztBeUJwZ1dBO0VBQ0U7RUFDQTtBekJ1Z1dGOztBeUJsZ1dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO1VBQUE7QXpCb2dXSjtBeUJsZ1dJO0VBWkY7SUFhSTtJQUNBO1lBQUE7RXpCcWdXSjtBQUNGOztBeUJqZ1dBO0VBQ0U7SUFDRTtFekJvZ1dGO0V5QmxnV0E7SUFDRTtFekJvZ1dGO0FBQ0Y7O0F5QjFnV0E7RUFDRTtJQUNFO0V6Qm9nV0Y7RXlCbGdXQTtJQUNFO0V6Qm9nV0Y7QUFDRjtBeUJoZ1dBO0VBQ0U7VUFBQTtBekJrZ1dGO0F5Qi8vVkU7RUFKRjtJQUtJO1lBQUE7RXpCa2dXRjtBQUNGOztBeUIvL1ZBO0VBQ0U7SUFDRTtFekJrZ1dGO0V5QmhnV0E7SUFDRTtFekJrZ1dGO0FBQ0Y7O0F5QnhnV0E7RUFDRTtJQUNFO0V6QmtnV0Y7RXlCaGdXQTtJQUNFO0V6QmtnV0Y7QUFDRjtBeUI5L1ZBO0VBQ0U7VUFBQTtBekJnZ1dGO0F5QjcvVkU7RUFKRjtJQUtJO1lBQUE7RXpCZ2dXRjtBQUNGOztBeUI3L1ZBO0VBQ0U7SUFDRTtFekJnZ1dGO0V5QjkvVkE7SUFDRTtFekJnZ1dGO0FBQ0Y7O0F5QnRnV0E7RUFDRTtJQUNFO0V6QmdnV0Y7RXlCOS9WQTtJQUNFO0V6QmdnV0Y7QUFDRjtBMEJ2b1dFO0VBRUU7QTFCd29XSjtBMEJub1dFO0VBQ0U7RUFDQTtBMUJxb1dKO0EwQmpvV0U7RUFDRSxhckJxRW1CO0FMOGpXdkI7QTBCL25XRTtFQUNFO0ExQmlvV0o7QTBCN25XRTtFQUNFO0ExQituV0o7QTBCM25XSTtFQUNFO0ExQjZuV047QTBCcm5XSTs7O0VBR0Usc0NySHlUd0I7QTJGOHpWOUI7QTBCam5XSTs7RUFFRSxjckhwQ0s7RXFId0NMO0VBQ0E7QTFCZ25XTjtBMEJ4bVdJOzs7RUFLRTtBMUJ3bVdOO0EwQmxtV0k7O0VBRUUsV3pCaERFO0V5Qm9ERjtFQUNBO0ExQmltV047O0EwQnpsV0U7OztFQUlFLG1Cckh3Q0s7QTJGbWpXVDtBMEJ6bFdJOzs7RUFHRTtBMUIybFdOOztBMEJ2bFdFO0VBQ0U7RUFNQSxpQnJCTitCO0FMMmxXbkM7O0EwQmxsV0U7RUFHRTtJQUNFO0lBQ0E7RTFCbWxXSjtBQUNGO0EwQmhsV0U7RUFFRTtJQUVFO0lBQ0E7SUFDQTtFMUJnbFdKOztFMEJua1dROzs7Ozs7Ozs7SUFDRTtJQUNBO0UxQjhrV1Y7RTBCemtXUTs7O0lBR0U7RTFCMmtXVjtFMEJya1dROzs7Ozs7SUFHRTtFMUIwa1dWOztFMEJ2aldNOzs7SUFFRSxjckh0S0M7SXFIeUtEO0UxQnlqV1I7RTBCampXUTs7O0lBRUUsV3pCcktKO0l5QnVLSSx5QnJIdExEO0UyRnl1V1Q7RTBCM2lXTTtJQUlFO0lBQ0E7RTFCMGlXUjtFMEJ0aVdRO0lBSUU7SUFDQTtFMUJxaVdWO0UwQjdoV007SUFDRSxjckhwTkM7SXFId05EO0lBQ0E7RTFCNGhXUjtFMEJ4aFdRO0lBQ0UsV3pCaE5KO0l5Qm9OSTtJQUNBO0UxQnVoV1Y7QUFDRjtBMEJ6L1ZNOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExQjQvVlI7QTBCMS9WUTs7RUFFRTtFQUNBO0ExQjQvVlY7QTBCei9WUTs7RUFFRTtFQUNBO0ExQjIvVlY7QTBCdi9WTTs7RUFDRTtBMUIwL1ZSO0EwQnYvVk07O0VBQ0U7QTFCMC9WUjtBMEJ2L1ZNOztFQUNFO0ExQjAvVlI7QTBCai9WSTs7RUFDRTtBMUJvL1ZOO0EwQmovVkk7O0VBQ0U7QTFCby9WTjtBMEJqL1ZJOztFQUNFO0ExQm8vVk47QTBCNytWSTs7RUFDRTtBMUJnL1ZOO0EwQjcrVkk7O0VBQ0U7QTFCZy9WTjtBMEI3K1ZJOztFQUNFO0ExQmcvVk47QTBCditWUTs7RUFFRTtFQUNBO0ExQnkrVlY7QTBCdCtWUTs7RUFFRTtFQUNBO0ExQncrVlY7O0EwQjk5Vkk7RUFDRTtBMUJpK1ZOO0EwQjM5Vk07RUFDRTtLQUFBO01BQUE7VUFBQTtBMUI2OVZSOztBaEZ4d1dJO0UwR3lUSTtJQUVJO0lBQ0E7RTFCazlWVjtFMEIvOFZVOzs7OztJQUtFO0UxQmk5Vlo7RTBCNzhWVTs7SUFFRTtFMUIrOFZaO0UwQjc4Vlk7Ozs7SUFFRTtFMUJpOVZkO0UwQjU4VlU7SUFDRTtFMUI4OFZaO0UwQnQ4VmdCO0lBQ0U7SUFDQSxVckJ6VFk7SXFCMFRaO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQnc4VmxCO0UwQnA4VmdCO0lBQ0U7SUFDQTtJQUNBO0UxQnM4VmxCO0UwQmw4VmdCO0lBQ0U7SUFDQTtJQUVBO0lBQ0E7RTFCbThWbEI7RTBCOTdWYztJQUVFO0UxQis3VmhCO0UwQjM3VmM7SUFDRTtFMUI2N1ZoQjtFMEJ6N1ZjOztJQUVFO0UxQjI3VmhCO0FBQ0Y7QWhGbjBXSTtFMEd5VEk7SUFFSTtJQUNBO0UxQjRnV1Y7RTBCemdXVTs7Ozs7SUFLRTtFMUIyZ1daO0UwQnZnV1U7O0lBRUU7RTFCeWdXWjtFMEJ2Z1dZOzs7O0lBRUU7RTFCMmdXZDtFMEJ0Z1dVO0lBQ0U7RTFCd2dXWjtFMEJoZ1dnQjtJQUNFO0lBQ0EsVXJCelRZO0lxQjBUWjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUJrZ1dsQjtFMEI5L1ZnQjtJQUNFO0lBQ0E7SUFDQTtFMUJnZ1dsQjtFMEI1L1ZnQjtJQUNFO0lBQ0E7SUFFQTtJQUNBO0UxQjYvVmxCO0UwQngvVmM7SUFFRTtFMUJ5L1ZoQjtFMEJyL1ZjO0lBQ0U7RTFCdS9WaEI7RTBCbi9WYzs7SUFFRTtFMUJxL1ZoQjtBQUNGO0FoRjczV0k7RTBHeVRJO0lBRUk7SUFDQTtFMUJza1dWO0UwQm5rV1U7Ozs7O0lBS0U7RTFCcWtXWjtFMEJqa1dVOztJQUVFO0UxQm1rV1o7RTBCamtXWTs7OztJQUVFO0UxQnFrV2Q7RTBCaGtXVTtJQUNFO0UxQmtrV1o7RTBCMWpXZ0I7SUFDRTtJQUNBLFVyQnpUWTtJcUIwVFo7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFCNGpXbEI7RTBCeGpXZ0I7SUFDRTtJQUNBO0lBQ0E7RTFCMGpXbEI7RTBCdGpXZ0I7SUFDRTtJQUNBO0lBRUE7SUFDQTtFMUJ1aldsQjtFMEJsaldjO0lBRUU7RTFCbWpXaEI7RTBCL2lXYztJQUNFO0UxQmlqV2hCO0UwQjdpV2M7O0lBRUU7RTFCK2lXaEI7QUFDRjtBaEZ2N1dJO0UwR3lUSTtJQUVJO0lBQ0E7RTFCZ29XVjtFMEI3bldVOzs7OztJQUtFO0UxQituV1o7RTBCM25XVTs7SUFFRTtFMUI2bldaO0UwQjNuV1k7Ozs7SUFFRTtFMUIrbldkO0UwQjFuV1U7SUFDRTtFMUI0bldaO0UwQnBuV2dCO0lBQ0U7SUFDQSxVckJ6VFk7SXFCMFRaO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQnNuV2xCO0UwQmxuV2dCO0lBQ0U7SUFDQTtJQUNBO0UxQm9uV2xCO0UwQmhuV2dCO0lBQ0U7SUFDQTtJQUVBO0lBQ0E7RTFCaW5XbEI7RTBCNW1XYztJQUVFO0UxQjZtV2hCO0UwQnptV2M7SUFDRTtFMUIybVdoQjtFMEJ2bVdjOztJQUVFO0UxQnltV2hCO0FBQ0Y7QTBCeHJXUTtFQUVJO0VBQ0E7QTFCeXJXWjtBMEJ0cldZOzs7OztFQUtFO0ExQndyV2Q7QTBCcHJXWTs7RUFFRTtBMUJzcldkO0EwQnByV2M7Ozs7RUFFRTtBMUJ3cldoQjtBMEJucldZO0VBQ0U7QTFCcXJXZDtBMEI3cVdrQjtFQUNFO0VBQ0EsVXJCelRZO0VxQjBUWjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUIrcVdwQjtBMEIzcVdrQjtFQUNFO0VBQ0E7RUFDQTtBMUI2cVdwQjtBMEJ6cVdrQjtFQUNFO0VBQ0E7RUFFQTtFQUNBO0ExQjBxV3BCO0EwQnJxV2dCO0VBRUU7QTFCc3FXbEI7QTBCbHFXZ0I7RUFDRTtBMUJvcVdsQjtBMEJocVdnQjs7RUFFRTtBMUJrcVdsQjs7QTJCaG5YQTtFQUNFO0EzQm1uWEY7QTJCam5YRTs7RUFHRSx5QnRIQ087RXNIQVA7QTNCa25YSjtBMkIvbVhFO0VBQ0U7QTNCaW5YSjtBMkIzbVhJO0VBQ0U7QTNCNm1YTjs7QTJCem1YRTtFQUNFO0EzQjRtWEo7QTJCMW1YSTtFQUNFO0VBQ0E7QTNCNG1YTjtBMkJ4bVhFO0VBQ0U7QTNCMG1YSjtBMkJ2bVhFO0VBQ0U7QTNCeW1YSjs7QTRCNW9YQTtFQUNFO0VBQ0E7RUFDQSxnQnZIczRCa0M7RXVIcjRCbEM7VUFBQTtFQUNBO0VBRUE7RWhIUUU7QW9GdW9YSjtBNEI1b1hFO0VBR0U7QTVCNG9YSjtBNEJ6b1hFO0VBQ0Usc0J2SHkzQmdDO0EyRmt4VnBDO0E0QnZvWEk7RUFDRTtBNUJ5b1hOO0E0QnJvWEU7RUFHRTtBNUJxb1hKO0E0Qm5vWEk7RUFDRTtBNUJxb1hOO0E0QmxvWEk7RUFDRTtBNUJvb1hOOztBNEI3blhFO0VBQ0U7RUFDQTtFQUNBLGNBMEJFO0E1QnNtWE47QTRCOW5YSTtFQUNFLGNBdUJBO0VBdEJBO0VBQ0E7QTVCZ29YTjtBNEJ2blhJO0VBQ0U7QTVCeW5YTjs7QTRCM29YRTtFQUNFO0VBQ0E7RUFDQSxjQTBCRTtBNUJvblhOO0E0QjVvWEk7RUFDRSxjQXVCQTtFQXRCQTtFQUNBO0E1QjhvWE47QTRCcm9YSTtFQUNFO0E1QnVvWE47O0E0QnpwWEU7RUFDRTtFQUNBO0VBQ0EsY0EwQkU7QTVCa29YTjtBNEIxcFhJO0VBQ0UsY0F1QkE7RUF0QkE7RUFDQTtBNUI0cFhOO0E0Qm5wWEk7RUFDRTtBNUJxcFhOOztBNEJ2cVhFO0VBQ0U7RUFDQTtFQUNBLGNBMEJFO0E1QmdwWE47QTRCeHFYSTtFQUNFLGNBdUJBO0VBdEJBO0VBQ0E7QTVCMHFYTjtBNEJqcVhJO0VBQ0U7QTVCbXFYTjs7QTRCcnJYRTtFQUNFO0VBQ0E7RUFDQSxjQTBCRTtBNUI4cFhOO0E0QnRyWEk7RUFDRSxjQXVCQTtFQXRCQTtFQUNBO0E1QndyWE47QTRCL3FYSTtFQUNFO0E1QmlyWE47O0E0Qm5zWEU7RUFDRTtFQUNBO0VBQ0EsY0EwQkU7QTVCNHFYTjtBNEJwc1hJO0VBQ0UsY0F1QkE7RUF0QkE7RUFDQTtBNUJzc1hOO0E0QjdyWEk7RUFDRTtBNUIrclhOOztBNEJqdFhFO0VBQ0U7RUFDQTtFQUNBLGNBMEJFO0E1QjByWE47QTRCbHRYSTtFQUNFLGNBdUJBO0VBdEJBO0VBQ0E7QTVCb3RYTjtBNEIzc1hJO0VBQ0U7QTVCNnNYTjs7QTRCL3RYRTtFQUNFO0VBQ0E7RUFDQSxjQTBCRTtBNUJ3c1hOO0E0Qmh1WEk7RUFDRSxjQXVCQTtFQXRCQTtFQUNBO0E1Qmt1WE47QTRCenRYSTtFQUNFO0E1QjJ0WE47O0E2Qnh4WEE7RUFDRSxheEJvSGlCO0FMdXFYbkI7QTZCenhYRTtFQUNFO0VBQ0E7QTdCMnhYSjtBNkJ6eFhJO0VBQ0U7QTdCMnhYTjs7QTZCNXdYRTtFQVFFO0VBQ0EsWXhCc0ZtQjtFd0JyRm5CLGF4QnFGbUI7RXdCcEZuQjtFQUNBO0VBQ0E7RUFDQTtBN0J3d1hKO0E2QnR3WEk7RUFDRTtFQUNBLGdCeEhnMkI4QjtFd0gvMUI5QjtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7QTdCeXdYTjtBNkJud1hJO0VBQ0U7RUFDQTtBN0Jxd1hOO0E2Qm53WE07OztFQUdFO0VBQ0E7QTdCcXdYUjtBNkJod1hFO0VBSUU7QTdCK3ZYSjtBNkI3dlhJO0VBQ0UsV3hCOENpQjtBTGl0WHZCO0E2QjN2WEU7RUFJRTtBN0IwdlhKO0E2Qnh2WEk7RUFDRSxjeEJtQ2lCO0FMdXRYdkI7QTZCbHZYSTtFQUNFO0E3Qm92WE47QTZCNXVYSTtFQUNFO0E3Qjh1WE47O0E4QjUwWE07RUFHRTtBOUI2MFhSO0E4QnIwWFE7RUFHRTtBOUJxMFhWO0E4Qjl6WE07RUFDRTtFQUNBO0E5QmcwWFI7QThCOXpYUTtFQUNFO0E5QmcwWFY7QStCbjJYQTtFQUNFO0VBQ0EsWTFIMDFCa0M7RTBIeDFCbEM7QS9CbzJYRjtBK0JsMlhFO0VBQ0U7QS9CbzJYSjtBK0JqMlhFO0VBQ0UsWTFIaTFCZ0M7QTJGa2hXcEM7QStCOTFYRTtFQUNFO0EvQmcyWEo7QStCNzFYRTtFQUNFO0EvQisxWEo7QStCMTFYSTtFQUNFO0EvQjQxWE47O0ErQi8wWFE7RUFDRSx5QkFMVztBL0J1MVhyQjtBK0I3MFhRO0VBQ0UsMkJBWFc7QS9CMDFYckI7QStCMTBYUTtFQUNFLDRCQWpCVztBL0I2MVhyQjtBK0J2MFhRO0VBQ0UsMEJBdkJXO0EvQmcyWHJCO0ErQnR6WE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CbzJYckI7O0ErQmgyWFE7RUFDRSx5QkFMVztBL0J3MlhyQjtBK0I5MVhRO0VBQ0UsMkJBWFc7QS9CMjJYckI7QStCMzFYUTtFQUNFLDRCQWpCVztBL0I4MlhyQjtBK0J4MVhRO0VBQ0UsMEJBdkJXO0EvQmkzWHJCO0ErQnYwWE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CcTNYckI7O0ErQmozWFE7RUFDRSx5QkFMVztBL0J5M1hyQjtBK0IvMlhRO0VBQ0UsMkJBWFc7QS9CNDNYckI7QStCNTJYUTtFQUNFLDRCQWpCVztBL0IrM1hyQjtBK0J6MlhRO0VBQ0UsMEJBdkJXO0EvQms0WHJCO0ErQngxWE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CczRYckI7O0ErQmw0WFE7RUFDRSx5QkFMVztBL0IwNFhyQjtBK0JoNFhRO0VBQ0UsMkJBWFc7QS9CNjRYckI7QStCNzNYUTtFQUNFLDRCQWpCVztBL0JnNVhyQjtBK0IxM1hRO0VBQ0UsMEJBdkJXO0EvQm01WHJCO0ErQnoyWE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CdTVYckI7O0ErQm41WFE7RUFDRSx5QkFMVztBL0IyNVhyQjtBK0JqNVhRO0VBQ0UsMkJBWFc7QS9CODVYckI7QStCOTRYUTtFQUNFLDRCQWpCVztBL0JpNlhyQjtBK0IzNFhRO0VBQ0UsMEJBdkJXO0EvQm82WHJCO0ErQjEzWE07RUFDRSxjQTFDZTtFQTJDZix5QkE1Q2E7QS9CdzZYckI7O0ErQnA2WFE7RUFDRSx5QkFMVztBL0I0NlhyQjtBK0JsNlhRO0VBQ0UsMkJBWFc7QS9CKzZYckI7QStCLzVYUTtFQUNFLDRCQWpCVztBL0JrN1hyQjtBK0I1NVhRO0VBQ0UsMEJBdkJXO0EvQnE3WHJCO0ErQjM0WE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CeTdYckI7O0ErQnI3WFE7RUFDRSx5QkFMVztBL0I2N1hyQjtBK0JuN1hRO0VBQ0UsMkJBWFc7QS9CZzhYckI7QStCaDdYUTtFQUNFLDRCQWpCVztBL0JtOFhyQjtBK0I3NlhRO0VBQ0UsMEJBdkJXO0EvQnM4WHJCO0ErQjU1WE07RUFDRSxjQTFDZTtFQTJDZix5QkE1Q2E7QS9CMDhYckI7O0ErQnQ4WFE7RUFDRSx5QkFMVztBL0I4OFhyQjtBK0JwOFhRO0VBQ0UsMkJBWFc7QS9CaTlYckI7QStCajhYUTtFQUNFLDRCQWpCVztBL0JvOVhyQjtBK0I5N1hRO0VBQ0UsMEJBdkJXO0EvQnU5WHJCO0ErQjc2WE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CMjlYckI7O0FnQzkvWEU7RUFDRTtFQUNBO0VBR0EsdUIzQndEcUI7QUx1OFh6QjtBZ0M1L1hFO0VBRUU7RUFDQTtVQUFBO0FoQzYvWEo7QWdDMS9YSTtFQU5GO0lBT0k7WUFBQTtFaEM2L1hKO0FBQ0Y7QWdDMS9YRTtFQUVFO0VBQ0E7VUFBQTtBaEMyL1hKO0FnQ3gvWEk7RUFORjtJQU9JO1lBQUE7RWhDMi9YSjtBQUNGO0FnQ3gvWEU7RUFFRTtFQUNBO1VBQUE7QWhDeS9YSjtBZ0N2L1hJO0VBTEY7SUFNSTtZQUFBO0VoQzAvWEo7QUFDRjtBZ0N2L1hFO0VBRUU7RUFDQTtVQUFBO0FoQ3cvWEo7QWdDdC9YSTtFQUxGO0lBTUk7WUFBQTtFaEN5L1hKO0FBQ0Y7QWdDdC9YRTtFQUVFO0VBQ0E7QWhDdS9YSjtBZ0NyL1hJO0VBTEY7SUFNSTtZQUFBO0VoQ3cvWEo7QUFDRjtBZ0NyL1hFO0VBRUU7RUFDQTtVQUFBO0FoQ3MvWEo7QWdDcC9YSTtFQUxGO0lBTUk7WUFBQTtFaEN1L1hKO0FBQ0Y7QWdDcC9YRTtFQUVFO0VBQ0E7QWhDcS9YSjtBZ0NsL1hJO0VBTkY7SUFPSTtZQUFBO0VoQ3EvWEo7QUFDRjtBZ0NsL1hFO0VBRUU7RUFDQTtVQUFBO0FoQ20vWEo7QWdDaC9YSTtFQU5GO0lBT0k7WUFBQTtFaENtL1hKO0FBQ0Y7O0FnQzkrWEE7RUFDRTtJQUNFO0VoQ2kvWEY7RWdDLytYQTtJQUNFO0VoQ2kvWEY7QUFDRjs7QWdDdi9YQTtFQUNFO0lBQ0U7RWhDaS9YRjtFZ0MvK1hBO0lBQ0U7RWhDaS9YRjtBQUNGO0FnQzkrWEE7RUFDRTtJQUNFO0VoQ2cvWEY7RWdDOStYQTtJQUNFO0VoQ2cvWEY7QUFDRjtBZ0N0L1hBO0VBQ0U7SUFDRTtFaENnL1hGO0VnQzkrWEE7SUFDRTtFaENnL1hGO0FBQ0Y7QWdDNytYQTtFQUNFO0lBQ0U7RWhDKytYRjtFZ0M3K1hBO0lBQ0U7RWhDKytYRjtBQUNGO0FnQ3IvWEE7RUFDRTtJQUNFO0VoQysrWEY7RWdDNytYQTtJQUNFO0VoQysrWEY7QUFDRjtBZ0M1K1hBO0VBQ0U7SUFDRTtFaEM4K1hGO0VnQzUrWEE7SUFDRTtFaEM4K1hGO0FBQ0Y7QWdDcC9YQTtFQUNFO0lBQ0U7RWhDOCtYRjtFZ0M1K1hBO0lBQ0U7RWhDOCtYRjtBQUNGO0FnQzMrWEE7RUFDRTtJQUNFO0lBQ0E7RWhDNitYRjtFZ0MzK1hBO0lBQ0U7SUFDQTtFaEM2K1hGO0FBQ0Y7QWdDci9YQTtFQUNFO0lBQ0U7SUFDQTtFaEM2K1hGO0VnQzMrWEE7SUFDRTtJQUNBO0VoQzYrWEY7QUFDRjtBZ0NuK1hJOzs7OztFQUNFO0VBQ0E7QWhDeStYTjs7QUE5bFlBO0VBQ0k7RUFDQTtBQWltWUo7QUE3bFlBO0VBRVE7SUFDSTtJQUNBO0VBOGxZVjtBQUNGO0FBemxZQTtFQUNJO0VBQ0E7RUFDQTtBQTJsWUo7QUExbFlJO0VBQ0k7QUE0bFlSOztBQXRsWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBeWxZUjtBQXZsWVE7RUFDSTtBQXlsWVo7QUF2bFlZO0VBQ0k7QUF5bFloQjtBQXBsWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFzbFlSO0FBcGxZUTtFQUNJO0FBc2xZWjtBQXBsWVk7RUFDSTtBQXNsWWhCO0FBaGxZUTtFQUNJO0FBa2xZWjs7QUE1a1lBO0VBQ0k7RUFDQTtBQStrWUo7O0FBN2tZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBZ2xZSjs7QUE5a1lBO0VBQ0k7RUFDQTtFQUNBO0FBaWxZSjs7QUEva1lBO0VBQ0k7RUFDQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0FBa2xZSjtBQS9rWVE7RUFDSTtFQUNBO0VBQ0E7QUFpbFlaOztBQTFrWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FBNGtZUjtBQTFrWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTRrWVo7QUF2a1lJO0VBQ0k7QUF5a1lSO0FBdmtZUTtFQUNJO0VBQ0E7QUF5a1laO0FBcmtZb0I7RUFDSTtBQXVrWXhCO0FBcGtZZ0I7RUFDSSx5QkN4SWI7QUQ4c1lQO0FBbGtZWTtFQUNJO0FBb2tZaEI7QUFqa1lZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7R0FBQTtPQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW1rWWhCO0FBaGtZWTtFQUNJO0FBa2tZaEI7QUFqa1lnQjtFQUNJO0FBbWtZcEI7QUFqa1lnQjtFQUNJO0FBbWtZcEI7QUE1allJO0VBQ0k7QUE4allSO0FBNWpZUTtFQUNJO0VBQ0E7QUE4allaO0FBdGpZZ0I7RUFDSSx5QkMxTGI7QURrdllQO0FBcGpZWTtFQUNJO0FBc2pZaEI7QUFuallZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7R0FBQTtPQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXFqWWhCO0FBbGpZWTtFQUNJO0FBb2pZaEI7QUFuallnQjtFQUNJO0FBcWpZcEI7QUFuallnQjtFQUNJO0FBcWpZcEI7QUE3aVlRO0VBQ0k7RUFDQTtFQUNBO0FBK2lZWjtBQTdpWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQStpWVo7QUExaVlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUE0aVlSO0FBdmlZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXlpWVo7QUFyaVlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdWlZUjtBQXJpWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF1aVlaO0FBcGlZUTtFQUNJO0FBc2lZWjs7QUEvaFlJO0V0RTlURjtFRkFFLHlCeUVvQ0k7RXZFbENOLHFCdUVrQ007RURnU0E7QUFnaVlSO0F6RjkxWUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRTAyWXpHO0F0RTkxWUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFMjFZTjtBdEV0MVlFO0VBRUU7RUFDQSx5QnVFUUk7RXZFUEoscUJ1RU9JO0FEZzFZUjtBdEVoMVlFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRTAzWTdMO0F0RTMwWUk7RUFLSTtBc0V5MFlSO0FBdGpZSTtFQUNJO0VBQ0E7QUF3allSO0FBdGpZUTtFQUNJO0VBQ0E7QUF3allaO0FBcmpZSTtFQUNJO0VBQ0E7QUF1allSO0FBcmpZUTtFQUNJO0VBQ0E7QUF1allaO0FBcGpZSTtFQUNJO0VBQ0E7QUFzallSO0FBcGpZUTtFQUNJO0VBQ0E7QUFzallaO0FBbGpZUTtFQUNJO0VBQ0E7QUFvallaO0FBbGpZWTtFQUNJO0VBQ0E7QUFvalloQjtBQWhqWUk7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFpallSO0FBL2lZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBaWpZWjtBQTdpWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQStpWVo7QUE3aVlRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUEraVlaO0FBMWlZWTtFQUNJO0VBQ0E7QUE0aVloQjs7QUFsaVlRO0VBQ0k7QUFxaVlaO0FBaGlZWTtFQUNJO0VBQ0E7RUFDQTtBQWtpWWhCOztBQTNoWUk7RUFDSTtFQUNBO0VBQ0E7QUE4aFlSOztBQTFoWUE7RUFDSTtBQTZoWUo7QUE1aFlJO0VBQ0k7RUFDQTtFQUNBO0FBOGhZUjs7QUEzaFlBO0VBQ0k7QUE4aFlKOztBQXJoWWdCO0V0RWpjZDtFRkFFLHlCeUVvQ0k7RXZFbENOLHFCdUVrQ007QUR3N1lSO0F6RnQ5WUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRWsrWXpHO0F0RXQ5WUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFbTlZTjtBdEU5OFlFO0VBRUU7RUFDQSx5QnVFUUk7RXZFUEoscUJ1RU9JO0FEdzhZUjtBdEV4OFlFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRWsvWTdMO0F0RW44WUk7RUFLSTtBc0VpOFlSO0FBNWlZZ0I7RUFDSTtFdEUvWWxCLGN1RTlCVTtFdkUrQlYscUJ1RS9CVTtBRDY5WVo7QXpGbi9ZRTtFbUJ3REUsV0FMZ0Q7RUFNaEQseUJ1RW5DUTtFdkVvQ1IscUJ1RXBDUTtBRGsrWVo7QXRFMzdZRTtFQUVFO0FzRTQ3WUo7QXRFejdZRTtFQUVFLGN1RTlDUTtFdkUrQ1I7QXNFMDdZSjtBdEV2N1lFO0VBR0U7RUFDQSx5QnVFdERRO0V2RXVEUixxQnVFdkRRO0FEOCtZWjtBdEVyN1lJO0VBS0k7QXNFbTdZUjtBQXBqWWdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFzallwQjtBQW5qWWdCO0VBQ0k7RUFDQTtFQUNBO0FBcWpZcEI7QUE5aFlBO0VBQ0k7QUFnaVlKOztBQTloWUE7RUFDSTtBQWlpWUo7O0FBL2hZQTtFQUNJO0FBa2lZSjs7QUFoaVlBO0VBQ0k7QUFtaVlKOztBQWppWUE7RUFDSTtBQW9pWUo7O0FBbGlZQTtFQUNJO0FBcWlZSjs7QUFuaVlBO0VBQ0k7QUFzaVlKOztBQXBpWUE7RUFDSTtBQXVpWUo7O0FBcmlZQTtFQUNJO0FBd2lZSjs7QUF0aVlBO0VBQ0k7QUF5aVlKOztBQXZpWUE7RUFDSTtBQTBpWUo7O0FBeGlZQTtFQUNJO0FBMmlZSjs7QUF6aVlBO0VBQ0k7QUE0aVlKOztBQTFpWUE7RUFDSTtBQTZpWUo7O0FBM2lZQTtFQUNJO0FBOGlZSjs7QUExaVlRO0VBQ0k7QUE2aVlaOztBQTNpWVE7RUFDSTtBQThpWVo7O0FBNWlZUTtFQUNJO0FBK2lZWjs7QUE3aVlRO0VBQ0k7QUFnallaOztBQTlpWVE7RUFDSTtBQWlqWVo7O0FoRmpqWkk7RWdGbWZJO0lBQ0k7RUFra1lWOztFQWhrWU07SUFDSTtFQW1rWVY7O0VBamtZTTtJQUNJO0VBb2tZVjs7RUFsa1lNO0lBQ0k7RUFxa1lWOztFQW5rWU07SUFDSTtFQXNrWVY7QUFDRjtBaEZ2a1pJO0VnRm1mSTtJQUNJO0VBdWxZVjs7RUFybFlNO0lBQ0k7RUF3bFlWOztFQXRsWU07SUFDSTtFQXlsWVY7O0VBdmxZTTtJQUNJO0VBMGxZVjs7RUF4bFlNO0lBQ0k7RUEybFlWO0FBQ0Y7QWhGNWxaSTtFZ0ZtZkk7SUFDSTtFQTRtWVY7O0VBMW1ZTTtJQUNJO0VBNm1ZVjs7RUEzbVlNO0lBQ0k7RUE4bVlWOztFQTVtWU07SUFDSTtFQSttWVY7O0VBN21ZTTtJQUNJO0VBZ25ZVjtBQUNGO0FoRmpuWkk7RWdGbWZJO0lBQ0k7RUFpb1lWOztFQS9uWU07SUFDSTtFQWtvWVY7O0VBaG9ZTTtJQUNJO0VBbW9ZVjs7RUFqb1lNO0lBQ0k7RUFvb1lWOztFQWxvWU07SUFDSTtFQXFvWVY7QUFDRjtBQWhvWUE7RUFDSTtBQWtvWUo7O0FBaG9ZQTtFQUNJO0FBbW9ZSjs7QUFqb1lBO0VBQ0k7QUFvb1lKOztBQWxvWUE7RUFDSTtBQXFvWUo7O0FBbm9ZQTtFQUNJO0FBc29ZSjs7QUFwb1lBO0VBQ0k7RUFDQTtBQXVvWUo7O0FBcm9ZQTtFQUNJO0VBQ0E7QUF3b1lKOztBQXRvWUE7RUFDSTtFQUNBO0FBeW9ZSjs7QUF2b1lBO0VBQ0k7RUFDQTtBQTBvWUo7O0FBeG9ZQTtFQUNJO0VBQ0E7QUEyb1lKOztBQXpvWUE7RUFDSTtFQUNBO0FBNG9ZSjs7QUExb1lBO0VBQ0k7RUFDQTtBQTZvWUo7O0FBM29ZQTtFQUNJO0VBQ0E7QUE4b1lKOztBQTVvWUE7RUFDSTtFQUNBO0FBK29ZSjs7QUE3b1lBO0VBQ0k7RUFDQTtBQWdwWUo7O0FBNW9ZQTtFQUNJO0FBK29ZSjs7QUE3b1lBO0VBQ0k7QUFncFlKOztBQTlvWUE7RUFDSTtBQWlwWUo7O0FBL29ZQTtFQUNJO0FBa3BZSjs7QUE5b1lBO0VBQ0k7QUFpcFlKOztBQS9vWUE7RUFDSTtBQWtwWUo7O0FBaHBZQTtFQUNJO0FBbXBZSjs7QUFqcFlBO0VBQ0k7QUFvcFlKOztBQWxwWUE7RUFDSTtBQXFwWUo7O0FBbnBZQTtFQUNJO0FBc3BZSjs7QUFwcFlBO0VBQ0k7QUF1cFlKOztBQXJwWUE7RUFDSTtBQXdwWUo7O0FBdHBZQTtFQUNJO0FBeXBZSjs7QUF2cFlBO0VBQ0k7QUEwcFlKOztBQXhwWUE7RUFDSTtBQTJwWUo7O0FBenBZQTtFQUNJO0FBNHBZSjs7QUF4cFlBO0VBQ0k7QUEycFlKOztBQXZwWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQTBwWUo7O0FBeHBZQTs7RUFHSTtBQTBwWUo7O0FBeHBZQTs7RUFHSTtBQTBwWUo7O0FBeHBZQTs7RUFHSTtBQTBwWUo7O0FBanBZZ0I7RUFBZ0M7QUFxcFloRDs7QUFycFlnQjtFQUFnQztBQXlwWWhEOztBQXpwWWdCO0VBQWdDO0FBNnBZaEQ7O0FBN3BZZ0I7RUFBZ0M7QUFpcVloRDs7QUFqcVlnQjtFQUFnQztBQXFxWWhEOztBQXJxWWdCO0VBQWdDO0FBeXFZaEQ7O0FBenFZZ0I7RUFBZ0M7QUE2cVloRDs7QUE3cVlnQjtFQUFnQztBQWlyWWhEOztBQWpyWWdCO0VBQWdDO0FBcXJZaEQ7O0FBcnJZZ0I7RUFBZ0M7QUF5clloRDs7QWhGNzBaSTtFZ0ZvcEJZO0lBQWdDO0VBOHJZOUM7O0VBOXJZYztJQUFnQztFQWtzWTlDOztFQWxzWWM7SUFBZ0M7RUFzc1k5Qzs7RUF0c1ljO0lBQWdDO0VBMHNZOUM7O0VBMXNZYztJQUFnQztFQThzWTlDOztFQTlzWWM7SUFBZ0M7RUFrdFk5Qzs7RUFsdFljO0lBQWdDO0VBc3RZOUM7O0VBdHRZYztJQUFnQztFQTB0WTlDOztFQTF0WWM7SUFBZ0M7RUE4dFk5Qzs7RUE5dFljO0lBQWdDO0VBa3VZOUM7QUFDRjtBaEZ2M1pJO0VnRm9wQlk7SUFBZ0M7RUF1dVk5Qzs7RUF2dVljO0lBQWdDO0VBMnVZOUM7O0VBM3VZYztJQUFnQztFQSt1WTlDOztFQS91WWM7SUFBZ0M7RUFtdlk5Qzs7RUFudlljO0lBQWdDO0VBdXZZOUM7O0VBdnZZYztJQUFnQztFQTJ2WTlDOztFQTN2WWM7SUFBZ0M7RUErdlk5Qzs7RUEvdlljO0lBQWdDO0VBbXdZOUM7O0VBbndZYztJQUFnQztFQXV3WTlDOztFQXZ3WWM7SUFBZ0M7RUEyd1k5QztBQUNGO0FoRmg2Wkk7RWdGb3BCWTtJQUFnQztFQWd4WTlDOztFQWh4WWM7SUFBZ0M7RUFveFk5Qzs7RUFweFljO0lBQWdDO0VBd3hZOUM7O0VBeHhZYztJQUFnQztFQTR4WTlDOztFQTV4WWM7SUFBZ0M7RUFneVk5Qzs7RUFoeVljO0lBQWdDO0VBb3lZOUM7O0VBcHlZYztJQUFnQztFQXd5WTlDOztFQXh5WWM7SUFBZ0M7RUE0eVk5Qzs7RUE1eVljO0lBQWdDO0VBZ3pZOUM7O0VBaHpZYztJQUFnQztFQW96WTlDO0FBQ0Y7QWhGejhaSTtFZ0ZvcEJZO0lBQWdDO0VBeXpZOUM7O0VBenpZYztJQUFnQztFQTZ6WTlDOztFQTd6WWM7SUFBZ0M7RUFpMFk5Qzs7RUFqMFljO0lBQWdDO0VBcTBZOUM7O0VBcjBZYztJQUFnQztFQXkwWTlDOztFQXowWWM7SUFBZ0M7RUE2MFk5Qzs7RUE3MFljO0lBQWdDO0VBaTFZOUM7O0VBajFZYztJQUFnQztFQXExWTlDOztFQXIxWWM7SUFBZ0M7RUF5MVk5Qzs7RUF6MVljO0lBQWdDO0VBNjFZOUM7QUFDRjtBQXYxWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXkxWUo7O0FBcDFZWTtFQUNJO0VBQ0E7QUF1MVloQjs7QUEvMFlBO0VBQ0k7RUFDQTtBQWsxWUo7O0FBaDFZQTtFQUNJO0lBQUk7RUFvMVlOO0VBbjFZRTtJQUFNO0VBczFZUjtBQUNGO0FBcjFZQTtFQUNJO0lBQUk7RUF3MVlOO0VBdjFZRTtJQUFNO0VBMDFZUjtBQUNGLEM7QWlDenlaSTtFQUNJO0FBclNSO0FBMFNRO0VBQ0k7QUF4U1o7QUEyU1E7RUFDSTtBQXpTWjtBQTRTUTtFQUNJO0FBMVNaLEM7QUFYQSxnQkFBZ0I7QUE4VFI7RUFDSTtFQUNBO0VBQ0E7QUE1VFo7QUFpVVk7RUFDSTtFQUNBO0FBL1RoQjtBQWlVWTtFQUNJO0FBL1RoQjtBQWlVZ0I7RUFDSTtBQS9UcEIsQztBQzJEQTtFQUNJO0FBekVKO0FBOEVJO0VBQ0k7QUE1RVI7QUErRUk7RUFDSTtBQTdFUjtBQWdGSTtFQUNJO0FBOUVSLEM7QUNxZUE7RUFDSTtBQS9lSjtBQW9mSTtFQUNJO0FBbGZSO0FBcWZJO0VBQ0k7QUFuZlI7QUFzZkk7RUFDSTtBQXBmUixDO0FDa0RJO0VBQ0k7QUE1RFIsQzs7QUM0UkE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOzs7QUN6Q0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQ3dZQTtFQUNJO0VBQ0E7QUE5cEJKO0FBZ3FCQTtFQUNJO0VBQ0E7QUE3cEJKLEM7O0FDMkpBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTtBQUNBO0lBQ0E7QUFDQTs7QUM0RUE7RUFDSTtFQUNBO0FBbFFKO0FBb1FBO0VBQ0k7RUFDQTtBQWpRSjtBQW1RQTtFQUNJO0FBaFFKLEM7O0FDeUhBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTs7QUNnSEE7RUFDSTtFQUNBO0FBclFKO0FBdVFBO0VBQ0k7RUFDQTtBQXBRSjtBQXVRSTtFQUNJO0VBQ0E7QUFwUVI7QUFzUUk7RUFDSTtBQXBRUjtBQXNRUTtFQUNJO0FBcFFaLEM7QUMyT0E7RUFDSTtFQUNBO0FBN1BKO0FBK1BBO0VBQ0k7RUFDQTtBQTVQSjtBQThQQTtFQUNJO0VBQ0E7QUEzUEosQzs7QUM0SkE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQytIQTtFQUNJO0VBQ0E7QUF4VEo7QUEwVEE7RUFDSTtFQUNBO0FBdlRKO0FBeVRBO0VBQ0k7RUFDQTtBQXRUSixDO0FDc01BO0VBQ0k7RUFDQTtBQWxOSjtBQW9OQTtFQUNJO0VBQ0E7QUFqTko7QUFtTkE7RUFDSTtFQUNBO0FBaE5KLEM7O0FDMkdBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTs7QUM0M0JZO0VBQ0k7QUFwZ0NoQjtBQW1nQ1k7RUFDSTtBQWpnQ2hCO0FBZ2dDWTtFQUNJO0FBOS9CaEI7QUE2L0JZO0VBQ0k7QUEzL0JoQjtBQTAvQlk7RUFDSTtBQXgvQmhCO0FBdS9CWTtFQUNJO0FBci9CaEI7QUFvL0JZO0VBQ0k7QUFsL0JoQjtBQWkvQlk7RUFDSTtBQS8rQmhCO0FBOCtCWTtFQUNJO0FBNStCaEI7QUEyK0JZO0VBQ0k7QUF6K0JoQjtBQXcrQlk7RUFDSTtBQXQrQmhCO0FBcStCWTtFQUNJO0FBbitCaEI7QUFrK0JZO0VBQ0k7QUFoK0JoQjtBQSs5Qlk7RUFDSTtBQTc5QmhCO0FBNDlCWTtFQUNJO0FBMTlCaEI7QUF5OUJZO0VBQ0k7QUF2OUJoQjtBQXM5Qlk7RUFDSTtBQXA5QmhCO0FBbTlCWTtFQUNJO0FBajlCaEI7QUFnOUJZO0VBQ0k7QUE5OEJoQjtBQTY4Qlk7RUFDSTtBQTM4QmhCO0FBMDhCWTtFQUNJO0FBeDhCaEI7QUF1OEJZO0VBQ0k7QUFyOEJoQjtBQW84Qlk7RUFDSTtBQWw4QmhCO0FBaThCWTtFQUNJO0FBLzdCaEI7QUE4N0JZO0VBQ0k7QUE1N0JoQjtBQTI3Qlk7RUFDSTtBQXo3QmhCO0FBdzdCWTtFQUNJO0FBdDdCaEI7QUFxN0JZO0VBQ0k7QUFuN0JoQjtBQWs3Qlk7RUFDSTtBQWg3QmhCO0FBKzZCWTtFQUNJO0FBNzZCaEI7QUE0NkJZO0VBQ0k7QUExNkJoQjtBQXk2Qlk7RUFDSTtBQXY2QmhCO0FBczZCWTtFQUNJO0FBcDZCaEI7QUFtNkJZO0VBQ0k7QUFqNkJoQjtBQWc2Qlk7RUFDSTtBQTk1QmhCO0FBNjVCWTtFQUNJO0FBMzVCaEI7QUEwNUJZO0VBQ0k7QUF4NUJoQjtBQXU1Qlk7RUFDSTtBQXI1QmhCO0FBbzVCWTtFQUNJO0FBbDVCaEI7QUFpNUJZO0VBQ0k7QUEvNEJoQjtBQTg0Qlk7RUFDSTtBQTU0QmhCO0FBMjRCWTtFQUNJO0FBejRCaEI7QUF3NEJZO0VBQ0k7QUF0NEJoQjtBQXE0Qlk7RUFDSTtBQW40QmhCO0FBazRCWTtFQUNJO0FBaDRCaEI7QUErM0JZO0VBQ0k7QUE3M0JoQjtBQTQzQlk7RUFDSTtBQTEzQmhCO0FBeTNCWTtFQUNJO0FBdjNCaEI7QUFzM0JZO0VBQ0k7QUFwM0JoQjtBQW0zQlk7RUFDSTtBQWozQmhCO0FBZzNCWTtFQUNJO0FBOTJCaEI7QUE2MkJZO0VBQ0k7QUEzMkJoQjtBQTAyQlk7RUFDSTtBQXgyQmhCO0FBdTJCWTtFQUNJO0FBcjJCaEI7QUFvMkJZO0VBQ0k7QUFsMkJoQjtBQWkyQlk7RUFDSTtBQS8xQmhCO0FBODFCWTtFQUNJO0FBNTFCaEI7QUEyMUJZO0VBQ0k7QUF6MUJoQjtBQXcxQlk7RUFDSTtBQXQxQmhCO0FBcTFCWTtFQUNJO0FBbjFCaEI7QUFrMUJZO0VBQ0k7QUFoMUJoQjtBQSswQlk7RUFDSTtBQTcwQmhCO0FBNDBCWTtFQUNJO0FBMTBCaEI7QUF5MEJZO0VBQ0k7QUF2MEJoQjtBQXMwQlk7RUFDSTtBQXAwQmhCO0FBbTBCWTtFQUNJO0FBajBCaEI7QUFnMEJZO0VBQ0k7QUE5ekJoQjtBQTZ6Qlk7RUFDSTtBQTN6QmhCO0FBMHpCWTtFQUNJO0FBeHpCaEI7QUF1ekJZO0VBQ0k7QUFyekJoQjtBQW96Qlk7RUFDSTtBQWx6QmhCO0FBaXpCWTtFQUNJO0FBL3lCaEI7QUE4eUJZO0VBQ0k7QUE1eUJoQjtBQTJ5Qlk7RUFDSTtBQXp5QmhCO0FBd3lCWTtFQUNJO0FBdHlCaEI7QUFxeUJZO0VBQ0k7QUFueUJoQjtBQWt5Qlk7RUFDSTtBQWh5QmhCO0FBMjBCd0I7RUFDSTtBQXowQjVCO0FBNHhCWTtFQUNJO0FBenhCaEI7QUF3eEJZO0VBQ0k7QUF0eEJoQjtBQXF4Qlk7RUFDSTtBQW54QmhCO0FBa3hCWTtFQUNJO0FBaHhCaEI7QUErd0JZO0VBQ0k7QUE3d0JoQjtBQTR3Qlk7RUFDSTtBQTF3QmhCO0FBeXdCWTtFQUNJO0FBdndCaEI7QUFzd0JZO0VBQ0k7QUFwd0JoQjtBQW13Qlk7RUFDSTtBQWp3QmhCO0FBZ3dCWTtFQUNJO0FBOXZCaEI7QUE2dkJZO0VBQ0k7QUEzdkJoQjtBQTB2Qlk7RUFDSTtBQXh2QmhCO0FBdXZCWTtFQUNJO0FBcnZCaEI7QUFvdkJZO0VBQ0k7QUFsdkJoQjtBQWl2Qlk7RUFDSTtBQS91QmhCO0FBOHVCWTtFQUNJO0FBNXVCaEI7QUEydUJZO0VBQ0k7QUF6dUJoQjtBQXd1Qlk7RUFDSTtBQXR1QmhCO0FBcXVCWTtFQUNJO0FBbnVCaEI7QUFrdUJZO0VBQ0k7QUFodUJoQjtBQSt0Qlk7RUFDSTtBQTd0QmhCO0FBNHRCWTtFQUNJO0FBMXRCaEI7QUF5dEJZO0VBQ0k7QUF2dEJoQjtBQXN0Qlk7RUFDSTtBQXB0QmhCO0FBbXRCWTtFQUNJO0FBanRCaEI7QUFndEJZO0VBQ0k7QUE5c0JoQjtBQTZzQlk7RUFDSTtBQTNzQmhCO0FBMHNCWTtFQUNJO0FBeHNCaEI7QUF1c0JZO0VBQ0k7QUFyc0JoQjtBQW9zQlk7RUFDSTtBQWxzQmhCO0FBaXNCWTtFQUNJO0FBL3JCaEI7QUE4ckJZO0VBQ0k7QUE1ckJoQjtBQTJyQlk7RUFDSTtBQXpyQmhCO0FBd3JCWTtFQUNJO0FBdHJCaEI7QUFxckJZO0VBQ0k7QUFuckJoQjtBQWtyQlk7RUFDSTtBQWhyQmhCO0FBK3FCWTtFQUNJO0FBNXFCaEI7QUEycUJZO0VBQ0k7QUF6cUJoQjtBQXdxQlk7RUFDSTtBQXRxQmhCO0FBcXFCWTtFQUNJO0FBbnFCaEI7QUFrcUJZO0VBQ0k7QUFocUJoQjtBQStwQlk7RUFDSTtBQTdwQmhCO0FBNHBCWTtFQUNJO0FBMXBCaEI7QUF5cEJZO0VBQ0k7QUF2cEJoQjtBQXNwQlk7RUFDSTtBQXBwQmhCO0FBbXBCWTtFQUNJO0FBanBCaEI7QUFncEJZO0VBQ0k7QUE5b0JoQjtBQTZvQlk7RUFDSTtBQTNvQmhCO0FBMG9CWTtFQUNJO0FBeG9CaEI7QUF1b0JZO0VBQ0k7QUFyb0JoQjtBQW9vQlk7RUFDSTtBQWxvQmhCO0FBaW9CWTtFQUNJO0FBL25CaEI7QUE4bkJZO0VBQ0k7QUE1bkJoQjtBQTJuQlk7RUFDSTtBQXpuQmhCO0FBd25CWTtFQUNJO0FBdG5CaEI7QUFxbkJZO0VBQ0k7QUFubkJoQjtBQWtuQlk7RUFDSTtBQWhuQmhCO0FBK21CWTtFQUNJO0FBN21CaEI7QUE0bUJZO0VBQ0k7QUExbUJoQjtBQXltQlk7RUFDSTtBQXZtQmhCO0FBc21CWTtFQUNJO0FBcG1CaEI7QUFtbUJZO0VBQ0k7QUFqbUJoQjtBQWdtQlk7RUFDSTtBQTlsQmhCO0FBNmxCWTtFQUNJO0FBM2xCaEI7QUEwbEJZO0VBQ0k7QUF4bEJoQjtBQXVsQlk7RUFDSTtBQXJsQmhCO0FBb2xCWTtFQUNJO0FBbGxCaEI7QUFpbEJZO0VBQ0k7QUEva0JoQjtBQThrQlk7RUFDSTtBQTVrQmhCO0FBMmtCWTtFQUNJO0FBemtCaEI7QUF3a0JZO0VBQ0k7QUF0a0JoQjtBQXFrQlk7RUFDSTtBQW5rQmhCLEM7O0FDM1VBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTs7O0FDQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQ2VBO0VBQ0k7RUFDQTtBQXpLSjtBQTJLQTtFQUNJO0VBQ0E7QUF4S0osQztBQ2lISTtFQUNJO0FBeEhSLEM7QUNpR0E7RUFDSTtFQUNBO0FBbEdKO0FBb0dBO0VBQ0k7RUFDQTtBQWpHSixDO0FDaUhJO0VBQ0k7QUF4SFIsQzs7QUNtSkE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOzs7QUM1SEE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQTtJQUNBO0lBQ0E7T0FBQTtBQUNBOzs7QUFxREE7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBO0FBQ0E7OztBQ3VDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBOzs7QUFJQTtJQUNBO0FBQ0E7OztBQzVCQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBOzs7QUFJQTtJQUNBO0FBQ0E7O0FDdzFDQTtFQUNJO0VBQ0E7QUFuL0NKO0FBcS9DQTtFQUNJO0VBQ0E7QUFsL0NKLEM7QUMrK0JZO0VBQ0k7QUF0L0JoQjtBQXEvQlk7RUFDSTtBQW4vQmhCO0FBay9CWTtFQUNJO0FBaC9CaEI7QUErK0JZO0VBQ0k7QUE3K0JoQjtBQTQrQlk7RUFDSTtBQTErQmhCO0FBeStCWTtFQUNJO0FBditCaEI7QUFzK0JZO0VBQ0k7QUFwK0JoQjtBQW0rQlk7RUFDSTtBQWorQmhCO0FBZytCWTtFQUNJO0FBOTlCaEI7QUE2OUJZO0VBQ0k7QUEzOUJoQjtBQTA5Qlk7RUFDSTtBQXg5QmhCO0FBdTlCWTtFQUNJO0FBcjlCaEI7QUFvOUJZO0VBQ0k7QUFsOUJoQjtBQWk5Qlk7RUFDSTtBQS84QmhCO0FBODhCWTtFQUNJO0FBNThCaEI7QUEyOEJZO0VBQ0k7QUF6OEJoQjtBQXc4Qlk7RUFDSTtBQXQ4QmhCO0FBcThCWTtFQUNJO0FBbjhCaEI7QUFrOEJZO0VBQ0k7QUFoOEJoQjtBQSs3Qlk7RUFDSTtBQTc3QmhCO0FBNDdCWTtFQUNJO0FBMTdCaEI7QUF5N0JZO0VBQ0k7QUF2N0JoQjtBQXM3Qlk7RUFDSTtBQXA3QmhCO0FBbTdCWTtFQUNJO0FBajdCaEI7QUFnN0JZO0VBQ0k7QUE5NkJoQjtBQTY2Qlk7RUFDSTtBQTM2QmhCO0FBMDZCWTtFQUNJO0FBeDZCaEI7QUF1NkJZO0VBQ0k7QUFyNkJoQjtBQW82Qlk7RUFDSTtBQWw2QmhCO0FBaTZCWTtFQUNJO0FBLzVCaEI7QUE4NUJZO0VBQ0k7QUE1NUJoQjtBQTI1Qlk7RUFDSTtBQXo1QmhCO0FBdzVCWTtFQUNJO0FBdDVCaEI7QUFxNUJZO0VBQ0k7QUFuNUJoQjtBQWs1Qlk7RUFDSTtBQWg1QmhCO0FBKzRCWTtFQUNJO0FBNzRCaEI7QUE0NEJZO0VBQ0k7QUExNEJoQjtBQXk0Qlk7RUFDSTtBQXY0QmhCO0FBczRCWTtFQUNJO0FBcDRCaEI7QUFtNEJZO0VBQ0k7QUFqNEJoQjtBQWc0Qlk7RUFDSTtBQTkzQmhCO0FBNjNCWTtFQUNJO0FBMzNCaEI7QUEwM0JZO0VBQ0k7QUF4M0JoQjtBQXUzQlk7RUFDSTtBQXIzQmhCO0FBbzNCWTtFQUNJO0FBbDNCaEI7QUFpM0JZO0VBQ0k7QUEvMkJoQjtBQTgyQlk7RUFDSTtBQTUyQmhCO0FBMjJCWTtFQUNJO0FBejJCaEI7QUF3MkJZO0VBQ0k7QUF0MkJoQjtBQXEyQlk7RUFDSTtBQW4yQmhCO0FBazJCWTtFQUNJO0FBaDJCaEI7QUErMUJZO0VBQ0k7QUE3MUJoQjtBQTQxQlk7RUFDSTtBQTExQmhCO0FBeTFCWTtFQUNJO0FBdjFCaEI7QUFzMUJZO0VBQ0k7QUFwMUJoQjtBQW0xQlk7RUFDSTtBQWoxQmhCO0FBZzFCWTtFQUNJO0FBOTBCaEI7QUE2MEJZO0VBQ0k7QUEzMEJoQjtBQTAwQlk7RUFDSTtBQXgwQmhCO0FBdTBCWTtFQUNJO0FBcjBCaEI7QUFnM0J3QjtFQUNJO0FBOTJCNUI7QUFpMEJZO0VBQ0k7QUE5ekJoQjtBQTZ6Qlk7RUFDSTtBQTN6QmhCO0FBMHpCWTtFQUNJO0FBeHpCaEI7QUF1ekJZO0VBQ0k7QUFyekJoQjtBQW96Qlk7RUFDSTtBQWx6QmhCO0FBaXpCWTtFQUNJO0FBL3lCaEI7QUE4eUJZO0VBQ0k7QUE1eUJoQjtBQTJ5Qlk7RUFDSTtBQXp5QmhCO0FBd3lCWTtFQUNJO0FBdHlCaEI7QUFxeUJZO0VBQ0k7QUFueUJoQjtBQWt5Qlk7RUFDSTtBQWh5QmhCO0FBK3hCWTtFQUNJO0FBN3hCaEI7QUE0eEJZO0VBQ0k7QUExeEJoQjtBQXl4Qlk7RUFDSTtBQXZ4QmhCO0FBc3hCWTtFQUNJO0FBcHhCaEI7QUFteEJZO0VBQ0k7QUFqeEJoQjtBQWd4Qlk7RUFDSTtBQTl3QmhCO0FBNndCWTtFQUNJO0FBM3dCaEI7QUEwd0JZO0VBQ0k7QUF4d0JoQjtBQXV3Qlk7RUFDSTtBQXJ3QmhCO0FBb3dCWTtFQUNJO0FBbHdCaEI7QUFpd0JZO0VBQ0k7QUEvdkJoQjtBQTh2Qlk7RUFDSTtBQTV2QmhCO0FBMnZCWTtFQUNJO0FBenZCaEI7QUF3dkJZO0VBQ0k7QUF0dkJoQjtBQXF2Qlk7RUFDSTtBQW52QmhCO0FBa3ZCWTtFQUNJO0FBaHZCaEI7QUErdUJZO0VBQ0k7QUE3dUJoQjtBQTR1Qlk7RUFDSTtBQTF1QmhCO0FBeXVCWTtFQUNJO0FBdnVCaEI7QUFzdUJZO0VBQ0k7QUFwdUJoQjtBQW11Qlk7RUFDSTtBQWp1QmhCO0FBZ3VCWTtFQUNJO0FBOXRCaEI7QUE2dEJZO0VBQ0k7QUEzdEJoQjtBQTB0Qlk7RUFDSTtBQXh0QmhCO0FBdXRCWTtFQUNJO0FBcnRCaEI7QUFvdEJZO0VBQ0k7QUFsdEJoQjtBQWl0Qlk7RUFDSTtBQS9zQmhCO0FBOHNCWTtFQUNJO0FBNXNCaEI7QUEyc0JZO0VBQ0k7QUF6c0JoQjtBQXdzQlk7RUFDSTtBQXRzQmhCO0FBcXNCWTtFQUNJO0FBbnNCaEI7QUFrc0JZO0VBQ0k7QUFoc0JoQjtBQStyQlk7RUFDSTtBQTdyQmhCO0FBNHJCWTtFQUNJO0FBMXJCaEI7QUF5ckJZO0VBQ0k7QUF2ckJoQjtBQXNyQlk7RUFDSTtBQXByQmhCO0FBbXJCWTtFQUNJO0FBanJCaEI7QUFnckJZO0VBQ0k7QUE5cUJoQjtBQTZxQlk7RUFDSTtBQTNxQmhCO0FBMHFCWTtFQUNJO0FBeHFCaEI7QUF1cUJZO0VBQ0k7QUFycUJoQjtBQW9xQlk7RUFDSTtBQWxxQmhCO0FBaXFCWTtFQUNJO0FBL3BCaEI7QUE4cEJZO0VBQ0k7QUE1cEJoQjtBQTJwQlk7RUFDSTtBQXpwQmhCO0FBd3BCWTtFQUNJO0FBdHBCaEI7QUFxcEJZO0VBQ0k7QUFucEJoQjtBQWtwQlk7RUFDSTtBQWhwQmhCO0FBK29CWTtFQUNJO0FBN29CaEI7QUE0b0JZO0VBQ0k7QUExb0JoQjtBQXlvQlk7RUFDSTtBQXZvQmhCLEM7QUN4TEE7RUFDSTtFQUNBO0FBeExKO0FBMExBO0VBQ0k7RUFDQTtBQXZMSjtBQXlMQTtFQUNJO0VBQ0E7QUF0TEosQzs7QUNrSEE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQ21EQTtFQUNJO0VBQ0E7QUFsTUo7QUFvTUE7RUFDSTtFQUNBO0FBak1KO0FBbU1BO0VBQ0k7RUFDQTtBQWhNSixDOztBQ2tjQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBOzs7QUFJQTtJQUNBO0FBQ0E7O0FDdE5BO0VBQ0k7RUFDQTtBQXpRSjtBQTJRQTtFQUNJO0VBQ0E7QUF4UUo7QUEwUUE7RUFDSTtFQUNBO0FBdlFKLEM7QUNtR0E7RUFDSTtFQUNBO0FBL0dKO0FBaUhBO0VBQ0k7RUFDQTtBQTlHSjtBQWdIQTtFQUNJO0VBQ0E7QUE3R0osQztBQ3dYQTtFQUNJO0VBQ0E7QUFwWUo7QUFzWUE7RUFDSTtFQUNBO0FBbllKO0FBcVlBO0VBQ0k7QUFsWUosQztBQzJhQTtFQUNJO0VBQ0E7QUF0Yko7QUF3YkE7RUFDSTtFQUNBO0FBcmJKO0FBdWJBO0VBQ0k7RUFDQTtBQXBiSixDO0FDc3VCQTtFQUNJO0VBQ0E7QUFsdkJKO0FBb3ZCQTtFQUNJO0VBQ0E7QUFqdkJKO0FBbXZCQTtFQUNJO0VBQ0E7QUFodkJKLEM7QUNrR0E7RUFDSTtFQUNBO0FBOUdKO0FBZ0hBO0VBQ0k7RUFDQTtBQTdHSjtBQStHQTtFQUNJO0VBQ0E7QUE1R0osQztBQ2cvQlk7RUFDSTtBQTUvQmhCO0FBMi9CWTtFQUNJO0FBei9CaEI7QUF3L0JZO0VBQ0k7QUF0L0JoQjtBQXEvQlk7RUFDSTtBQW4vQmhCO0FBay9CWTtFQUNJO0FBaC9CaEI7QUErK0JZO0VBQ0k7QUE3K0JoQjtBQTQrQlk7RUFDSTtBQTErQmhCO0FBeStCWTtFQUNJO0FBditCaEI7QUFzK0JZO0VBQ0k7QUFwK0JoQjtBQW0rQlk7RUFDSTtBQWorQmhCO0FBZytCWTtFQUNJO0FBOTlCaEI7QUE2OUJZO0VBQ0k7QUEzOUJoQjtBQTA5Qlk7RUFDSTtBQXg5QmhCO0FBdTlCWTtFQUNJO0FBcjlCaEI7QUFvOUJZO0VBQ0k7QUFsOUJoQjtBQWk5Qlk7RUFDSTtBQS84QmhCO0FBODhCWTtFQUNJO0FBNThCaEI7QUEyOEJZO0VBQ0k7QUF6OEJoQjtBQXc4Qlk7RUFDSTtBQXQ4QmhCO0FBcThCWTtFQUNJO0FBbjhCaEI7QUFrOEJZO0VBQ0k7QUFoOEJoQjtBQSs3Qlk7RUFDSTtBQTc3QmhCO0FBNDdCWTtFQUNJO0FBMTdCaEI7QUF5N0JZO0VBQ0k7QUF2N0JoQjtBQXM3Qlk7RUFDSTtBQXA3QmhCO0FBbTdCWTtFQUNJO0FBajdCaEI7QUFnN0JZO0VBQ0k7QUE5NkJoQjtBQTY2Qlk7RUFDSTtBQTM2QmhCO0FBMDZCWTtFQUNJO0FBeDZCaEI7QUF1NkJZO0VBQ0k7QUFyNkJoQjtBQW82Qlk7RUFDSTtBQWw2QmhCO0FBaTZCWTtFQUNJO0FBLzVCaEI7QUE4NUJZO0VBQ0k7QUE1NUJoQjtBQTI1Qlk7RUFDSTtBQXo1QmhCO0FBdzVCWTtFQUNJO0FBdDVCaEI7QUFxNUJZO0VBQ0k7QUFuNUJoQjtBQWs1Qlk7RUFDSTtBQWg1QmhCO0FBKzRCWTtFQUNJO0FBNzRCaEI7QUE0NEJZO0VBQ0k7QUExNEJoQjtBQXk0Qlk7RUFDSTtBQXY0QmhCO0FBczRCWTtFQUNJO0FBcDRCaEI7QUFtNEJZO0VBQ0k7QUFqNEJoQjtBQWc0Qlk7RUFDSTtBQTkzQmhCO0FBNjNCWTtFQUNJO0FBMzNCaEI7QUEwM0JZO0VBQ0k7QUF4M0JoQjtBQXUzQlk7RUFDSTtBQXIzQmhCO0FBbzNCWTtFQUNJO0FBbDNCaEI7QUFpM0JZO0VBQ0k7QUEvMkJoQjtBQTgyQlk7RUFDSTtBQTUyQmhCO0FBMjJCWTtFQUNJO0FBejJCaEI7QUF3MkJZO0VBQ0k7QUF0MkJoQjtBQXEyQlk7RUFDSTtBQW4yQmhCO0FBazJCWTtFQUNJO0FBaDJCaEI7QUErMUJZO0VBQ0k7QUE3MUJoQjtBQTQxQlk7RUFDSTtBQTExQmhCO0FBeTFCWTtFQUNJO0FBdjFCaEI7QUFzMUJZO0VBQ0k7QUFwMUJoQjtBQW0xQlk7RUFDSTtBQWoxQmhCO0FBZzFCWTtFQUNJO0FBOTBCaEI7QUE2MEJZO0VBQ0k7QUEzMEJoQjtBQTAwQlk7RUFDSTtBQXgwQmhCO0FBdTBCWTtFQUNJO0FBcjBCaEI7QUFvMEJZO0VBQ0k7QUFsMEJoQjtBQWkwQlk7RUFDSTtBQS96QmhCO0FBOHpCWTtFQUNJO0FBNXpCaEI7QUEyekJZO0VBQ0k7QUF6ekJoQjtBQXd6Qlk7RUFDSTtBQXR6QmhCO0FBcXpCWTtFQUNJO0FBbnpCaEI7QUFrekJZO0VBQ0k7QUFoekJoQjtBQSt5Qlk7RUFDSTtBQTd5QmhCO0FBNHlCWTtFQUNJO0FBMXlCaEI7QUF5eUJZO0VBQ0k7QUF2eUJoQjtBQXN5Qlk7RUFDSTtBQXB5QmhCO0FBbXlCWTtFQUNJO0FBanlCaEI7QUFneUJZO0VBQ0k7QUE5eEJoQjtBQTZ4Qlk7RUFDSTtBQTN4QmhCO0FBMHhCWTtFQUNJO0FBeHhCaEI7QUF1eEJZO0VBQ0k7QUFyeEJoQjtBQW94Qlk7RUFDSTtBQWx4QmhCO0FBaXhCWTtFQUNJO0FBL3dCaEI7QUE4d0JZO0VBQ0k7QUE1d0JoQjtBQTJ3Qlk7RUFDSTtBQXp3QmhCO0FBd3dCWTtFQUNJO0FBdHdCaEI7QUFxd0JZO0VBQ0k7QUFud0JoQjtBQWt3Qlk7RUFDSTtBQWh3QmhCO0FBK3ZCWTtFQUNJO0FBN3ZCaEI7QUE0dkJZO0VBQ0k7QUExdkJoQjtBQXl2Qlk7RUFDSTtBQXZ2QmhCO0FBc3ZCWTtFQUNJO0FBcHZCaEI7QUFtdkJZO0VBQ0k7QUFqdkJoQjtBQWd2Qlk7RUFDSTtBQTl1QmhCO0FBNnVCWTtFQUNJO0FBM3VCaEI7QUEwdUJZO0VBQ0k7QUF4dUJoQjtBQXV1Qlk7RUFDSTtBQXJ1QmhCO0FBb3VCWTtFQUNJO0FBbHVCaEI7QUFpdUJZO0VBQ0k7QUEvdEJoQjtBQTh0Qlk7RUFDSTtBQTV0QmhCO0FBMnRCWTtFQUNJO0FBenRCaEI7QUF3dEJZO0VBQ0k7QUF0dEJoQjtBQXF0Qlk7RUFDSTtBQW50QmhCO0FBa3RCWTtFQUNJO0FBaHRCaEI7QUErc0JZO0VBQ0k7QUE3c0JoQjtBQTRzQlk7RUFDSTtBQTFzQmhCO0FBeXNCWTtFQUNJO0FBdnNCaEI7QUFzc0JZO0VBQ0k7QUFwc0JoQjtBQW1zQlk7RUFDSTtBQWpzQmhCO0FBZ3NCWTtFQUNJO0FBOXJCaEI7QUE2ckJZO0VBQ0k7QUEzckJoQjtBQTByQlk7RUFDSTtBQXhyQmhCO0FBdXJCWTtFQUNJO0FBcnJCaEI7QUFvckJZO0VBQ0k7QUFsckJoQjtBQWlyQlk7RUFDSTtBQS9xQmhCO0FBOHFCWTtFQUNJO0FBNXFCaEI7QUEycUJZO0VBQ0k7QUF6cUJoQjtBQXdxQlk7RUFDSTtBQXRxQmhCO0FBcXFCWTtFQUNJO0FBbnFCaEI7QUFrcUJZO0VBQ0k7QUFocUJoQjtBQStwQlk7RUFDSTtBQTdwQmhCO0FBNHBCWTtFQUNJO0FBMXBCaEI7QUF5cEJZO0VBQ0k7QUF2cEJoQjtBQXNwQlk7RUFDSTtBQXBwQmhCO0FBbXBCWTtFQUNJO0FBanBCaEI7QUFncEJZO0VBQ0k7QUE5b0JoQjtBQTZvQlk7RUFDSTtBQTNvQmhCO0FBMG9CWTtFQUNJO0FBeG9CaEI7QUF1b0JZO0VBQ0k7QUFyb0JoQjtBQW9vQlk7RUFDSTtBQWxvQmhCO0FBaW9CWTtFQUNJO0FBL25CaEI7QUE4bkJZO0VBQ0k7QUE1bkJoQjtBQTJuQlk7RUFDSTtBQXpuQmhCO0FBeXJCd0I7RUFDSTtBQXZyQjVCLEM7QUM2VFk7RUFDSTtBQXBzQmhCO0FBbXNCWTtFQUNJO0FBanNCaEI7QUFnc0JZO0VBQ0k7QUE5ckJoQjtBQTZyQlk7RUFDSTtBQTNyQmhCO0FBMHJCWTtFQUNJO0FBeHJCaEI7QUF1ckJZO0VBQ0k7QUFyckJoQjtBQW9yQlk7RUFDSTtBQWxyQmhCO0FBaXJCWTtFQUNJO0FBL3FCaEI7QUE4cUJZO0VBQ0k7QUE1cUJoQjtBQTJxQlk7RUFDSTtBQXpxQmhCO0FBd3FCWTtFQUNJO0FBdHFCaEI7QUFxcUJZO0VBQ0k7QUFucUJoQjtBQWtxQlk7RUFDSTtBQWhxQmhCO0FBK3BCWTtFQUNJO0FBN3BCaEI7QUE0cEJZO0VBQ0k7QUExcEJoQjtBQXlwQlk7RUFDSTtBQXZwQmhCO0FBc3BCWTtFQUNJO0FBcHBCaEI7QUFtcEJZO0VBQ0k7QUFqcEJoQjtBQWdwQlk7RUFDSTtBQTlvQmhCO0FBNm9CWTtFQUNJO0FBM29CaEI7QUEwb0JZO0VBQ0k7QUF4b0JoQjtBQXVvQlk7RUFDSTtBQXJvQmhCO0FBb29CWTtFQUNJO0FBbG9CaEI7QUFpb0JZO0VBQ0k7QUEvbkJoQjtBQThuQlk7RUFDSTtBQTVuQmhCO0FBMm5CWTtFQUNJO0FBem5CaEI7QUF3bkJZO0VBQ0k7QUF0bkJoQjtBQXFuQlk7RUFDSTtBQW5uQmhCO0FBa25CWTtFQUNJO0FBaG5CaEI7QUErbUJZO0VBQ0k7QUE3bUJoQjtBQTRtQlk7RUFDSTtBQTFtQmhCO0FBeW1CWTtFQUNJO0FBdm1CaEI7QUFzbUJZO0VBQ0k7QUFwbUJoQjtBQW1tQlk7RUFDSTtBQWptQmhCO0FBZ21CWTtFQUNJO0FBOWxCaEI7QUE2bEJZO0VBQ0k7QUEzbEJoQjtBQTBsQlk7RUFDSTtBQXhsQmhCO0FBdWxCWTtFQUNJO0FBcmxCaEI7QUFvbEJZO0VBQ0k7QUFsbEJoQjtBQWlsQlk7RUFDSTtBQS9rQmhCO0FBOGtCWTtFQUNJO0FBNWtCaEI7QUEya0JZO0VBQ0k7QUF6a0JoQjtBQXdrQlk7RUFDSTtBQXRrQmhCO0FBcWtCWTtFQUNJO0FBbmtCaEI7QUFra0JZO0VBQ0k7QUFoa0JoQjtBQStqQlk7RUFDSTtBQTdqQmhCO0FBNGpCWTtFQUNJO0FBMWpCaEI7QUF5akJZO0VBQ0k7QUF2akJoQjtBQXNqQlk7RUFDSTtBQXBqQmhCO0FBbWpCWTtFQUNJO0FBampCaEI7QUFnakJZO0VBQ0k7QUE5aUJoQjtBQTZpQlk7RUFDSTtBQTNpQmhCO0FBMGlCWTtFQUNJO0FBeGlCaEI7QUF1aUJZO0VBQ0k7QUFyaUJoQjtBQW9pQlk7RUFDSTtBQWxpQmhCO0FBaWlCWTtFQUNJO0FBL2hCaEI7QUE4aEJZO0VBQ0k7QUE1aEJoQjtBQTJoQlk7RUFDSTtBQXpoQmhCO0FBd2hCWTtFQUNJO0FBdGhCaEI7QUFxaEJZO0VBQ0k7QUFuaEJoQjtBQWtoQlk7RUFDSTtBQWhoQmhCO0FBK2dCWTtFQUNJO0FBN2dCaEI7QUE0Z0JZO0VBQ0k7QUExZ0JoQjtBQXlnQlk7RUFDSTtBQXZnQmhCO0FBc2dCWTtFQUNJO0FBcGdCaEI7QUFtZ0JZO0VBQ0k7QUFqZ0JoQjtBQWdnQlk7RUFDSTtBQTlmaEI7QUE2Zlk7RUFDSTtBQTNmaEI7QUEwZlk7RUFDSTtBQXhmaEI7QUF1Zlk7RUFDSTtBQXJmaEI7QUFvZlk7RUFDSTtBQWxmaEI7QUFpZlk7RUFDSTtBQS9laEI7QUE4ZVk7RUFDSTtBQTVlaEI7QUEyZVk7RUFDSTtBQXplaEI7QUF3ZVk7RUFDSTtBQXRlaEI7QUFxZVk7RUFDSTtBQW5laEI7QUFrZVk7RUFDSTtBQWhlaEI7QUErZFk7RUFDSTtBQTdkaEI7QUE0ZFk7RUFDSTtBQTFkaEI7QUF5ZFk7RUFDSTtBQXZkaEI7QUFzZFk7RUFDSTtBQXBkaEI7QUFtZFk7RUFDSTtBQWpkaEI7QUFnZFk7RUFDSTtBQTljaEI7QUE2Y1k7RUFDSTtBQTNjaEI7QUEwY1k7RUFDSTtBQXhjaEI7QUF1Y1k7RUFDSTtBQXJjaEI7QUFvY1k7RUFDSTtBQWxjaEI7QUFpY1k7RUFDSTtBQS9iaEI7QUE4Ylk7RUFDSTtBQTViaEI7QUEyYlk7RUFDSTtBQXpiaEI7QUF3Ylk7RUFDSTtBQXRiaEI7QUFxYlk7RUFDSTtBQW5iaEI7QUFrYlk7RUFDSTtBQWhiaEI7QUErYVk7RUFDSTtBQTdhaEI7QUE0YVk7RUFDSTtBQTFhaEI7QUF5YVk7RUFDSTtBQXZhaEI7QUFzYVk7RUFDSTtBQXBhaEI7QUFtYVk7RUFDSTtBQWphaEI7QUFnYVk7RUFDSTtBQTlaaEI7QUE2Wlk7RUFDSTtBQTNaaEI7QUEwWlk7RUFDSTtBQXhaaEI7QUF1Wlk7RUFDSTtBQXJaaEI7QUFvWlk7RUFDSTtBQWxaaEI7QUFpWlk7RUFDSTtBQS9ZaEI7QUE4WVk7RUFDSTtBQTVZaEI7QUEyWVk7RUFDSTtBQXpZaEI7QUF3WVk7RUFDSTtBQXRZaEI7QUFxWVk7RUFDSTtBQW5ZaEI7QUFrWVk7RUFDSTtBQWhZaEI7QUErWFk7RUFDSTtBQTdYaEI7QUE0WFk7RUFDSTtBQTFYaEI7QUF5WFk7RUFDSTtBQXZYaEI7QUFzWFk7RUFDSTtBQXBYaEI7QUFtWFk7RUFDSTtBQWpYaEI7QUFnWFk7RUFDSTtBQTlXaEI7QUE2V1k7RUFDSTtBQTNXaEI7QUEwV1k7RUFDSTtBQXhXaEI7QUF1V1k7RUFDSTtBQXJXaEI7QUFvV1k7RUFDSTtBQWxXaEI7QUFpV1k7RUFDSTtBQS9WaEI7QUE4Vlk7RUFDSTtBQTVWaEI7QUEyVlk7RUFDSTtBQXpWaEI7QUF3Vlk7RUFDSTtBQXRWaEI7QUFxVlk7RUFDSTtBQW5WaEI7QUFrVlk7RUFDSTtBQWhWaEI7QUErVVk7RUFDSTtBQTdVaEI7QUE0VVk7RUFDSTtBQTFVaEI7QUF5VVk7RUFDSTtBQXZVaEI7QUFzVVk7RUFDSTtBQXBVaEI7QUFvWXdCO0VBQ0k7QUFsWTVCLEM7QUMwR0E7RUFDSTtFQUNBO0FBOWVKO0FBZ2ZBO0VBQ0k7RUFDQTtBQTdlSjtBQStlQTtFQUNJO0VBQ0E7QUE1ZUosQzs7QUMwSkE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBO0FBQ0E7SUFDQTtBQUNBOztBQ0xBO0VBQ0k7RUFDQTtBQXJMSjtBQXVMQTtFQUNJO0VBQ0E7QUFwTEo7QUFzTEE7RUFDSTtFQUNBO0FBbkxKLEM7QUNrSkE7RUFDSTtBQTlKSixDOztBQ3FRQTtJQUNBO0lBQ0E7SUFDQTt5Q0FDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7eUNBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtBQUNBO0FBRUE7OztJQUdBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtPQUFBO1FBQUE7WUFBQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTs7O0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7O0lBRUE7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7QUFDQTs7QUFFQTtBQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7QUFDQTtBQUVBOztJQUVBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtBQUNBO0FBRUE7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBOzs7SUFHQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtBQUNBO1FBQ0E7QUFDQTtBQUNBOzs7QUN0V0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtBQUNBOzs7QUNyQkE7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7SUFFQTtBQUNBOzs7QUMvR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztJQUVBO0FBQ0E7O0FDK0JBO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7QUF2RUo7QUF5RUE7RUFFSTtFQUNBO0VBQ0E7QUF2RUosQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL2Rpc3QvY3NzL2Jvb3RzdHJhcC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29kZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9wYy1ib290c3RyYXA0LWRhdGV0aW1lcGlja2VyL2J1aWxkL2Nzcy9ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXIuY3NzIiwid2VicGFjazovLy9WdWVTZWxlY3Qvc3JjL2Nzcy9nbG9iYWwvdmFyaWFibGVzLmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvZ2xvYmFsL2NvbXBvbmVudC5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL2dsb2JhbC9hbmltYXRpb25zLmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvZ2xvYmFsL3N0YXRlcy5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL21vZHVsZXMvZHJvcGRvd24tdG9nZ2xlLmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvbW9kdWxlcy9vcGVuLWluZGljYXRvci5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL21vZHVsZXMvY2xlYXIuY3NzIiwid2VicGFjazovLy9WdWVTZWxlY3Qvc3JjL2Nzcy9tb2R1bGVzL2Ryb3Bkb3duLW1lbnUuY3NzIiwid2VicGFjazovLy9WdWVTZWxlY3Qvc3JjL2Nzcy9tb2R1bGVzL2Ryb3Bkb3duLW9wdGlvbi5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL21vZHVsZXMvc2VsZWN0ZWQuY3NzIiwid2VicGFjazovLy9WdWVTZWxlY3Qvc3JjL2Nzcy9tb2R1bGVzL3NlYXJjaC1pbnB1dC5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL21vZHVsZXMvc3Bpbm5lci5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZS1zZWxlY3QvZGlzdC92dWUtc2VsZWN0LmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFuZHNvbnRhYmxlL2Rpc3QvaGFuZHNvbnRhYmxlLmZ1bGwuY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL2FwcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9fY3VzdG9tLWNvbnRyb2xzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvYXZhdGFyL19hdmF0YXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2NhbGVuZGFyL19jYWxlbmRhci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2NhcmQvX2NhcmQtaW1nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZHJvcGRvd24vX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZHJvcGRvd24vX2Ryb3Bkb3duLWZvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9kcm9wZG93bi9fZHJvcGRvd24tdGV4dC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2Zvcm0tY2hlY2tib3gvX2Zvcm0tY2hlY2tib3guc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9pbnB1dC1ncm91cC9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9mb3JtLWJ0bi1sYWJlbC1jb250cm9sL19mb3JtLWJ0bi1sYWJlbC1jb250cm9sLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZm9ybS1maWxlL19mb3JtLWZpbGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9mb3JtLWlucHV0L19mb3JtLWlucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZm9ybS1yYWRpby9fZm9ybS1yYWRpby5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2Zvcm0tcmF0aW5nL19mb3JtLXJhdGluZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2Zvcm0tc3BpbmJ1dHRvbi9fc3BpbmJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2Zvcm0tdGFncy9fZm9ybS10YWdzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvbWVkaWEvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvbW9kYWwvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL3BvcG92ZXIvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9zaWRlYmFyL19zaWRlYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvc2tlbGV0b24vX3NrZWxldG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvdGFibGUvX3RhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvdGltZS9fdGltZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL3RvYXN0L190b2FzdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL3RvYXN0L190b2FzdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvdG9hc3QvX3RvYXN0ZXItdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL3Rvb2x0aXAvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvaWNvbnMvX2ljb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvRmlsdGVySXRlbS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvUGFnZW5hdGlvbi52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvR3JpZFBhZ2UudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0lucHV0RXJyb3IudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0l0ZW1DYXRlZ29yeS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSXRlbVNwZWNpZmljcy52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSXRlbS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0VXNlckluR3JvdXAudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0FkZHJlc3NTZWFyY2gudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdENvdW50cnkudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0FkZHJlc3NDb250ZW50LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9UcmFja2luZ0NvZGVDb250ZW50LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TZWxlY3RJdGVtSHNjb2RlLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JdGVtQ29udGVudC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvQm94Q29udGVudC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0Q3VycmVuY3lJZC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5zdXJhbmNlVGFibGUudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdFByZWZlY3R1cmUudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdFVzZXJNYW5hZ2VyLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbnZlbnRvcnkudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0ludmVudG9yeUluZm8udnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1N0b3JlLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TdG9yZUluZm8udnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdEJhc2UudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0ZpbGVJbWFnZURyb3AudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdENvdW50cnlSZWdpb24udnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdEh0bWwudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1VzZXJMaXN0aW5nLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9NYXJ1bmFnZVRhYmxlLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9NYXJ1bmFnZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0VGF4VGFyZ2V0LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbnN1cmFuY2VDb250ZW50LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TZWxlY3RSZWdpc3RyYXRpb25OdW1iZXIudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1ZhdENvbnRlbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0ludm9pY2VDb250ZW50LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9Db3VyaWVyUGxhbi52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvQ291cmllckNvbnRlbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NoaXBwaW5nLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JdGVtQXR0cmlidXRlQ29udGVudC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2hpcHBpbmdUYWJsZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2hpcHBpbmdFY21zVGFibGUudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NoaXBwaW5nQ3JvYm9PcmRlci52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0VXNlck1hcnVuYWdlLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbnN1cmFuY2UudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9wYWdlcy9Vc2VyQXBwcm92YWwudnVlIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWUtbW9udGgtcGlja2VyL3NyYy9Nb250aFBpY2tlci52dWUiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZS1tb250aC1waWNrZXIvc3JjL01vbnRoUGlja2VySW5wdXQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0F1dGhNYXNrLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9Mb2FkTWFzay52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvTm90aWZpY2F0aW9ucy52dWUiXSwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBCb290c3RyYXAgdjQuNi4wIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKi9cblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInJvb3RcIjtcbkBpbXBvcnQgXCJyZWJvb3RcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwiaW1hZ2VzXCI7XG5AaW1wb3J0IFwiY29kZVwiO1xuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJmb3Jtc1wiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJ0cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcInRvYXN0c1wiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjYuMCAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG46cm9vdCB7XG4gIC0tYmx1ZTogIzAwN2JmZjtcbiAgLS1pbmRpZ286ICM2NjEwZjI7XG4gIC0tcHVycGxlOiAjNmY0MmMxO1xuICAtLXBpbms6ICNlODNlOGM7XG4gIC0tcmVkOiAjZGMzNTQ1O1xuICAtLW9yYW5nZTogI2ZkN2UxNDtcbiAgLS15ZWxsb3c6ICNmZmMxMDc7XG4gIC0tZ3JlZW46ICMyOGE3NDU7XG4gIC0tdGVhbDogIzIwYzk5NztcbiAgLS1jeWFuOiAjMTdhMmI4O1xuICAtLXdoaXRlOiAjZmZmO1xuICAtLWdyYXk6ICM2Yzc1N2Q7XG4gIC0tZ3JheS1kYXJrOiAjMzQzYTQwO1xuICAtLXByaW1hcnk6ICMwMDdiZmY7XG4gIC0tc2Vjb25kYXJ5OiAjNmM3NTdkO1xuICAtLXN1Y2Nlc3M6ICMyOGE3NDU7XG4gIC0taW5mbzogIzE3YTJiODtcbiAgLS13YXJuaW5nOiAjZmZjMTA3O1xuICAtLWRhbmdlcjogI2RjMzU0NTtcbiAgLS1saWdodDogI2Y4ZjlmYTtcbiAgLS1kYXJrOiAjMzQzYTQwO1xuICAtLWJyZWFrcG9pbnQteHM6IDA7XG4gIC0tYnJlYWtwb2ludC1zbTogNTc2cHg7XG4gIC0tYnJlYWtwb2ludC1tZDogNzY4cHg7XG4gIC0tYnJlYWtwb2ludC1sZzogOTkycHg7XG4gIC0tYnJlYWtwb2ludC14bDogMTIwMHB4O1xuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLS4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0uNWVtO1xufVxuXG5hIHtcbiAgY29sb3I6ICMwMDdiZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmE6aG92ZXIge1xuICBjb2xvcjogIzAwNTZiMztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxucHJlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbnN2ZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50O1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbmJ1dHRvbjpub3QoOmRpc2FibGVkKSxcblt0eXBlPVwiYnV0dG9uXCJdOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9XCJyZXNldFwiXTpub3QoOmRpc2FibGVkKSxcblt0eXBlPVwic3VibWl0XCJdOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiA2cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiA1LjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6IDQuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5ociB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogMC4yZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG59XG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC1pbmxpbmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubGlzdC1pbmxpbmUtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7XG59XG5cbi5pbWctZmx1aWQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAwLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbmNvZGUge1xuICBmb250LXNpemU6IDg3LjUlO1xuICBjb2xvcjogI2U4M2U4YztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG5hID4gY29kZSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5rYmQge1xuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xuICBmb250LXNpemU6IDg3LjUlO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuXG5rYmQga2JkIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbnByZSBjb2RlIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xufVxuXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAzNDBweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCxcbi5jb250YWluZXItc20sXG4uY29udGFpbmVyLW1kLFxuLmNvbnRhaW5lci1sZyxcbi5jb250YWluZXIteGwge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lciwgLmNvbnRhaW5lci1zbSB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lciwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lci1tZCB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRhaW5lciwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1sZyB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIsIC5jb250YWluZXItc20sIC5jb250YWluZXItbWQsIC5jb250YWluZXItbGcsIC5jb250YWluZXIteGwge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG5cbi5yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbn1cblxuLm5vLWd1dHRlcnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ubm8tZ3V0dGVycyA+IC5jb2wsXG4ubm8tZ3V0dGVycyA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uY29sLTEsIC5jb2wtMiwgLmNvbC0zLCAuY29sLTQsIC5jb2wtNSwgLmNvbC02LCAuY29sLTcsIC5jb2wtOCwgLmNvbC05LCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyLCAuY29sLFxuLmNvbC1hdXRvLCAuY29sLXNtLTEsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyLCAuY29sLXNtLFxuLmNvbC1zbS1hdXRvLCAuY29sLW1kLTEsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyLCAuY29sLW1kLFxuLmNvbC1tZC1hdXRvLCAuY29sLWxnLTEsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLTEwLCAuY29sLWxnLTExLCAuY29sLWxnLTEyLCAuY29sLWxnLFxuLmNvbC1sZy1hdXRvLCAuY29sLXhsLTEsIC5jb2wteGwtMiwgLmNvbC14bC0zLCAuY29sLXhsLTQsIC5jb2wteGwtNSwgLmNvbC14bC02LCAuY29sLXhsLTcsIC5jb2wteGwtOCwgLmNvbC14bC05LCAuY29sLXhsLTEwLCAuY29sLXhsLTExLCAuY29sLXhsLTEyLCAuY29sLXhsLFxuLmNvbC14bC1hdXRvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xufVxuXG4uY29sIHtcbiAgZmxleC1iYXNpczogMDtcbiAgZmxleC1ncm93OiAxO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5yb3ctY29scy0xID4gKiB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5yb3ctY29scy0yID4gKiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4ucm93LWNvbHMtMyA+ICoge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xufVxuXG4ucm93LWNvbHMtNCA+ICoge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLnJvdy1jb2xzLTUgPiAqIHtcbiAgZmxleDogMCAwIDIwJTtcbiAgbWF4LXdpZHRoOiAyMCU7XG59XG5cbi5yb3ctY29scy02ID4gKiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG59XG5cbi5jb2wtYXV0byB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uY29sLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICBtYXgtd2lkdGg6IDguMzMzMzMzJTtcbn1cblxuLmNvbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbn1cblxuLmNvbC0zIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5jb2wtNCB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG59XG5cbi5jb2wtNSB7XG4gIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICBtYXgtd2lkdGg6IDQxLjY2NjY2NyU7XG59XG5cbi5jb2wtNiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4uY29sLTcge1xuICBmbGV4OiAwIDAgNTguMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMzMlO1xufVxuXG4uY29sLTgge1xuICBmbGV4OiAwIDAgNjYuNjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NjclO1xufVxuXG4uY29sLTkge1xuICBmbGV4OiAwIDAgNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLmNvbC0xMCB7XG4gIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7XG59XG5cbi5jb2wtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA5MS42NjY2NjclO1xufVxuXG4uY29sLTEyIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm9yZGVyLWZpcnN0IHtcbiAgb3JkZXI6IC0xO1xufVxuXG4ub3JkZXItbGFzdCB7XG4gIG9yZGVyOiAxMztcbn1cblxuLm9yZGVyLTAge1xuICBvcmRlcjogMDtcbn1cblxuLm9yZGVyLTEge1xuICBvcmRlcjogMTtcbn1cblxuLm9yZGVyLTIge1xuICBvcmRlcjogMjtcbn1cblxuLm9yZGVyLTMge1xuICBvcmRlcjogMztcbn1cblxuLm9yZGVyLTQge1xuICBvcmRlcjogNDtcbn1cblxuLm9yZGVyLTUge1xuICBvcmRlcjogNTtcbn1cblxuLm9yZGVyLTYge1xuICBvcmRlcjogNjtcbn1cblxuLm9yZGVyLTcge1xuICBvcmRlcjogNztcbn1cblxuLm9yZGVyLTgge1xuICBvcmRlcjogODtcbn1cblxuLm9yZGVyLTkge1xuICBvcmRlcjogOTtcbn1cblxuLm9yZGVyLTEwIHtcbiAgb3JkZXI6IDEwO1xufVxuXG4ub3JkZXItMTEge1xuICBvcmRlcjogMTE7XG59XG5cbi5vcmRlci0xMiB7XG4gIG9yZGVyOiAxMjtcbn1cblxuLm9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbn1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjY3JTtcbn1cblxuLm9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLm9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG59XG5cbi5vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjclO1xufVxuXG4ub2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4ub2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG59XG5cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY3JTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wtc20ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMtc20tMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMtc20tMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLnJvdy1jb2xzLXNtLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLnJvdy1jb2xzLXNtLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5yb3ctY29scy1zbS01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAucm93LWNvbHMtc20tNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXNtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5jb2wtc20tNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjclO1xuICB9XG4gIC5jb2wtc20tNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLXNtLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1zbS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9yZGVyLXNtLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLm9yZGVyLXNtLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICAub3JkZXItc20tMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgLm9yZGVyLXNtLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5vcmRlci1zbS0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAub3JkZXItc20tMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm9yZGVyLXNtLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5vcmRlci1zbS01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICAub3JkZXItc20tNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgLm9yZGVyLXNtLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIC5vcmRlci1zbS04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICAub3JkZXItc20tOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgLm9yZGVyLXNtLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgLm9yZGVyLXNtLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgLm9yZGVyLXNtLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgLm9mZnNldC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAub2Zmc2V0LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm9mZnNldC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXNtLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtc20tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAub2Zmc2V0LXNtLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtc20tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1zbS05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5vZmZzZXQtc20tMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtc20tMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLW1kIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdy1jb2xzLW1kLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdy1jb2xzLW1kLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5yb3ctY29scy1tZC0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5yb3ctY29scy1tZC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucm93LWNvbHMtbWQtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnJvdy1jb2xzLW1kLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1tZC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLW1kLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1tZC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5vcmRlci1tZC1maXJzdCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5vcmRlci1tZC1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cbiAgLm9yZGVyLW1kLTAge1xuICAgIG9yZGVyOiAwO1xuICB9XG4gIC5vcmRlci1tZC0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAub3JkZXItbWQtMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLm9yZGVyLW1kLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5vcmRlci1tZC00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAub3JkZXItbWQtNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLm9yZGVyLW1kLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG4gIC5vcmRlci1tZC03IHtcbiAgICBvcmRlcjogNztcbiAgfVxuICAub3JkZXItbWQtOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cbiAgLm9yZGVyLW1kLTkge1xuICAgIG9yZGVyOiA5O1xuICB9XG4gIC5vcmRlci1tZC0xMCB7XG4gICAgb3JkZXI6IDEwO1xuICB9XG4gIC5vcmRlci1tZC0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG4gIC5vcmRlci1tZC0xMiB7XG4gICAgb3JkZXI6IDEyO1xuICB9XG4gIC5vZmZzZXQtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm9mZnNldC1tZC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5vZmZzZXQtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LW1kLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm9mZnNldC1tZC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LW1kLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtbWQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAub2Zmc2V0LW1kLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LW1kLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY3JTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbC1sZyB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1sZy0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1sZy0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucm93LWNvbHMtbGctMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbiAgfVxuICAucm93LWNvbHMtbGctNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLnJvdy1jb2xzLWxnLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5yb3ctY29scy1sZy02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjclO1xuICB9XG4gIC5jb2wtbGctYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wtbGctMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1sZy00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5jb2wtbGctNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjclO1xuICB9XG4gIC5jb2wtbGctOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLWxnLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjclO1xuICB9XG4gIC5jb2wtbGctMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAub3JkZXItbGctZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAub3JkZXItbGctbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1sZy0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItbGctMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLWxnLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1sZy0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItbGctNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLWxnLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1sZy02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItbGctNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLWxnLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1sZy05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItbGctMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICAub3JkZXItbGctMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICAub3JkZXItbGctMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtbGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAub2Zmc2V0LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1sZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5vZmZzZXQtbGctNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1sZy04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1sZy0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NyU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLXhsIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdy1jb2xzLXhsLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdy1jb2xzLXhsLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5yb3ctY29scy14bC0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5yb3ctY29scy14bC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucm93LWNvbHMteGwtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnJvdy1jb2xzLXhsLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC14bC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMlO1xuICB9XG4gIC5jb2wteGwtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjclO1xuICB9XG4gIC5jb2wteGwtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLXhsLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC14bC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5jb2wteGwtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5vcmRlci14bC1maXJzdCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5vcmRlci14bC1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cbiAgLm9yZGVyLXhsLTAge1xuICAgIG9yZGVyOiAwO1xuICB9XG4gIC5vcmRlci14bC0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAub3JkZXIteGwtMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLm9yZGVyLXhsLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5vcmRlci14bC00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAub3JkZXIteGwtNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLm9yZGVyLXhsLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG4gIC5vcmRlci14bC03IHtcbiAgICBvcmRlcjogNztcbiAgfVxuICAub3JkZXIteGwtOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cbiAgLm9yZGVyLXhsLTkge1xuICAgIG9yZGVyOiA5O1xuICB9XG4gIC5vcmRlci14bC0xMCB7XG4gICAgb3JkZXI6IDEwO1xuICB9XG4gIC5vcmRlci14bC0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG4gIC5vcmRlci14bC0xMiB7XG4gICAgb3JkZXI6IDEyO1xuICB9XG4gIC5vZmZzZXQteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm9mZnNldC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC14bC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXhsLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm9mZnNldC14bC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQteGwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAub2Zmc2V0LXhsLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXhsLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY3JTtcbiAgfVxufVxuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi50YWJsZSB0aCxcbi50YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4udGFibGUgdGhlYWQgdGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RlZTJlNjtcbn1cblxuLnRhYmxlIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2RlZTJlNjtcbn1cblxuLnRhYmxlLXNtIHRoLFxuLnRhYmxlLXNtIHRkIHtcbiAgcGFkZGluZzogMC4zcmVtO1xufVxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4udGFibGUtYm9yZGVyZWQgdGgsXG4udGFibGUtYm9yZGVyZWQgdGQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4udGFibGUtYm9yZGVyZWQgdGhlYWQgdGgsXG4udGFibGUtYm9yZGVyZWQgdGhlYWQgdGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHRoLFxuLnRhYmxlLWJvcmRlcmxlc3MgdGQsXG4udGFibGUtYm9yZGVybGVzcyB0aGVhZCB0aCxcbi50YWJsZS1ib3JkZXJsZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXI6IDA7XG59XG5cbi50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi50YWJsZS1wcmltYXJ5LFxuLnRhYmxlLXByaW1hcnkgPiB0aCxcbi50YWJsZS1wcmltYXJ5ID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjhkYWZmO1xufVxuXG4udGFibGUtcHJpbWFyeSB0aCxcbi50YWJsZS1wcmltYXJ5IHRkLFxuLnRhYmxlLXByaW1hcnkgdGhlYWQgdGgsXG4udGFibGUtcHJpbWFyeSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjN2FiYWZmO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWZjZGZmO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlmY2RmZjtcbn1cblxuLnRhYmxlLXNlY29uZGFyeSxcbi50YWJsZS1zZWNvbmRhcnkgPiB0aCxcbi50YWJsZS1zZWNvbmRhcnkgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmQ4ZGI7XG59XG5cbi50YWJsZS1zZWNvbmRhcnkgdGgsXG4udGFibGUtc2Vjb25kYXJ5IHRkLFxuLnRhYmxlLXNlY29uZGFyeSB0aGVhZCB0aCxcbi50YWJsZS1zZWNvbmRhcnkgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2IzYjdiYjtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYmNmO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOGNiY2Y7XG59XG5cbi50YWJsZS1zdWNjZXNzLFxuLnRhYmxlLXN1Y2Nlc3MgPiB0aCxcbi50YWJsZS1zdWNjZXNzID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzNlNmNiO1xufVxuXG4udGFibGUtc3VjY2VzcyB0aCxcbi50YWJsZS1zdWNjZXNzIHRkLFxuLnRhYmxlLXN1Y2Nlc3MgdGhlYWQgdGgsXG4udGFibGUtc3VjY2VzcyB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjOGZkMTllO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjFkZmJiO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IxZGZiYjtcbn1cblxuLnRhYmxlLWluZm8sXG4udGFibGUtaW5mbyA+IHRoLFxuLnRhYmxlLWluZm8gPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZWU1ZWI7XG59XG5cbi50YWJsZS1pbmZvIHRoLFxuLnRhYmxlLWluZm8gdGQsXG4udGFibGUtaW5mbyB0aGVhZCB0aCxcbi50YWJsZS1pbmZvIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICM4NmNmZGE7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYmRkZTU7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWJkZGU1O1xufVxuXG4udGFibGUtd2FybmluZyxcbi50YWJsZS13YXJuaW5nID4gdGgsXG4udGFibGUtd2FybmluZyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWViYTtcbn1cblxuLnRhYmxlLXdhcm5pbmcgdGgsXG4udGFibGUtd2FybmluZyB0ZCxcbi50YWJsZS13YXJuaW5nIHRoZWFkIHRoLFxuLnRhYmxlLXdhcm5pbmcgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZGY3ZTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZThhMTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmU4YTE7XG59XG5cbi50YWJsZS1kYW5nZXIsXG4udGFibGUtZGFuZ2VyID4gdGgsXG4udGFibGUtZGFuZ2VyID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVjNmNiO1xufVxuXG4udGFibGUtZGFuZ2VyIHRoLFxuLnRhYmxlLWRhbmdlciB0ZCxcbi50YWJsZS1kYW5nZXIgdGhlYWQgdGgsXG4udGFibGUtZGFuZ2VyIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICNlZDk2OWU7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxYjBiNztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFiMGI3O1xufVxuXG4udGFibGUtbGlnaHQsXG4udGFibGUtbGlnaHQgPiB0aCxcbi50YWJsZS1saWdodCA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZmRmZTtcbn1cblxuLnRhYmxlLWxpZ2h0IHRoLFxuLnRhYmxlLWxpZ2h0IHRkLFxuLnRhYmxlLWxpZ2h0IHRoZWFkIHRoLFxuLnRhYmxlLWxpZ2h0IHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICNmYmZjZmM7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2Y2O1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWxpZ2h0OmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLWxpZ2h0OmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2Y2O1xufVxuXG4udGFibGUtZGFyayxcbi50YWJsZS1kYXJrID4gdGgsXG4udGFibGUtZGFyayA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2YzhjYTtcbn1cblxuLnRhYmxlLWRhcmsgdGgsXG4udGFibGUtZGFyayB0ZCxcbi50YWJsZS1kYXJrIHRoZWFkIHRoLFxuLnRhYmxlLWRhcmsgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogIzk1OTk5Yztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I5YmJiZTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLWRhcms6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiOWJiYmU7XG59XG5cbi50YWJsZS1hY3RpdmUsXG4udGFibGUtYWN0aXZlID4gdGgsXG4udGFibGUtYWN0aXZlID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbn1cblxuLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XG4gIGJvcmRlci1jb2xvcjogIzQ1NGQ1NTtcbn1cblxuLnRhYmxlIC50aGVhZC1saWdodCB0aCB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG59XG5cbi50YWJsZS1kYXJrIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XG59XG5cbi50YWJsZS1kYXJrIHRoLFxuLnRhYmxlLWRhcmsgdGQsXG4udGFibGUtZGFyayB0aGVhZCB0aCB7XG4gIGJvcmRlci1jb2xvcjogIzQ1NGQ1NTtcbn1cblxuLnRhYmxlLWRhcmsudGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDA7XG59XG5cbi50YWJsZS1kYXJrLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG59XG5cbi50YWJsZS1kYXJrLnRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNzUpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUtc20ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlLXNtID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLW1kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICAudGFibGUtcmVzcG9uc2l2ZS1tZCA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS1sZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUtbGcgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXhsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICAudGFibGUtcmVzcG9uc2l2ZS14bCA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2w6Oi1tcy1leHBhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uZm9ybS1jb250cm9sOi1tb3otZm9jdXNyaW5nIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogMCAwIDAgIzQ5NTA1Nztcbn1cblxuLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICM4MGJkZmY7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZvcm0tY29udHJvbDpkaXNhYmxlZCwgLmZvcm0tY29udHJvbFtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBvcGFjaXR5OiAxO1xufVxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPVwidGltZVwiXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0uZm9ybS1jb250cm9sLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLmZvcm0tY29udHJvbCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2w6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogY2FsYygwLjM3NXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogY2FsYygwLjVyZW0gKyAxcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjVyZW0gKyAxcHgpO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjI1cmVtICsgMXB4KTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xufVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtc20sIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1sZyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIDJweCk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sW3NpemVdLCBzZWxlY3QuZm9ybS1jb250cm9sW211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xufVxuXG4uZm9ybS1yb3cgPiAuY29sLFxuLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xufVxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dFtkaXNhYmxlZF0gfiAuZm9ybS1jaGVjay1sYWJlbCxcbi5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnZhbGlkLWZlZWRiYWNrIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogODAlO1xuICBjb2xvcjogIzI4YTc0NTtcbn1cblxuLnZhbGlkLXRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogLjFyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQwLCAxNjcsIDY5LCAwLjkpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uZm9ybS1yb3cgPiAuY29sID4gLnZhbGlkLXRvb2x0aXAsXG4uZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSA+IC52YWxpZC10b29sdGlwIHtcbiAgbGVmdDogNXB4O1xufVxuXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtdG9vbHRpcCxcbi5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5pcy12YWxpZCB+IC52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMyOGE3NDUnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDp2YWxpZCwgdGV4dGFyZWEuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMi4zMTI1cmVtKTtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPSclMjMzNDNhNDAnIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2VcIikgcmlnaHQgMC43NXJlbSBjZW50ZXIvOHB4IDEwcHggbm8tcmVwZWF0LCAjZmZmIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMjhhNzQ1JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpIGNlbnRlciByaWdodCAxLjc1cmVtL2NhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIG5vLXJlcGVhdDtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6dmFsaWQ6Zm9jdXMsIC5jdXN0b20tc2VsZWN0LmlzLXZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogIzI4YTc0NTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC52YWxpZC10b29sdGlwLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogIzI4YTc0NTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzRjZTU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzRjZTU3O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZCB+IC5jdXN0b20tZmlsZS1sYWJlbCwgLmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDAsIDE2NywgNjksIDAuMjUpO1xufVxuXG4uaW52YWxpZC1mZWVkYmFjayB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi5pbnZhbGlkLXRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogLjFyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMCwgNTMsIDY5LCAwLjkpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uZm9ybS1yb3cgPiAuY29sID4gLmludmFsaWQtdG9vbHRpcCxcbi5mb3JtLXJvdyA+IFtjbGFzcyo9XCJjb2wtXCJdID4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnIHZpZXdCb3g9JzAgMCAxMiAxMiclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNkYzM1NDUnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZDpmb2N1cywgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1ZW0gKyAyLjMxMjVyZW0pO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCBuby1yZXBlYXQsICNmZmYgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnIHZpZXdCb3g9JzAgMCAxMiAxMiclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNkYzM1NDUnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVwiKSBjZW50ZXIgcmlnaHQgMS43NXJlbS9jYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBuby1yZXBlYXQ7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2U0NjA2ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0NjA2ZDtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQ6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XG59XG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mb3JtLWlubGluZSAuZm9ybS1jaGVjayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmZvcm0taW5saW5lIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5mb3JtLWlubGluZSAuaW5wdXQtZ3JvdXAsXG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLXNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLWNvbnRyb2wge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmJ0bjpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5idG46Zm9jdXMsIC5idG4uZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG5cbi5idG4uZGlzYWJsZWQsIC5idG46ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjY1O1xufVxuXG4uYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5idG4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG59XG5cbi5idG4tcHJpbWFyeTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2OWQ5O1xuICBib3JkZXItY29sb3I6ICMwMDYyY2M7XG59XG5cbi5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1wcmltYXJ5LmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDY5ZDk7XG4gIGJvcmRlci1jb2xvcjogIzAwNjJjYztcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMzgsIDE0MywgMjU1LCAwLjUpO1xufVxuXG4uYnRuLXByaW1hcnkuZGlzYWJsZWQsIC5idG4tcHJpbWFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG59XG5cbi5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjJjYztcbiAgYm9yZGVyLWNvbG9yOiAjMDA1Y2JmO1xufVxuXG4uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMzgsIDE0MywgMjU1LCAwLjUpO1xufVxuXG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5idG4tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1YTYyNjg7XG4gIGJvcmRlci1jb2xvcjogIzU0NWI2Mjtcbn1cblxuLmJ0bi1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5LmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1YTYyNjg7XG4gIGJvcmRlci1jb2xvcjogIzU0NWI2MjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTMwLCAxMzgsIDE0NSwgMC41KTtcbn1cblxuLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tc2Vjb25kYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cblxuLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1YjYyO1xuICBib3JkZXItY29sb3I6ICM0ZTU1NWI7XG59XG5cbi5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xufVxuXG4uYnRuLXN1Y2Nlc3Mge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NTtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xufVxuXG4uYnRuLXN1Y2Nlc3M6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxODgzODtcbiAgYm9yZGVyLWNvbG9yOiAjMWU3ZTM0O1xufVxuXG4uYnRuLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tc3VjY2Vzcy5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4ODM4O1xuICBib3JkZXItY29sb3I6ICMxZTdlMzQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDcyLCAxODAsIDk3LCAwLjUpO1xufVxuXG4uYnRuLXN1Y2Nlc3MuZGlzYWJsZWQsIC5idG4tc3VjY2VzczpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG59XG5cbi5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlN2UzNDtcbiAgYm9yZGVyLWNvbG9yOiAjMWM3NDMwO1xufVxuXG4uYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNzIsIDE4MCwgOTcsIDAuNSk7XG59XG5cbi5idG4taW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4O1xuICBib3JkZXItY29sb3I6ICMxN2EyYjg7XG59XG5cbi5idG4taW5mbzpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTM4NDk2O1xuICBib3JkZXItY29sb3I6ICMxMTdhOGI7XG59XG5cbi5idG4taW5mbzpmb2N1cywgLmJ0bi1pbmZvLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMzg0OTY7XG4gIGJvcmRlci1jb2xvcjogIzExN2E4YjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTgsIDE3NiwgMTk1LCAwLjUpO1xufVxuXG4uYnRuLWluZm8uZGlzYWJsZWQsIC5idG4taW5mbzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4O1xuICBib3JkZXItY29sb3I6ICMxN2EyYjg7XG59XG5cbi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzExN2E4YjtcbiAgYm9yZGVyLWNvbG9yOiAjMTA3MDdmO1xufVxuXG4uYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTgsIDE3NiwgMTk1LCAwLjUpO1xufVxuXG4uYnRuLXdhcm5pbmcge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xufVxuXG4uYnRuLXdhcm5pbmc6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwYTgwMDtcbiAgYm9yZGVyLWNvbG9yOiAjZDM5ZTAwO1xufVxuXG4uYnRuLXdhcm5pbmc6Zm9jdXMsIC5idG4td2FybmluZy5mb2N1cyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBhODAwO1xuICBib3JkZXItY29sb3I6ICNkMzllMDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMiwgMTcwLCAxMiwgMC41KTtcbn1cblxuLmJ0bi13YXJuaW5nLmRpc2FibGVkLCAuYnRuLXdhcm5pbmc6ZGlzYWJsZWQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xufVxuXG4uYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMzllMDA7XG4gIGJvcmRlci1jb2xvcjogI2M2OTUwMDtcbn1cblxuLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMiwgMTcwLCAxMiwgMC41KTtcbn1cblxuLmJ0bi1kYW5nZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uYnRuLWRhbmdlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzgyMzMzO1xuICBib3JkZXItY29sb3I6ICNiZDIxMzA7XG59XG5cbi5idG4tZGFuZ2VyOmZvY3VzLCAuYnRuLWRhbmdlci5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzgyMzMzO1xuICBib3JkZXItY29sb3I6ICNiZDIxMzA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNSwgODMsIDk3LCAwLjUpO1xufVxuXG4uYnRuLWRhbmdlci5kaXNhYmxlZCwgLmJ0bi1kYW5nZXI6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZDIxMzA7XG4gIGJvcmRlci1jb2xvcjogI2IyMWYyZDtcbn1cblxuLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyNSwgODMsIDk3LCAwLjUpO1xufVxuXG4uYnRuLWxpZ2h0IHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cblxuLmJ0bi1saWdodDpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlNmVhO1xuICBib3JkZXItY29sb3I6ICNkYWUwZTU7XG59XG5cbi5idG4tbGlnaHQ6Zm9jdXMsIC5idG4tbGlnaHQuZm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTZlYTtcbiAgYm9yZGVyLWNvbG9yOiAjZGFlMGU1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMTYsIDIxNywgMjE5LCAwLjUpO1xufVxuXG4uYnRuLWxpZ2h0LmRpc2FibGVkLCAuYnRuLWxpZ2h0OmRpc2FibGVkIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cblxuLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFlMGU1O1xuICBib3JkZXItY29sb3I6ICNkM2Q5ZGY7XG59XG5cbi5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMTYsIDIxNywgMjE5LCAwLjUpO1xufVxuXG4uYnRuLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xufVxuXG4uYnRuLWRhcms6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjcyYjtcbiAgYm9yZGVyLWNvbG9yOiAjMWQyMTI0O1xufVxuXG4uYnRuLWRhcms6Zm9jdXMsIC5idG4tZGFyay5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyNzJiO1xuICBib3JkZXItY29sb3I6ICMxZDIxMjQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgyLCA4OCwgOTMsIDAuNSk7XG59XG5cbi5idG4tZGFyay5kaXNhYmxlZCwgLmJ0bi1kYXJrOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XG4gIGJvcmRlci1jb2xvcjogIzM0M2E0MDtcbn1cblxuLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQyMTI0O1xuICBib3JkZXItY29sb3I6ICMxNzFhMWQ7XG59XG5cbi5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tZGFyay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4MiwgODgsIDkzLCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5LmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMDA3YmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDExNywgMTI1LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMjhhNzQ1O1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG59XG5cbi5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDAsIDE2NywgNjksIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc3VjY2VzczpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMjhhNzQ1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG59XG5cbi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWluZm8ge1xuICBjb2xvcjogIzE3YTJiODtcbiAgYm9yZGVyLWNvbG9yOiAjMTdhMmI4O1xufVxuXG4uYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4O1xuICBib3JkZXItY29sb3I6ICMxN2EyYjg7XG59XG5cbi5idG4tb3V0bGluZS1pbmZvOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mby5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzLCAxNjIsIDE4NCwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWluZm8uZGlzYWJsZWQsIC5idG4tb3V0bGluZS1pbmZvOmRpc2FibGVkIHtcbiAgY29sb3I6ICMxN2EyYjg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLWluZm8uZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjg7XG4gIGJvcmRlci1jb2xvcjogIzE3YTJiODtcbn1cblxuLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzLCAxNjIsIDE4NCwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXdhcm5pbmcge1xuICBjb2xvcjogI2ZmYzEwNztcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZy5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI1NSwgMTkzLCA3LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZy5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmYzEwNztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1kYW5nZXIge1xuICBjb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlci5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtZGFuZ2VyOmRpc2FibGVkIHtcbiAgY29sb3I6ICNkYzM1NDU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQge1xuICBjb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQ6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1saWdodC5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWxpZ2h0OmRpc2FibGVkIHtcbiAgY29sb3I6ICNmOGY5ZmE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbn1cblxuLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrIHtcbiAgY29sb3I6ICMzNDNhNDA7XG4gIGJvcmRlci1jb2xvcjogIzM0M2E0MDtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhcms6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xufVxuXG4uYnRuLW91dGxpbmUtZGFyazpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgNTgsIDY0LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtZGFyay5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhcms6ZGlzYWJsZWQge1xuICBjb2xvcjogIzM0M2E0MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtZGFyay5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xufVxuXG4uYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDU4LCA2NCwgMC41KTtcbn1cblxuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDdiZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJ0bi1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMwMDU2YjM7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnRuLWxpbms6Zm9jdXMsIC5idG4tbGluay5mb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnRuLWxpbms6ZGlzYWJsZWQsIC5idG4tbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJ0bi1sZywgLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJ0bi1ibG9jayArIC5idG4tYmxvY2sge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ0bi1ibG9jayxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0uYnRuLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5mYWRlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mYWRlIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5mYWRlOm5vdCguc2hvdykge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY29sbGFwc2U6bm90KC5zaG93KSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY29sbGFwc2luZyB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6IDEwcmVtO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgbWFyZ2luOiAwLjEyNXJlbSAwIDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5kcm9wZG93bi1tZW51LXNtLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLW1lbnUtc20tcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kcm9wZG93bi1tZW51LW1kLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLW1lbnUtbWQtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5kcm9wZG93bi1tZW51LWxnLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLW1lbnUtbGctcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZHJvcGRvd24tbWVudS14bC1sZWZ0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi1tZW51LXhsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG5cbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcHJpZ2h0IC5kcm9wZG93bi1tZW51IHtcbiAgdG9wOiAwO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtO1xufVxuXG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQ7XG59XG5cbi5kcm9wcmlnaHQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIHZlcnRpY2FsLWFsaWduOiAwO1xufVxuXG4uZHJvcGxlZnQgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuMTI1cmVtO1xufVxuXG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSB7XG4gIHZlcnRpY2FsLWFsaWduOiAwO1xufVxuXG4uZHJvcGRvd24tbWVudVt4LXBsYWNlbWVudF49XCJ0b3BcIl0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdLCAuZHJvcGRvd24tbWVudVt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlOWVjZWY7XG59XG5cbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1cmVtIDEuNXJlbTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uZHJvcGRvd24taXRlbTpob3ZlciwgLmRyb3Bkb3duLWl0ZW06Zm9jdXMge1xuICBjb2xvcjogIzE2MTgxYjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4uZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG59XG5cbi5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjI1cmVtIDEuNXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmJ0bi1ncm91cCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIge1xuICB6LWluZGV4OiAxO1xufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpmb2N1cywgLmJ0bi1ncm91cCA+IC5idG46YWN0aXZlLCAuYnRuLWdyb3VwID4gLmJ0bi5hY3RpdmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpmb2N1cyxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmFjdGl2ZSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYnRuLXRvb2xiYXIgLmlucHV0LWdyb3VwIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC41NjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNTYyNXJlbTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsXG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLFxuLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1zbSA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNzVyZW07XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLWdyb3VwLWxnID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuLFxuLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuLWdyb3VwID4gLmJ0biBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgd2lkdGg6IDElO1xuICBtaW4td2lkdGg6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5jdXN0b20tZmlsZSxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0ICsgLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0ICsgLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5jdXN0b20tZmlsZSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0ICsgLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0ICsgLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5jdXN0b20tZmlsZSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5jdXN0b20tZmlsZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgei1pbmRleDogMztcbn1cblxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gIHotaW5kZXg6IDQ7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmZvcm0tY29udHJvbDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4sXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG46Zm9jdXMsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG46Zm9jdXMge1xuICB6LWluZGV4OiAzO1xufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuICsgLmJ0bixcbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4sXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4gKyAuYnRuLFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn1cblxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIDJweCk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjc1cmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuYnRuLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgY29sb3ItYWRqdXN0OiBleGFjdDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzgwYmRmZjtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2Q3ZmY7XG4gIGJvcmRlci1jb2xvcjogI2IzZDdmZjtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0W2Rpc2FibGVkXSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCwgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dFtkaXNhYmxlZF0gfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IC0xLjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAjYWRiNWJkIHNvbGlkIDFweDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAtMS41cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlIC8gNTAlIDUwJSBuby1yZXBlYXQ7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzZmZmJyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0JyUzZSUzY3BhdGggc3Ryb2tlPSclMjNmZmYnIGQ9J00wIDJoNCcvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyM2ZmZicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6IDIuMjVyZW07XG59XG5cbi5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgbGVmdDogLTIuMjVyZW07XG4gIHdpZHRoOiAxLjc1cmVtO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG59XG5cbi5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICB0b3A6IGNhbGMoMC4yNXJlbSArIDJweCk7XG4gIGxlZnQ6IGNhbGMoLTIuMjVyZW0gKyAycHgpO1xuICB3aWR0aDogY2FsYygxcmVtIC0gNHB4KTtcbiAgaGVpZ2h0OiBjYWxjKDFyZW0gLSA0cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjc1cmVtKTtcbn1cblxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTIzLCAyNTUsIDAuNSk7XG59XG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIDJweCk7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDEuNzVyZW0gMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCBuby1yZXBlYXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5jdXN0b20tc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODBiZGZmO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG5cbi5jdXN0b20tc2VsZWN0OmZvY3VzOjotbXMtdmFsdWUge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmN1c3RvbS1zZWxlY3RbbXVsdGlwbGVdLCAuY3VzdG9tLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLmN1c3RvbS1zZWxlY3Q6ZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cblxuLmN1c3RvbS1zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY3VzdG9tLXNlbGVjdDotbW96LWZvY3VzcmluZyB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAwICM0OTUwNTc7XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIDJweCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0gKyAycHgpO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzgwYmRmZjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXRbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1maWxlLWlucHV0OmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0OmxhbmcoZW4pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgY29udGVudDogYXR0cihkYXRhLWJyb3dzZSk7XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIDJweCk7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1sZWZ0OiBpbmhlcml0O1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjVyZW0gMC4yNXJlbSAwO1xufVxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMS40cmVtO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmN1c3RvbS1yYW5nZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5jdXN0b20tcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG5cbi5jdXN0b20tcmFuZ2U6Zm9jdXM6Oi1tcy10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICBib3JkZXI6IDA7XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkN2ZmO1xufVxuXG4uY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2Q3ZmY7XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuXG4uY3VzdG9tLXJhbmdlOjotbXMtdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY3VzdG9tLXJhbmdlOjotbXMtdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZDdmZjtcbn1cblxuLmN1c3RvbS1yYW5nZTo6LW1zLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMC41cmVtO1xufVxuXG4uY3VzdG9tLXJhbmdlOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLXVwcGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuXG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGI1YmQ7XG59XG5cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjViZDtcbn1cblxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LW1vei1yYW5nZS10cmFjayB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LW1zLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjViZDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG59XG5cbi5uYXYtbGluazpob3ZlciwgLm5hdi1saW5rOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsge1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIsIC5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNlOWVjZWYgI2U5ZWNlZiAjZGVlMmU2O1xufVxuXG4ubmF2LXRhYnMgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbi5uYXYtdGFicyAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2ICNkZWUyZTYgI2ZmZjtcbn1cblxuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5uYXYtcGlsbHMgLm5hdi1saW5rIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi1waWxscyAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4ubmF2LWZpbGwgPiAubmF2LWxpbmssXG4ubmF2LWZpbGwgLm5hdi1pdGVtIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5hdi1qdXN0aWZpZWQgPiAubmF2LWxpbmssXG4ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0ge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRhYi1jb250ZW50ID4gLmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG59XG5cbi5uYXZiYXIgLmNvbnRhaW5lcixcbi5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhciAuY29udGFpbmVyLXNtLCAubmF2YmFyIC5jb250YWluZXItbWQsIC5uYXZiYXIgLmNvbnRhaW5lci1sZywgLm5hdmJhciAuY29udGFpbmVyLXhsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAwLjMxMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjMxMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogbm9uZTtcbn1cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLm5hdmJhci10b2dnbGVyOmhvdmVyLCAubmF2YmFyLXRvZ2dsZXI6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IDc1dmg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtc20ge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLW1kIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lcixcbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lcixcbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubmF2YmFyLWV4cGFuZC14bCB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lcixcbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5uYXZiYXItZXhwYW5kIHtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXIsXG4ubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci14bCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgZmxleC1iYXNpczogYXV0bztcbn1cblxuLm5hdmJhci1leHBhbmQgLm5hdmJhci10b2dnbGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG59XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLmFjdGl2ZSA+IC5uYXYtbGluayxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuYWN0aXZlID4gLm5hdi1saW5rLFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5zaG93LFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgyNTUsIDI1NSwgMjU1LCAwLjUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmNhcmQgPiBociB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5jYXJkID4gLmxpc3QtZ3JvdXAge1xuICBib3JkZXItdG9wOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xufVxuXG4uY2FyZCA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZCA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuLmNhcmQgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5jYXJkLWJvZHkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLTAuMzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY2FyZC1saW5rICsgLmNhcmQtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbn1cblxuLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpIDAgMDtcbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG59XG5cbi5jYXJkLWZvb3RlcjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xufVxuXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWRlY2sgLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtZGVjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICB9XG4gIC5jYXJkLWRlY2sgLmNhcmQge1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgfVxufVxuXG4uY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jYXJkLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XG4gICAgZmxleDogMSAwIDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZCArIC5jYXJkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaGVhZGVyIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLXRvcCxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tLFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxufVxuXG4uY2FyZC1jb2x1bW5zIC5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jYXJkLWNvbHVtbnMge1xuICAgIGNvbHVtbi1jb3VudDogMztcbiAgICBjb2x1bW4tZ2FwOiAxLjI1cmVtO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuICB9XG4gIC5jYXJkLWNvbHVtbnMgLmNhcmQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xufVxuXG4uYWNjb3JkaW9uID4gLmNhcmQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5hY2NvcmRpb24gPiAuY2FyZDpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5hY2NvcmRpb24gPiAuY2FyZCA+IC5jYXJkLWhlYWRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG59XG5cbi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG5cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgY29udGVudDogXCIvXCI7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogIzAwN2JmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbn1cblxuLnBhZ2UtbGluazpob3ZlciB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAjMDA1NmIzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cblxuLnBhZ2UtbGluazpmb2N1cyB7XG4gIHotaW5kZXg6IDM7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgei1pbmRleDogMztcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbn1cblxuLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuM3JlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zcmVtO1xufVxuXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjNyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjNyZW07XG59XG5cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWxpbmsge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4ycmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjJyZW07XG59XG5cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMnJlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC40ZW07XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5iYWRnZSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG5hLmJhZGdlOmhvdmVyLCBhLmJhZGdlOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYmFkZ2U6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHJlbTtcbn1cblxuLmJhZGdlLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbn1cblxuYS5iYWRnZS1wcmltYXJ5OmhvdmVyLCBhLmJhZGdlLXByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjJjYztcbn1cblxuYS5iYWRnZS1wcmltYXJ5OmZvY3VzLCBhLmJhZGdlLXByaW1hcnkuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmJhZGdlLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xufVxuXG5hLmJhZGdlLXNlY29uZGFyeTpob3ZlciwgYS5iYWRnZS1zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NWI2Mjtcbn1cblxuYS5iYWRnZS1zZWNvbmRhcnk6Zm9jdXMsIGEuYmFkZ2Utc2Vjb25kYXJ5LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcbn1cblxuLmJhZGdlLXN1Y2Nlc3Mge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NTtcbn1cblxuYS5iYWRnZS1zdWNjZXNzOmhvdmVyLCBhLmJhZGdlLXN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlN2UzNDtcbn1cblxuYS5iYWRnZS1zdWNjZXNzOmZvY3VzLCBhLmJhZGdlLXN1Y2Nlc3MuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC41KTtcbn1cblxuLmJhZGdlLWluZm8ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3YTJiODtcbn1cblxuYS5iYWRnZS1pbmZvOmhvdmVyLCBhLmJhZGdlLWluZm86Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzExN2E4Yjtcbn1cblxuYS5iYWRnZS1pbmZvOmZvY3VzLCBhLmJhZGdlLWluZm8uZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMywgMTYyLCAxODQsIDAuNSk7XG59XG5cbi5iYWRnZS13YXJuaW5nIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XG59XG5cbmEuYmFkZ2Utd2FybmluZzpob3ZlciwgYS5iYWRnZS13YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMzllMDA7XG59XG5cbmEuYmFkZ2Utd2FybmluZzpmb2N1cywgYS5iYWRnZS13YXJuaW5nLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XG59XG5cbi5iYWRnZS1kYW5nZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbn1cblxuYS5iYWRnZS1kYW5nZXI6aG92ZXIsIGEuYmFkZ2UtZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZDIxMzA7XG59XG5cbmEuYmFkZ2UtZGFuZ2VyOmZvY3VzLCBhLmJhZGdlLWRhbmdlci5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjUpO1xufVxuXG4uYmFkZ2UtbGlnaHQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbn1cblxuYS5iYWRnZS1saWdodDpob3ZlciwgYS5iYWRnZS1saWdodDpmb2N1cyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFlMGU1O1xufVxuXG5hLmJhZGdlLWxpZ2h0OmZvY3VzLCBhLmJhZGdlLWxpZ2h0LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjQ4LCAyNDksIDI1MCwgMC41KTtcbn1cblxuLmJhZGdlLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbn1cblxuYS5iYWRnZS1kYXJrOmhvdmVyLCBhLmJhZGdlLWRhcms6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkMjEyNDtcbn1cblxuYS5iYWRnZS1kYXJrOmZvY3VzLCBhLmJhZGdlLWRhcmsuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgNTgsIDY0LCAwLjUpO1xufVxuXG4uanVtYm90cm9uIHtcbiAgcGFkZGluZzogMnJlbSAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuanVtYm90cm9uIHtcbiAgICBwYWRkaW5nOiA0cmVtIDJyZW07XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uYWxlcnQtaGVhZGluZyB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDRyZW07XG59XG5cbi5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1wcmltYXJ5IHtcbiAgY29sb3I6ICMwMDQwODU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2U1ZmY7XG4gIGJvcmRlci1jb2xvcjogI2I4ZGFmZjtcbn1cblxuLmFsZXJ0LXByaW1hcnkgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjOWZjZGZmO1xufVxuXG4uYWxlcnQtcHJpbWFyeSAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMDAyNzUyO1xufVxuXG4uYWxlcnQtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICMzODNkNDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmUzZTU7XG4gIGJvcmRlci1jb2xvcjogI2Q2ZDhkYjtcbn1cblxuLmFsZXJ0LXNlY29uZGFyeSBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjOGNiY2Y7XG59XG5cbi5hbGVydC1zZWNvbmRhcnkgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzIwMjMyNjtcbn1cblxuLmFsZXJ0LXN1Y2Nlc3Mge1xuICBjb2xvcjogIzE1NTcyNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZWRkYTtcbiAgYm9yZGVyLWNvbG9yOiAjYzNlNmNiO1xufVxuXG4uYWxlcnQtc3VjY2VzcyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNiMWRmYmI7XG59XG5cbi5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMwYjJlMTM7XG59XG5cbi5hbGVydC1pbmZvIHtcbiAgY29sb3I6ICMwYzU0NjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMWVjZjE7XG4gIGJvcmRlci1jb2xvcjogI2JlZTVlYjtcbn1cblxuLmFsZXJ0LWluZm8gaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjYWJkZGU1O1xufVxuXG4uYWxlcnQtaW5mbyAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMDYyYzMzO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIGNvbG9yOiAjODU2NDA0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xuICBib3JkZXItY29sb3I6ICNmZmVlYmE7XG59XG5cbi5hbGVydC13YXJuaW5nIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZThhMTtcbn1cblxuLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzUzM2YwMztcbn1cblxuLmFsZXJ0LWRhbmdlciB7XG4gIGNvbG9yOiAjNzIxYzI0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhO1xuICBib3JkZXItY29sb3I6ICNmNWM2Y2I7XG59XG5cbi5hbGVydC1kYW5nZXIgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZjFiMGI3O1xufVxuXG4uYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM0OTEyMTc7XG59XG5cbi5hbGVydC1saWdodCB7XG4gIGNvbG9yOiAjODE4MTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXItY29sb3I6ICNmZGZkZmU7XG59XG5cbi5hbGVydC1saWdodCBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNlY2VjZjY7XG59XG5cbi5hbGVydC1saWdodCAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjNjg2ODY4O1xufVxuXG4uYWxlcnQtZGFyayB7XG4gIGNvbG9yOiAjMWIxZTIxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZkOGQ5O1xuICBib3JkZXItY29sb3I6ICNjNmM4Y2E7XG59XG5cbi5hbGVydC1kYXJrIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2I5YmJiZTtcbn1cblxuLmFsZXJ0LWRhcmsgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzA0MDUwNTtcbn1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDFyZW0gMDtcbiAgfVxuICB0byB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5wcm9ncmVzcy1iYXIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbSAxcmVtO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uOiAxcyBsaW5lYXIgaW5maW5pdGUgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmFjdGl2ZSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCwgLmxpc3QtZ3JvdXAtaXRlbTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbn1cblxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbn1cblxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgfVxufVxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5saXN0LWdyb3VwLWZsdXNoID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbn1cblxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkge1xuICBjb2xvcjogIzAwNDA4NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I4ZGFmZjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICMwMDQwODU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZmNkZmY7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0MDg1O1xuICBib3JkZXItY29sb3I6ICMwMDQwODU7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICMzODNkNDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmQ4ZGI7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M4Y2JjZjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4M2Q0MTtcbiAgYm9yZGVyLWNvbG9yOiAjMzgzZDQxO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzE1NTcyNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MzZTZjYjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICMxNTU3MjQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMWRmYmI7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU1NzI0O1xuICBib3JkZXItY29sb3I6ICMxNTU3MjQ7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0taW5mbyB7XG4gIGNvbG9yOiAjMGM1NDYwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmVlNWViO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzBjNTQ2MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiZGRlNTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzU0NjA7XG4gIGJvcmRlci1jb2xvcjogIzBjNTQ2MDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIHtcbiAgY29sb3I6ICM4NTY0MDQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmVlYmE7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjODU2NDA0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlOGExO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg1NjQwNDtcbiAgYm9yZGVyLWNvbG9yOiAjODU2NDA0O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlciB7XG4gIGNvbG9yOiAjNzIxYzI0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVjNmNiO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICM3MjFjMjQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWIwYjc7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3MjFjMjQ7XG4gIGJvcmRlci1jb2xvcjogIzcyMWMyNDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7XG4gIGNvbG9yOiAjODE4MTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZlO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjODE4MTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2Y2O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MTgxODI7XG4gIGJvcmRlci1jb2xvcjogIzgxODE4Mjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrIHtcbiAgY29sb3I6ICMxYjFlMjE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNmM4Y2E7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMWIxZTIxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWUyMTtcbiAgYm9yZGVyLWNvbG9yOiAjMWIxZTIxO1xufVxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwICNmZmY7XG4gIG9wYWNpdHk6IC41O1xufVxuXG4uY2xvc2U6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY2xvc2U6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsIC5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpmb2N1cyB7XG4gIG9wYWNpdHk6IC43NTtcbn1cblxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udG9hc3Qge1xuICBmbGV4LWJhc2lzOiAzNTBweDtcbiAgbWF4LXdpZHRoOiAzNTBweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC43NXJlbSByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi50b2FzdDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnRvYXN0LnNob3dpbmcge1xuICBvcGFjaXR5OiAxO1xufVxuXG4udG9hc3Quc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xufVxuXG4udG9hc3QuaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogMC43NXJlbTtcbn1cblxuLm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDUwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwLjVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4ubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDFyZW0pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWhlYWRlcixcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtZm9vdGVyIHtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtYm9keSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDFyZW0pO1xuICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA0MDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuXG4ubW9kYWwtYmFja2Ryb3AuZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5tb2RhbC1iYWNrZHJvcC5zaG93IHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xufVxuXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgbWFyZ2luOiAtMXJlbSAtMXJlbSAtMXJlbSBhdXRvO1xufVxuXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XG59XG5cbi5tb2RhbC1mb290ZXIgPiAqIHtcbiAgbWFyZ2luOiAwLjI1cmVtO1xufVxuXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luOiAxLjc1cmVtIGF1dG87XG4gIH1cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuICB9XG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG4gIH1cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcbiAgfVxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkOjpiZWZvcmUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgfVxuICAubW9kYWwtc20ge1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcbiAgfVxufVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnRvb2x0aXAuc2hvdyB7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLnRvb2x0aXAgLmFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAuOHJlbTtcbiAgaGVpZ2h0OiAwLjRyZW07XG59XG5cbi50b29sdGlwIC5hcnJvdzo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuXG4uYnMtdG9vbHRpcC10b3AsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgcGFkZGluZzogMC40cmVtIDA7XG59XG5cbi5icy10b29sdGlwLXRvcCAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIC5hcnJvdyB7XG4gIGJvdHRvbTogMDtcbn1cblxuLmJzLXRvb2x0aXAtdG9wIC5hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInRvcFwiXSAuYXJyb3c6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMC40cmVtIDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICMwMDA7XG59XG5cbi5icy10b29sdGlwLXJpZ2h0LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgcGFkZGluZzogMCAwLjRyZW07XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSAuYXJyb3cge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMC40cmVtO1xuICBoZWlnaHQ6IDAuOHJlbTtcbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwicmlnaHRcIl0gLmFycm93OjpiZWZvcmUge1xuICByaWdodDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRyZW0gMC40cmVtIDAuNHJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICMwMDA7XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICBwYWRkaW5nOiAwLjRyZW0gMDtcbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gLmFycm93IHtcbiAgdG9wOiAwO1xufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC5hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMC40cmVtIDAuNHJlbTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDtcbn1cblxuLmJzLXRvb2x0aXAtbGVmdCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgcGFkZGluZzogMCAwLjRyZW07XG59XG5cbi5icy10b29sdGlwLWxlZnQgLmFycm93LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gLmFycm93IHtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAwLjRyZW07XG4gIGhlaWdodDogMC44cmVtO1xufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IC5hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gLmFycm93OjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwIDAuNHJlbSAwLjRyZW07XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDAwO1xufVxuXG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDYwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAyNzZweDtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbi5wb3BvdmVyIC5hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luOiAwIDAuM3JlbTtcbn1cblxuLnBvcG92ZXIgLmFycm93OjpiZWZvcmUsIC5wb3BvdmVyIC5hcnJvdzo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuXG4uYnMtcG9wb3Zlci10b3AsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uYnMtcG9wb3Zlci10b3AgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdID4gLmFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xufVxuXG4uYnMtcG9wb3Zlci10b3AgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0gPiAuYXJyb3c6OmJlZm9yZSB7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdID4gLmFycm93OjphZnRlciB7XG4gIGJvdHRvbTogMXB4O1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcbn1cblxuLmJzLXBvcG92ZXItcmlnaHQsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuXG4uYnMtcG9wb3Zlci1yaWdodCA+IC5hcnJvdywgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSA+IC5hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwLjNyZW0gMDtcbn1cblxuLmJzLXBvcG92ZXItcmlnaHQgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSA+IC5hcnJvdzo6YWZ0ZXIge1xuICBsZWZ0OiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20sIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdID4gLmFycm93IHtcbiAgdG9wOiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gPiAuYXJyb3c6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAuNXJlbSAwLjVyZW0gMC41cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSA+IC5hcnJvdzo6YWZ0ZXIge1xuICB0b3A6IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAuNXJlbSAwLjVyZW0gMC41cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmN2Y3Zjc7XG59XG5cbi5icy1wb3BvdmVyLWxlZnQsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG4uYnMtcG9wb3Zlci1sZWZ0ID4gLmFycm93LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gPiAuYXJyb3cge1xuICByaWdodDogY2FsYygtMC41cmVtIC0gMXB4KTtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW46IDAuM3JlbSAwO1xufVxuXG4uYnMtcG9wb3Zlci1sZWZ0ID4gLmFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gPiAuYXJyb3c6OmFmdGVyIHtcbiAgcmlnaHQ6IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xuICBib3JkZXItbGVmdC1jb2xvcjogI2ZmZjtcbn1cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmViZWI7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbn1cblxuLnBvcG92ZXItaGVhZGVyOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBjb2xvcjogIzIxMjUyOTtcbn1cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jYXJvdXNlbC1pbm5lcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHotaW5kZXg6IDE7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcyAwLjZzO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxNSU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXY6aG92ZXIsIC5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmhvdmVyLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLyUzZSUzYy9zdmclM2VcIik7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNmZmYnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLyUzZSUzYy9zdmclM2VcIik7XG59XG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxNSU7XG4gIG1hcmdpbi1sZWZ0OiAxNSU7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBtYXJnaW4tbGVmdDogM3B4O1xuICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG9wYWNpdHk6IC41O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgZWFzZTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNhcm91c2VsLWluZGljYXRvcnMgbGkge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6IDE1JTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6IDAuMjVlbSBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcbn1cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnNwaW5uZXItYm9yZGVyLFxuICAuc3Bpbm5lci1ncm93IHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIH1cbn1cblxuLmFsaWduLWJhc2VsaW5lIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi10b3Age1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi10ZXh0LWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tdGV4dC10b3Age1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDtcbn1cblxuLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctcHJpbWFyeTpob3ZlciwgYS5iZy1wcmltYXJ5OmZvY3VzLFxuYnV0dG9uLmJnLXByaW1hcnk6aG92ZXIsXG5idXR0b24uYmctcHJpbWFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDYyY2MgIWltcG9ydGFudDtcbn1cblxuLmJnLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcbn1cblxuYS5iZy1zZWNvbmRhcnk6aG92ZXIsIGEuYmctc2Vjb25kYXJ5OmZvY3VzLFxuYnV0dG9uLmJnLXNlY29uZGFyeTpob3ZlcixcbmJ1dHRvbi5iZy1zZWNvbmRhcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1YjYyICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NSAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXN1Y2Nlc3M6aG92ZXIsIGEuYmctc3VjY2Vzczpmb2N1cyxcbmJ1dHRvbi5iZy1zdWNjZXNzOmhvdmVyLFxuYnV0dG9uLmJnLXN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU3ZTM0ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3YTJiOCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWluZm86aG92ZXIsIGEuYmctaW5mbzpmb2N1cyxcbmJ1dHRvbi5iZy1pbmZvOmhvdmVyLFxuYnV0dG9uLmJnLWluZm86Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE3YThiICFpbXBvcnRhbnQ7XG59XG5cbi5iZy13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXdhcm5pbmc6aG92ZXIsIGEuYmctd2FybmluZzpmb2N1cyxcbmJ1dHRvbi5iZy13YXJuaW5nOmhvdmVyLFxuYnV0dG9uLmJnLXdhcm5pbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDM5ZTAwICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZGFuZ2VyOmhvdmVyLCBhLmJnLWRhbmdlcjpmb2N1cyxcbmJ1dHRvbi5iZy1kYW5nZXI6aG92ZXIsXG5idXR0b24uYmctZGFuZ2VyOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JkMjEzMCAhaW1wb3J0YW50O1xufVxuXG4uYmctbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctbGlnaHQ6aG92ZXIsIGEuYmctbGlnaHQ6Zm9jdXMsXG5idXR0b24uYmctbGlnaHQ6aG92ZXIsXG5idXR0b24uYmctbGlnaHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFlMGU1ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLWRhcms6aG92ZXIsIGEuYmctZGFyazpmb2N1cyxcbmJ1dHRvbi5iZy1kYXJrOmhvdmVyLFxuYnV0dG9uLmJnLWRhcms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQyMTI0ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci10b3Age1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXJpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbGVmdCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTAge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci10b3AtMCB7XG4gIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1yaWdodC0wIHtcbiAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItYm90dG9tLTAge1xuICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbGVmdC0wIHtcbiAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1wcmltYXJ5IHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItc2Vjb25kYXJ5IHtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItc3VjY2VzcyB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWluZm8ge1xuICBib3JkZXItY29sb3I6ICMxN2EyYjggIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci13YXJuaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItZGFuZ2VyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbGlnaHQge1xuICBib3JkZXItY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1kYXJrIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiA1MHJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4uZC1ub25lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbn1cblxuLmQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5kLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmQtdGFibGUge1xuICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZS1yb3cge1xuICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbn1cblxuLmQtdGFibGUtY2VsbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbn1cblxuLmQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbn1cblxuLmQtaW5saW5lLWZsZXgge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmQtc20tbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXNtLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtc20taW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC1zbS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC1zbS10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1zbS10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXNtLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICAuZC1zbS1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtc20taW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kLW1kLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1tZC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLW1kLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbWQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbWQtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICAuZC1tZC10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbWQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG4gIC5kLW1kLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZC1sZy1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbGctaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1sZy1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5kLWxnLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5kLWxnLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLWxnLXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbGctdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIC5kLWxnLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuICAuZC1sZy1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kLXhsLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuZC14bC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXhsLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQteGwtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQteGwtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQteGwtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICAuZC14bC10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQteGwtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXhsLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5kLXByaW50LW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1wcmludC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXByaW50LWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtcHJpbnQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtcHJpbnQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtcHJpbnQtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICAuZC1wcmludC10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtcHJpbnQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXByaW50LWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbi5lbWJlZC1yZXNwb25zaXZlIGlmcmFtZSxcbi5lbWJlZC1yZXNwb25zaXZlIGVtYmVkLFxuLmVtYmVkLXJlc3BvbnNpdmUgb2JqZWN0LFxuLmVtYmVkLXJlc3BvbnNpdmUgdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDA7XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTIxYnk5OjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNDIuODU3MTQzJTtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMTZieTk6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTRieTM6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA3NSU7XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTFieTE6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxMDAlO1xufVxuXG4uZmxleC1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbn1cblxuLmZsZXgtcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtd3JhcCB7XG4gIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ub3dyYXAge1xuICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC13cmFwLXJldmVyc2Uge1xuICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1maWxsIHtcbiAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZ3Jvdy0wIHtcbiAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWdyb3ctMSB7XG4gIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1zaHJpbmstMCB7XG4gIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXNocmluay0xIHtcbiAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1zdGFydCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LWJldHdlZW4ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1hcm91bmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtc3RhcnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtZW5kIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1iYXNlbGluZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LXN0YXJ0IHtcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1lbmQge1xuICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1jZW50ZXIge1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtYmV0d2VlbiB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtYXJvdW5kIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LXN0cmV0Y2gge1xuICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWF1dG8ge1xuICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLXN0YXJ0IHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1lbmQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1jZW50ZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtYmFzZWxpbmUge1xuICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmZsZXgtc20tcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20td3JhcC1yZXZlcnNlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS1ncm93LTEge1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXNtLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtc20tc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXNtLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1zbS1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtc20tY2VudGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtc20tYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtc20tYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXNtLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtc20tZW5kIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXNtLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtc20tYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmxleC1tZC1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtZmlsbCB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtc2hyaW5rLTAge1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1tZC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbWQtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbWQtY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLW1kLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1tZC1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1tZC1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1tZC1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbWQtc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbWQtY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mbGV4LWxnLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLWdyb3ctMCB7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1zaHJpbmstMSB7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLWxnLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1sZy1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1sZy1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbGctYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LWxnLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LWxnLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LWxnLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1sZy1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1sZy1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mbGV4LXhsLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLWdyb3ctMCB7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1zaHJpbmstMSB7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC14bC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy14bC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQteGwtZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXhsLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi14bC1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXhsLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi14bC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXhsLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZmxvYXQtc20tbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAuZmxvYXQtc20tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbG9hdC1zbS1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmxvYXQtbWQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAuZmxvYXQtbWQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbG9hdC1tZC1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZmxvYXQtbGctbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAuZmxvYXQtbGctcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbG9hdC1sZy1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZsb2F0LXhsLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsb2F0LXhsLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuICAuZmxvYXQteGwtbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4udXNlci1zZWxlY3QtYWxsIHtcbiAgdXNlci1zZWxlY3Q6IGFsbCAhaW1wb3J0YW50O1xufVxuXG4udXNlci1zZWxlY3QtYXV0byB7XG4gIHVzZXItc2VsZWN0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51c2VyLXNlbGVjdC1ub25lIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LWF1dG8ge1xuICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3ctaGlkZGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tcmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xufVxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDMwO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDMwO1xufVxuXG5Ac3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgLnN0aWNreS10b3Age1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gIH1cbn1cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5zaGFkb3ctc20ge1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSkgIWltcG9ydGFudDtcbn1cblxuLnNoYWRvdyB7XG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93LWxnIHtcbiAgYm94LXNoYWRvdzogMCAxcmVtIDNyZW0gcmdiYSgwLCAwLCAwLCAwLjE3NSkgIWltcG9ydGFudDtcbn1cblxuLnNoYWRvdy1ub25lIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udy0yNSB7XG4gIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbn1cblxuLnctNTAge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi53LTc1IHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xufVxuXG4udy0xMDAge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udy1hdXRvIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmgtMjUge1xuICBoZWlnaHQ6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4uaC01MCB7XG4gIGhlaWdodDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5oLTc1IHtcbiAgaGVpZ2h0OiA3NSUgIWltcG9ydGFudDtcbn1cblxuLmgtMTAwIHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5oLWF1dG8ge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm13LTEwMCB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWgtMTAwIHtcbiAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWluLXZ3LTEwMCB7XG4gIG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDtcbn1cblxuLm1pbi12aC0xMDAge1xuICBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xufVxuXG4udnctMTAwIHtcbiAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG59XG5cbi52aC0xMDAge1xuICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG59XG5cbi5tLTAge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLm10LTAsXG4ubXktMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLm1yLTAsXG4ubXgtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ubWItMCxcbi5teS0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ubWwtMCxcbi5teC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm0tMSB7XG4gIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtMSxcbi5teS0xIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItMSxcbi5teC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0xLFxuLm15LTEge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC0xLFxuLm14LTEge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS0yIHtcbiAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTIsXG4ubXktMiB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItMixcbi5teC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTIsXG4ubXktMiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtMixcbi5teC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS0zIHtcbiAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC0zLFxuLm15LTMge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci0zLFxuLm14LTMge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTMsXG4ubXktMyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTMsXG4ubXgtMyB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTQge1xuICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtNCxcbi5teS00IHtcbiAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci00LFxuLm14LTQge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItNCxcbi5teS00IHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC00LFxuLm14LTQge1xuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTUge1xuICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTUsXG4ubXktNSB7XG4gIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTUsXG4ubXgtNSB7XG4gIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItNSxcbi5teS01IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtNSxcbi5teC01IHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtMCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnB0LTAsXG4ucHktMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wci0wLFxuLnB4LTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0wLFxuLnB5LTAge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucGwtMCxcbi5weC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wLTEge1xuICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0xLFxuLnB5LTEge1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItMSxcbi5weC0xIHtcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItMSxcbi5weS0xIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBsLTEsXG4ucHgtMSB7XG4gIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC0yIHtcbiAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0yLFxuLnB5LTIge1xuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wci0yLFxuLnB4LTIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTIsXG4ucHktMiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBsLTIsXG4ucHgtMiB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTMge1xuICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0zLFxuLnB5LTMge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItMyxcbi5weC0zIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItMyxcbi5weS0zIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnBsLTMsXG4ucHgtMyB7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC00IHtcbiAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC00LFxuLnB5LTQge1xuICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wci00LFxuLnB4LTQge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTQsXG4ucHktNCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBsLTQsXG4ucHgtNCB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTUge1xuICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC01LFxuLnB5LTUge1xuICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucHItNSxcbi5weC01IHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItNSxcbi5weS01IHtcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnBsLTUsXG4ucHgtNSB7XG4gIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1uMSB7XG4gIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LW4xLFxuLm15LW4xIHtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW4xLFxuLm14LW4xIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItbjEsXG4ubXktbjEge1xuICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtbjEsXG4ubXgtbjEge1xuICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjIge1xuICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LW4yLFxuLm15LW4yIHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjIsXG4ubXgtbjIge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW4yLFxuLm15LW4yIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtbjIsXG4ubXgtbjIge1xuICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1uMyB7XG4gIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LW4zLFxuLm15LW4zIHtcbiAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW4zLFxuLm14LW4zIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItbjMsXG4ubXktbjMge1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtbjMsXG4ubXgtbjMge1xuICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tbjQge1xuICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LW40LFxuLm15LW40IHtcbiAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjQsXG4ubXgtbjQge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLW40LFxuLm15LW40IHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtbjQsXG4ubXgtbjQge1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1uNSB7XG4gIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LW41LFxuLm15LW41IHtcbiAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLW41LFxuLm14LW41IHtcbiAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItbjUsXG4ubXktbjUge1xuICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtbjUsXG4ubXgtbjUge1xuICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tYXV0byB7XG4gIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubXQtYXV0byxcbi5teS1hdXRvIHtcbiAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubXItYXV0byxcbi5teC1hdXRvIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1hdXRvLFxuLm15LWF1dG8ge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1hdXRvLFxuLm14LWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm0tc20tMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLTAsXG4gIC5teS1zbS0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLTAsXG4gIC5teC1zbS0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tMCxcbiAgLm15LXNtLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tMCxcbiAgLm14LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLTEsXG4gIC5teS1zbS0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLTEsXG4gIC5teC1zbS0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tMSxcbiAgLm15LXNtLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tMSxcbiAgLm14LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tMixcbiAgLm15LXNtLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS0yLFxuICAubXgtc20tMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tMixcbiAgLm15LXNtLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS0yLFxuICAubXgtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXNtLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS0zLFxuICAubXktc20tMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS0zLFxuICAubXgtc20tMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLTMsXG4gIC5teS1zbS0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLTMsXG4gIC5teC1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXNtLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLTQsXG4gIC5teS1zbS00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tNCxcbiAgLm14LXNtLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLTQsXG4gIC5teS1zbS00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tNCxcbiAgLm14LXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1zbS01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tNSxcbiAgLm15LXNtLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tNSxcbiAgLm14LXNtLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1zbS01LFxuICAubXktc20tNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS01LFxuICAubXgtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1zbS0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXNtLTAsXG4gIC5weS1zbS0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1zbS0wLFxuICAucHgtc20tMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1zbS0wLFxuICAucHktc20tMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAucGwtc20tMCxcbiAgLnB4LXNtLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXNtLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtc20tMSxcbiAgLnB5LXNtLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXNtLTEsXG4gIC5weC1zbS0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXNtLTEsXG4gIC5weS1zbS0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1zbS0xLFxuICAucHgtc20tMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtc20tMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXNtLTIsXG4gIC5weS1zbS0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXNtLTIsXG4gIC5weC1zbS0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItc20tMixcbiAgLnB5LXNtLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtc20tMixcbiAgLnB4LXNtLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtc20tMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1zbS0zLFxuICAucHktc20tMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItc20tMyxcbiAgLnB4LXNtLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItc20tMyxcbiAgLnB5LXNtLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLXNtLTMsXG4gIC5weC1zbS0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1zbS00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtc20tNCxcbiAgLnB5LXNtLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItc20tNCxcbiAgLnB4LXNtLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1zbS00LFxuICAucHktc20tNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1zbS00LFxuICAucHgtc20tNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1zbS01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXNtLTUsXG4gIC5weS1zbS01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1zbS01LFxuICAucHgtc20tNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1zbS01LFxuICAucHktc20tNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtc20tNSxcbiAgLnB4LXNtLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXNtLW4xIHtcbiAgICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLW4xLFxuICAubXktc20tbjEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLW4xLFxuICAubXgtc20tbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tbjEsXG4gIC5teS1zbS1uMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tbjEsXG4gIC5teC1zbS1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tbjIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS1uMixcbiAgLm15LXNtLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLW4yLFxuICAubXgtc20tbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1zbS1uMixcbiAgLm15LXNtLW4yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLW4yLFxuICAubXgtc20tbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tbjMsXG4gIC5teS1zbS1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tbjMsXG4gIC5teC1zbS1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1zbS1uMyxcbiAgLm15LXNtLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS1uMyxcbiAgLm14LXNtLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1zbS1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLW40LFxuICAubXktc20tbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tbjQsXG4gIC5teC1zbS1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLW40LFxuICAubXktc20tbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tbjQsXG4gIC5teC1zbS1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1zbS1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS1uNSxcbiAgLm15LXNtLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS1uNSxcbiAgLm14LXNtLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLW41LFxuICAubXktc20tbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLW41LFxuICAubXgtc20tbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXNtLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS1hdXRvLFxuICAubXktc20tYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS1hdXRvLFxuICAubXgtc20tYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLWF1dG8sXG4gIC5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLWF1dG8sXG4gIC5teC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubS1tZC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtMCxcbiAgLm15LW1kLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtMCxcbiAgLm14LW1kLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC0wLFxuICAubXktbWQtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC0wLFxuICAubXgtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtMSxcbiAgLm15LW1kLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtMSxcbiAgLm14LW1kLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC0xLFxuICAubXktbWQtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC0xLFxuICAubXgtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC0yLFxuICAubXktbWQtMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLTIsXG4gIC5teC1tZC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC0yLFxuICAubXktbWQtMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLTIsXG4gIC5teC1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLTMsXG4gIC5teS1tZC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLTMsXG4gIC5teC1tZC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtMyxcbiAgLm15LW1kLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtMyxcbiAgLm14LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtNCxcbiAgLm15LW1kLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC00LFxuICAubXgtbWQtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtNCxcbiAgLm15LW1kLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC00LFxuICAubXgtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLW1kLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC01LFxuICAubXktbWQtNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC01LFxuICAubXgtbWQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLTUsXG4gIC5teS1tZC01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLTUsXG4gIC5teC1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLW1kLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHQtbWQtMCxcbiAgLnB5LW1kLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLW1kLTAsXG4gIC5weC1tZC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLW1kLTAsXG4gIC5weS1tZC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1tZC0wLFxuICAucHgtbWQtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbWQtMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1tZC0xLFxuICAucHktbWQtMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItbWQtMSxcbiAgLnB4LW1kLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItbWQtMSxcbiAgLnB5LW1kLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLW1kLTEsXG4gIC5weC1tZC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1tZC0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtbWQtMixcbiAgLnB5LW1kLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItbWQtMixcbiAgLnB4LW1kLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1tZC0yLFxuICAucHktbWQtMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1tZC0yLFxuICAucHgtbWQtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1tZC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LW1kLTMsXG4gIC5weS1tZC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1tZC0zLFxuICAucHgtbWQtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1tZC0zLFxuICAucHktbWQtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtbWQtMyxcbiAgLnB4LW1kLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLW1kLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1tZC00LFxuICAucHktbWQtNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1tZC00LFxuICAucHgtbWQtNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLW1kLTQsXG4gIC5weS1tZC00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLW1kLTQsXG4gIC5weC1tZC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLW1kLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtbWQtNSxcbiAgLnB5LW1kLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLW1kLTUsXG4gIC5weC1tZC01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLW1kLTUsXG4gIC5weS1tZC01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1tZC01LFxuICAucHgtbWQtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtbjEsXG4gIC5teS1tZC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtbjEsXG4gIC5teC1tZC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC1uMSxcbiAgLm15LW1kLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC1uMSxcbiAgLm14LW1kLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLW4yLFxuICAubXktbWQtbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtbjIsXG4gIC5teC1tZC1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLW4yLFxuICAubXktbWQtbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtbjIsXG4gIC5teC1tZC1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC1uMyxcbiAgLm15LW1kLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC1uMyxcbiAgLm14LW1kLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLW4zLFxuICAubXktbWQtbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLW4zLFxuICAubXgtbWQtbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLW1kLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtbjQsXG4gIC5teS1tZC1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC1uNCxcbiAgLm14LW1kLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtbjQsXG4gIC5teS1tZC1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC1uNCxcbiAgLm14LW1kLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLW1kLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLW41LFxuICAubXktbWQtbjUge1xuICAgIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLW41LFxuICAubXgtbWQtbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtbjUsXG4gIC5teS1tZC1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtbjUsXG4gIC5teC1tZC1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLWF1dG8sXG4gIC5teS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLWF1dG8sXG4gIC5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtYXV0byxcbiAgLm15LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtYXV0byxcbiAgLm14LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tLWxnLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy0wLFxuICAubXktbGctMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy0wLFxuICAubXgtbGctMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLTAsXG4gIC5teS1sZy0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLTAsXG4gIC5teC1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy0xLFxuICAubXktbGctMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy0xLFxuICAubXgtbGctMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLTEsXG4gIC5teS1sZy0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLTEsXG4gIC5teC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLTIsXG4gIC5teS1sZy0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctMixcbiAgLm14LWxnLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLTIsXG4gIC5teS1sZy0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctMixcbiAgLm14LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1sZy0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbGctMyxcbiAgLm15LWxnLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctMyxcbiAgLm14LWxnLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy0zLFxuICAubXktbGctMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1sZy0zLFxuICAubXgtbGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1sZy00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy00LFxuICAubXktbGctNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLTQsXG4gIC5teC1sZy00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy00LFxuICAubXktbGctNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLTQsXG4gIC5teC1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLTUsXG4gIC5teS1sZy01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLTUsXG4gIC5teC1sZy01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctNSxcbiAgLm15LWxnLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctNSxcbiAgLm14LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbGctMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1sZy0wLFxuICAucHktbGctMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHItbGctMCxcbiAgLnB4LWxnLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucGItbGctMCxcbiAgLnB5LWxnLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLWxnLTAsXG4gIC5weC1sZy0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucC1sZy0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LWxnLTEsXG4gIC5weS1sZy0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1sZy0xLFxuICAucHgtbGctMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1sZy0xLFxuICAucHktbGctMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtbGctMSxcbiAgLnB4LWxnLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLWxnLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1sZy0yLFxuICAucHktbGctMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1sZy0yLFxuICAucHgtbGctMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLWxnLTIsXG4gIC5weS1sZy0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLWxnLTIsXG4gIC5weC1sZy0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLWxnLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtbGctMyxcbiAgLnB5LWxnLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLWxnLTMsXG4gIC5weC1sZy0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLWxnLTMsXG4gIC5weS1sZy0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1sZy0zLFxuICAucHgtbGctMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbGctNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LWxnLTQsXG4gIC5weS1sZy00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLWxnLTQsXG4gIC5weC1sZy00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItbGctNCxcbiAgLnB5LWxnLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtbGctNCxcbiAgLnB4LWxnLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbGctNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1sZy01LFxuICAucHktbGctNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItbGctNSxcbiAgLnB4LWxnLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItbGctNSxcbiAgLnB5LWxnLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLWxnLTUsXG4gIC5weC1sZy01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1sZy1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy1uMSxcbiAgLm15LWxnLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy1uMSxcbiAgLm14LWxnLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLW4xLFxuICAubXktbGctbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLW4xLFxuICAubXgtbGctbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbGctbjIsXG4gIC5teS1sZy1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy1uMixcbiAgLm14LWxnLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctbjIsXG4gIC5teS1sZy1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1sZy1uMixcbiAgLm14LWxnLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLW4zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLW4zLFxuICAubXktbGctbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLW4zLFxuICAubXgtbGctbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctbjMsXG4gIC5teS1sZy1uMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctbjMsXG4gIC5teC1sZy1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy1uNCxcbiAgLm15LWxnLW40IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLW40LFxuICAubXgtbGctbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy1uNCxcbiAgLm15LWxnLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLW40LFxuICAubXgtbGctbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbGctbjUsXG4gIC5teS1sZy1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctbjUsXG4gIC5teC1sZy1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy1uNSxcbiAgLm15LWxnLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1sZy1uNSxcbiAgLm14LWxnLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1sZy1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbGctYXV0byxcbiAgLm15LWxnLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctYXV0byxcbiAgLm14LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy1hdXRvLFxuICAubXktbGctYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1sZy1hdXRvLFxuICAubXgtbGctYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tLXhsLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC0wLFxuICAubXkteGwtMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC0wLFxuICAubXgteGwtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLTAsXG4gIC5teS14bC0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLTAsXG4gIC5teC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC0xLFxuICAubXkteGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC0xLFxuICAubXgteGwtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLTEsXG4gIC5teS14bC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLTEsXG4gIC5teC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLTIsXG4gIC5teS14bC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtMixcbiAgLm14LXhsLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLTIsXG4gIC5teS14bC0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtMixcbiAgLm14LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS14bC0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtMyxcbiAgLm15LXhsLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtMyxcbiAgLm14LXhsLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC0zLFxuICAubXkteGwtMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC0zLFxuICAubXgteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS14bC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC00LFxuICAubXkteGwtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLTQsXG4gIC5teC14bC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC00LFxuICAubXkteGwtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLTQsXG4gIC5teC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0teGwtNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLTUsXG4gIC5teS14bC01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLTUsXG4gIC5teC14bC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWIteGwtNSxcbiAgLm15LXhsLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtNSxcbiAgLm14LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAteGwtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC14bC0wLFxuICAucHkteGwtMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHIteGwtMCxcbiAgLnB4LXhsLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucGIteGwtMCxcbiAgLnB5LXhsLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLXhsLTAsXG4gIC5weC14bC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucC14bC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXhsLTEsXG4gIC5weS14bC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci14bC0xLFxuICAucHgteGwtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi14bC0xLFxuICAucHkteGwtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwteGwtMSxcbiAgLnB4LXhsLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXhsLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC14bC0yLFxuICAucHkteGwtMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci14bC0yLFxuICAucHgteGwtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXhsLTIsXG4gIC5weS14bC0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLXhsLTIsXG4gIC5weC14bC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXhsLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQteGwtMyxcbiAgLnB5LXhsLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXhsLTMsXG4gIC5weC14bC0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXhsLTMsXG4gIC5weS14bC0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC14bC0zLFxuICAucHgteGwtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAteGwtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXhsLTQsXG4gIC5weS14bC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXhsLTQsXG4gIC5weC14bC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGIteGwtNCxcbiAgLnB5LXhsLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwteGwtNCxcbiAgLnB4LXhsLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAteGwtNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC14bC01LFxuICAucHkteGwtNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHIteGwtNSxcbiAgLnB4LXhsLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGIteGwtNSxcbiAgLnB5LXhsLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLXhsLTUsXG4gIC5weC14bC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS14bC1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC1uMSxcbiAgLm15LXhsLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC1uMSxcbiAgLm14LXhsLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLW4xLFxuICAubXkteGwtbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLW4xLFxuICAubXgteGwtbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtbjIsXG4gIC5teS14bC1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC1uMixcbiAgLm14LXhsLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWIteGwtbjIsXG4gIC5teS14bC1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC1uMixcbiAgLm14LXhsLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLW4zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLW4zLFxuICAubXkteGwtbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLW4zLFxuICAubXgteGwtbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWIteGwtbjMsXG4gIC5teS14bC1uMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtbjMsXG4gIC5teC14bC1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0teGwtbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC1uNCxcbiAgLm15LXhsLW40IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLW40LFxuICAubXgteGwtbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC1uNCxcbiAgLm15LXhsLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLW40LFxuICAubXgteGwtbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0teGwtbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtbjUsXG4gIC5teS14bC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtbjUsXG4gIC5teC14bC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC1uNSxcbiAgLm15LXhsLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC1uNSxcbiAgLm14LXhsLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS14bC1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtYXV0byxcbiAgLm15LXhsLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtYXV0byxcbiAgLm14LXhsLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC1hdXRvLFxuICAubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC1hdXRvLFxuICAubXgteGwtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc3RyZXRjaGVkLWxpbms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4udGV4dC1tb25vc3BhY2Uge1xuICBmb250LWZhbWlseTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC13cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAudGV4dC1zbS1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQtc20tcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQtc20tY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRleHQtbWQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LW1kLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LW1kLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50ZXh0LWxnLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAudGV4dC1sZy1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuICAudGV4dC1sZy1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHQteGwtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LXhsLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LXhsLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnRleHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtbGlnaHQge1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1saWdodGVyIHtcbiAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXIgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWJvbGQge1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1ib2xkZXIge1xuICBmb250LXdlaWdodDogYm9sZGVyICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50O1xufVxuXG4udGV4dC13aGl0ZSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogIzAwN2JmZiAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtcHJpbWFyeTpob3ZlciwgYS50ZXh0LXByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogIzAwNTZiMyAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zZWNvbmRhcnkge1xuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtc2Vjb25kYXJ5OmhvdmVyLCBhLnRleHQtc2Vjb25kYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICM0OTRmNTQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMjhhNzQ1ICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1zdWNjZXNzOmhvdmVyLCBhLnRleHQtc3VjY2Vzczpmb2N1cyB7XG4gIGNvbG9yOiAjMTk2OTJjICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWluZm8ge1xuICBjb2xvcjogIzE3YTJiOCAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtaW5mbzpob3ZlciwgYS50ZXh0LWluZm86Zm9jdXMge1xuICBjb2xvcjogIzBmNjY3NCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC13YXJuaW5nIHtcbiAgY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LXdhcm5pbmc6aG92ZXIsIGEudGV4dC13YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6ICNiYThiMDAgIWltcG9ydGFudDtcbn1cblxuLnRleHQtZGFuZ2VyIHtcbiAgY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LWRhbmdlcjpob3ZlciwgYS50ZXh0LWRhbmdlcjpmb2N1cyB7XG4gIGNvbG9yOiAjYTcxZDJhICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWxpZ2h0IHtcbiAgY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LWxpZ2h0OmhvdmVyLCBhLnRleHQtbGlnaHQ6Zm9jdXMge1xuICBjb2xvcjogI2NiZDNkYSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kYXJrIHtcbiAgY29sb3I6ICMzNDNhNDAgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LWRhcms6aG92ZXIsIGEudGV4dC1kYXJrOmZvY3VzIHtcbiAgY29sb3I6ICMxMjE0MTYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtYm9keSB7XG4gIGNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcbn1cblxuLnRleHQtYmxhY2stNTAge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdoaXRlLTUwIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1oaWRlIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXJlc2V0IHtcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgYTpub3QoLmJ0bikge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG4gIHByZSB7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWRiNWJkO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbiAgQHBhZ2Uge1xuICAgIHNpemU6IGEzO1xuICB9XG4gIGJvZHkge1xuICAgIG1pbi13aWR0aDogOTkycHggIWltcG9ydGFudDtcbiAgfVxuICAuY29udGFpbmVyIHtcbiAgICBtaW4td2lkdGg6IDk5MnB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYmFkZ2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gIH1cbiAgLnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRhYmxlIHRkLFxuICAudGFibGUgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgfVxuICAudGFibGUtYm9yZGVyZWQgdGgsXG4gIC50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xuICB9XG4gIC50YWJsZS1kYXJrIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuICAudGFibGUtZGFyayB0aCxcbiAgLnRhYmxlLWRhcmsgdGQsXG4gIC50YWJsZS1kYXJrIHRoZWFkIHRoLFxuICAudGFibGUtZGFyayB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG4gIH1cbiAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLmNzcy5tYXAgKi8iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15IC8gMikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplIC8gMiAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgZXNjYXBlLXN2ZygkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IpIHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplIG5vLXJlcGVhdCAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDogICAgICA3NXZoICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCBmb250LXJlc2l6aW5nXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmc1xuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbi8vIFJlc2l6ZSBmb250LXNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250LXNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBWYXJpYWJsZXMgZm9yIHN0b3Jpbmcgc3RhdGljIGFuZCBmbHVpZCByZXNjYWxpbmdcbiAgICAkcmZzLXN0YXRpYzogbnVsbDtcbiAgICAkcmZzLWZsdWlkOiBudWxsO1xuXG4gICAgLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIEBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnMgLyAkcmZzLXJlbS12YWx1ZX1yZW0jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSBweCB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnN9cHgjeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xuICAgIH1cblxuICAgIC8vIE9ubHkgYWRkIG1lZGlhIHF1ZXJ5IGlmIGZvbnQtc2l6ZSBpcyBiaWdnZXIgYXMgdGhlIG1pbmltdW0gZm9udC1zaXplXG4gICAgLy8gSWYgJHJmcy1mYWN0b3IgPT0gMSwgbm8gcmVzY2FsaW5nIHdpbGwgdGFrZSBwbGFjZVxuICAgIEBpZiAkZnMgPiAkcmZzLWJhc2UtZm9udC1zaXplIGFuZCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICAkbWluLXdpZHRoOiBudWxsO1xuICAgICAgJHZhcmlhYmxlLXVuaXQ6IG51bGw7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUpIC8gJHJmcy1mYWN0b3I7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gZ2l2ZW4gZm9udC1zaXplIGFuZCBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgLy8gTm8gbmVlZCB0byBjaGVjayBpZiB0aGUgdW5pdCBpcyB2YWxpZCwgYmVjYXVzZSB3ZSBkaWQgdGhhdCBiZWZvcmVcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAjeyRmcy1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIElmIHR3by1kaW1lbnNpb25hbCwgdXNlIHNtYWxsZXN0IG9mIHNjcmVlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyRmcy1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplLlxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcbiAgICB9XG5cbiAgICAvLyBSZW5kZXJpbmdcbiAgICBAaWYgJHJmcy1mbHVpZCA9PSBudWxsIHtcbiAgICAgIC8vIE9ubHkgcmVuZGVyIHN0YXRpYyBmb250LXNpemUgaWYgbm8gZmx1aWQgZm9udC1zaXplIGlzIGF2YWlsYWJsZVxuICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJG1xLXZhbHVlOiBudWxsO1xuXG4gICAgICAvLyBSRlMgYnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICBAaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcmVtIHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50fXB4O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgICAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LFxuICAgICAgICAvLyB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICAgICAmLFxuICAgICAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbiB1c2VzIFJGUyB0byByZXNjYWxlIGZvbnQgc2l6ZXNcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkKCkge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vY3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xufVxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG1ha2UtY29udGFpbmVyLW1heC13aWR0aHNgIG1peGluXCIsIFwidjQuNS4yXCIsIFwidjVcIik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCUgLyAkY291bnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlIC8gJGNvdW50O1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7IC8vIFJlc2V0IGZvciBuZXN0aW5nIHdpdGhpbiBwYXJlbnRzIHdpdGggYGJhY2tncm91bmQtY29sb3JgLlxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYm9yZGVyLWxldmVsKSk7XG59XG5cbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZSwgJHRhYmxlLWFjdGl2ZS1iZyk7XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnRoZWFkLWxpZ2h0IHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhlYWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuXG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgge1xuICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgICAgIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICAgICAgID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG5cbiAgICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcblxuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIgb3IgdW5pdCgkcHJldi1udW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gIEBpZiBsZW5ndGgoJG1hcCkgPiAwIHtcbiAgICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICAgIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xuLy9cbi8vIFJlcXVpcmVzIHRoZSB1c2Ugb2YgcXVvdGVzIGFyb3VuZCBkYXRhIFVSSXMuXG5cbkBmdW5jdGlvbiBlc2NhcGUtc3ZnKCRzdHJpbmcpIHtcbiAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcImRhdGE6aW1hZ2Uvc3ZnK3htbFwiKSB7XG4gICAgQGVhY2ggJGNoYXIsICRlbmNvZGVkIGluICRlc2NhcGVkLWNoYXJhY3RlcnMge1xuICAgICAgLy8gRG8gbm90IGVzY2FwZSB0aGUgdXJsIGJyYWNrZXRzXG4gICAgICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwidXJsKFwiKSA9PSAxIHtcbiAgICAgICAgJHN0cmluZzogdXJsKFwiI3tzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgNiwgLTMpLCAkY2hhciwgJGVuY29kZWQpfVwiKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc3RyaW5nOiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkY2hhciwgJGVuY29kZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICRibGFjaywgJHdoaXRlKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuXG4vLyBSZXR1cm4gdmFsaWQgY2FsY1xuQGZ1bmN0aW9uIGFkZCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxICsgJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSArICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiArIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gc3VidHJhY3QoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwgYW5kICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAtJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSAtICR2YWx1ZTI7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBSZW1vdmUgc2VsZWN0IG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGlucHV0LWNvbG9yO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgJi5mb3JtLWNvbnRyb2wge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICZbc2l6ZV0sXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuXG4gID4gLmNvbCxcbiAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIGZvciB3b3JrYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuZm9ybS1jaGVjay1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcbn1cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAsXG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZvcm0tY29udHJvbC1mb2N1cygpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcblxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMTU1N1xuICAgIC8vIEFsaWduIHRvb2x0aXAgdG8gZm9ybSBlbGVtZW50c1xuICAgIC5mb3JtLXJvdyA+IC5jb2wgPiAmLFxuICAgIC5mb3JtLXJvdyA+IFtjbGFzcyo9XCJjb2wtXCJdID4gJiB7XG4gICAgICBsZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCAkY3VzdG9tLXNlbGVjdC1iZyBlc2NhcGUtc3ZnKCRpY29uKSAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplIG5vLXJlcGVhdDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IGlmKCRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMsIHBvaW50ZXIsIG51bGwpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1wYWRkaW5nLXg7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gUG9wcGVyIGlzIGVuYWJsZWQsIHJlc2V0IHRoZSBiYXNpYyBkcm9wZG93biBwb3NpdGlvblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZywgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXksIHRydWUpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duKCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wbGVmdCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94IGFuZCByYWRpbyBvcHRpb25zXG4vL1xuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcbi8vIGByZXF1aXJlZGAgYXR0cmlidXRlLCB3ZSBoYXZlIHRvIFwiaGlkZVwiIHRoZSBpbnB1dHMgdmlhIGBjbGlwYC4gV2UgY2Fubm90IHVzZVxuLy8gYGRpc3BsYXk6IG5vbmU7YCBvciBgdmlzaWJpbGl0eTogaGlkZGVuO2AgYXMgdGhhdCBhbHNvIGhpZGVzIHRoZSBwb3BvdmVyLlxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cbi8vIGNlcnRhaW4gY2FzZXMgd2hpY2ggaXMgcHJldmVudGVkIGJ5IHVzaW5nIGBjbGlwYCBhbmQgYHBvaW50ZXItZXZlbnRzYC5cbi8vIFRoaXMgd2F5LCB3ZSBlbnN1cmUgYSBET00gZWxlbWVudCBpcyB2aXNpYmxlIHRvIHBvc2l0aW9uIHRoZSBwb3BvdmVyIGZyb20uXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEyNzk0IGFuZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTQ1NTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi5idG4tZ3JvdXAtdG9nZ2xlIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgeyBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHsgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmQgcm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGhlaWdodDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHRoZSBtaXhpbiBpcyBub3QgdXNlZCBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBmZWVkYmFja1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvciBzb2xpZCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBGb3JlZ3JvdW5kIChpY29uKVxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9IG5vLXJlcGVhdDtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHN3aXRjaGVzXG4vL1xuLy8gVHdlYWsgYSBmZXcgdGhpbmdzIGZvciBzd2l0Y2hlc1xuXG4uY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC13aWR0aDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IGFkZCgoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMiwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIGxlZnQ6IGFkZCgtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlciksICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBoZWlnaHQ6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsICRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSGlkZXMgdGhlIGRlZmF1bHQgY2FyZXQgaW4gSUUxMVxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc7XG4gIH1cblxuICBAZWFjaCAkbGFuZywgJHZhbHVlIGluICRjdXN0b20tZmlsZS10ZXh0IHtcbiAgICAmOmxhbmcoI3skbGFuZ30pIH4gLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiAkdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgfiAuY3VzdG9tLWZpbGUtbGFiZWxbZGF0YS1icm93c2VdOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWJyb3dzZSk7XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tZmlsZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tZmlsZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tZmlsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWJnO1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1maWxlLWJveC1zaGFkb3cpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjtcbiAgICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gICAgbGluZS1oZWlnaHQ6ICRjdXN0b20tZmlsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tZmlsZS1idXR0b24tYmcpO1xuICAgIGJvcmRlci1sZWZ0OiBpbmhlcml0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwKTtcbiAgfVxufVxuXG4vLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQsICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQgLSAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCkgLyAyOyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5jb250YWluZXIsXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiAkbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAvLyBDaGFuZ2VzIGZsZXgtYmFzZXMgdG8gYXV0byBiZWNhdXNlIG9mIGFuIElFMTAgYnVnXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiAkY2FyZC1oZWlnaHQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIER1ZSB0byBzcGVjaWZpY2l0eSBvZiB0aGUgYWJvdmUgc2VsZWN0b3IgKGAuY2FyZCA+IC5saXN0LWdyb3VwYCksIHdlIG11c3RcbiAgLy8gdXNlIGEgY2hpbGQgc2VsZWN0b3IgaGVyZSB0byBwcmV2ZW50IGRvdWJsZSBib3JkZXJzLlxuICA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuICA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBpbWFnZSBzaXplIGJ1ZyBpbiBJRVxuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI4ODU1XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtc3BhY2VyLXkgLyAyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14IC8gMjtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIENhcmQgZGVja1xuXG4uY2FyZC1kZWNrIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWRlY2stbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogLSRjYXJkLWRlY2stbWFyZ2luO1xuXG4gICAgLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGRlZmF1bHRcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuXG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIH1cblxuICAgID4gLmNhcmQtaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYnJlYWRjcnVtYi1mb250LXNpemUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6ICRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5wYWdlLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyBPcGluaW9uYXRlZDogcmVtb3ZlIHRoZSBcImhhbmRcIiBjdXJzb3Igc2V0IHByZXZpb3VzbHkgZm9yIC5wYWdlLWxpbmtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJGxpbmUtaGVpZ2h0LWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuLy8gUGlsbCBiYWRnZXNcbi8vXG4vLyBNYWtlIHRoZW0gZXh0cmEgcm91bmRlZCB3aXRoIGEgbW9kaWZpZXIgdG8gcmVwbGFjZSB2MydzIGJhZGdlcy5cblxuLmJhZGdlLXBpbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIHBhZGRpbmctbGVmdDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBDb2xvcnNcbi8vXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBiYWRnZXMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4iLCJAbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYgKyAmIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNsb3NlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBvcGFjaXR5OiAuNTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi50b2FzdCB7XG4gIC8vIFByZXZlbnRzIGZyb20gc2hyaW5raW5nIGluIElFMTEsIHdoZW4gaW4gYSBmbGV4IGNvbnRhaW5lclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODM0MVxuICBmbGV4LWJhc2lzOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KCR0b2FzdC1ib3JkZXItcmFkaXVzLCAkdG9hc3QtYm9yZGVyLXdpZHRoKSk7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50OyAvLyBSZXNldCBoZWlnaHQgdG8gMCBleGNlcHQgb24gSUVcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogJG1vZGFsLWxnO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSB7XG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xuXG4gIC5hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1sZWZ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgbWFyZ2luOiAwICRwb3BvdmVyLWJvcmRlci1yYWRpdXM7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgYm90dG9tOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICB0b3A6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAvIDI7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgcmlnaHQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItcmlnaHQ7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1sZWZ0O1xuICB9XG59XG5cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJHBvcG92ZXItaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItaGVhZGVyLWJnLCA1JSk7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xuICBjb2xvcjogJHBvcG92ZXItYm9keS1jb2xvcjtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuXG5AaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy1ncmFkaWVudC12YXJpYW50YCBtaXhpblwiLCBcInY0LjUuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teSAvICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJHVzZXItc2VsZWN0cyB7XG4gIC51c2VyLXNlbGVjdC0jeyR2YWx1ZX0geyB1c2VyLXNlbGVjdDogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XG4gIC5vdmVyZmxvdy0jeyR2YWx1ZX0geyBvdmVyZmxvdzogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gIH1cbn1cbiIsIi8vXG4vLyBTY3JlZW5yZWFkZXJzXG4vL1xuXG4uc3Itb25seSB7XG4gIEBpbmNsdWRlIHNyLW9ubHkoKTtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlKCkge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLnNoYWRvdy1zbSB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3cgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LWxnIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGcgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1ub25lIHsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4vLyBWaWV3cG9ydCBhZGRpdGlvbmFsIGhlbHBlcnNcblxuLm1pbi12dy0xMDAgeyBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi5taW4tdmgtMTAwIHsgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4udnctMTAwIHsgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi52aC0xMDAgeyBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8vIEp1c3QgaW4gY2FzZSBgcG9pbnRlci1ldmVudHM6IG5vbmVgIGlzIHNldCBvbiBhIHBhcmVudFxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy8gSUUxMCBidWdmaXgsIHNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjk0Nzk2Ny9pZTEwLWhvdmVyLXBzZXVkby1jbGFzcy1kb2VzbnQtd29yay13aXRob3V0LWJhY2tncm91bmQtY29sb3JcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFRleHRcbi8vXG5cbi50ZXh0LW1vbm9zcGFjZSB7IGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFpbXBvcnRhbnQ7IH1cblxuLy8gQWxpZ25tZW50XG5cbi50ZXh0LWp1c3RpZnkgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4udGV4dC13cmFwICAgICB7IHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRydW5jYXRlIHsgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpOyB9XG5cbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LXJpZ2h0ICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG5cbi50ZXh0LWxvd2VyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi8vIFdlaWdodCBhbmQgaXRhbGljc1xuXG4uZm9udC13ZWlnaHQtbGlnaHQgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZGVyICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgIHsgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcblxuLnRleHQtd2hpdGUgeyBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBEZXByZWNhdGVkLCBidXQgYXZvaWRzIGlzc3VlcyB3aXRoIGZsZXggY29udGFpbmVyc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gVXNlZCBpbnN0ZWFkIG9mIGBvdmVyZmxvdy13cmFwYCBmb3IgSUUgJiBFZGdlIExlZ2FjeVxufVxuXG4vLyBSZXNldFxuXG4udGV4dC1yZXNldCB7IGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtZW1waGFzaXMtdmFyaWFudCgpYFwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvbWFpbi5jc3MvYmxvYi9tYXN0ZXIvc3JjL19wcmludC5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cHM6Ly93d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmICRlbmFibGUtcHJpbnQtc3R5bGVzIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICAqLFxuICAgICo6OmJlZm9yZSxcbiAgICAqOjphZnRlciB7XG4gICAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgb3V0IGBjb2xvcmAgYW5kIGBiYWNrZ3JvdW5kYFxuICAgICAgLy9jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXJcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOm5vdCguYnRuKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGdyYXktNTAwOyAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUHJpbnRpbmcgVGFibGVzOlxuICAgIC8vIGh0dHBzOi8vd2ViLmFyY2hpdmUub3JnL3dlYi8yMDE4MDgxNTE1MDkzNC9odHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICAvL1xuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgICAvLyBTcGVjaWZ5IGEgc2l6ZSBhbmQgbWluLXdpZHRoIHRvIG1ha2UgcHJpbnRpbmcgY2xvc2VyIGFjcm9zcyBicm93c2Vycy5cbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xuICAgIC8vIGRvbid0IHVzZSBgIWltcG9ydGFudGAgb24gYHNpemVgIGFzIGl0IGJyZWFrcyBpbiBDaHJvbWUuXG4gICAgQHBhZ2Uge1xuICAgICAgc2l6ZTogJHByaW50LXBhZ2Utc2l6ZTtcbiAgICB9XG4gICAgYm9keSB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgICAubmF2YmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJsYWNrO1xuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1kYXJrIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcbiAgfVxufVxuIiwiLyohXG4gKiBEYXRldGltZXBpY2tlciBmb3IgQm9vdHN0cmFwIDNcbiAqIHZlcnNpb24gOiA0LjE3LjQ3XG4gKiBodHRwczovL2dpdGh1Yi5jb20vRW9uYXNkYW4vYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyL1xuICovXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMnB4IDA7XG4gIHBhZGRpbmc6IDRweDtcbiAgd2lkdGg6IDE5ZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudS50aW1lcGlja2VyLXNicyB7XG4gICAgd2lkdGg6IDM4ZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51LnRpbWVwaWNrZXItc2JzIHtcbiAgICB3aWR0aDogMzhlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnUudGltZXBpY2tlci1zYnMge1xuICAgIHdpZHRoOiAzOGVtO1xuICB9XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51OmJlZm9yZSxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnU6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51LmJvdHRvbTpiZWZvcmUge1xuICBib3JkZXItbGVmdDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgdG9wOiAtN3B4O1xuICBsZWZ0OiA3cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51LmJvdHRvbTphZnRlciB7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA2cHggc29saWQgd2hpdGU7XG4gIHRvcDogLTZweDtcbiAgbGVmdDogOHB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudS50b3A6YmVmb3JlIHtcbiAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDdweCBzb2xpZCAjY2NjO1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvdHRvbTogLTdweDtcbiAgbGVmdDogNnB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudS50b3A6YWZ0ZXIge1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogNnB4IHNvbGlkIHdoaXRlO1xuICBib3R0b206IC02cHg7XG4gIGxlZnQ6IDdweDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnUucHVsbC1yaWdodDpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogNnB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudS5wdWxsLXJpZ2h0OmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDdweDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5saXN0LXVuc3R5bGVkIHtcbiAgbWFyZ2luOiAwO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgYVtkYXRhLWFjdGlvbl0ge1xuICBwYWRkaW5nOiA2cHggMDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IGFbZGF0YS1hY3Rpb25dOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAudGltZXBpY2tlci1ob3VyLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnRpbWVwaWNrZXItbWludXRlLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnRpbWVwaWNrZXItc2Vjb25kIHtcbiAgd2lkdGg6IDU0cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBtYXJnaW46IDA7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCBidXR0b25bZGF0YS1hY3Rpb25dIHtcbiAgcGFkZGluZzogNnB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmJ0bltkYXRhLWFjdGlvbj1cImluY3JlbWVudEhvdXJzXCJdOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIkluY3JlbWVudCBIb3Vyc1wiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmJ0bltkYXRhLWFjdGlvbj1cImluY3JlbWVudE1pbnV0ZXNcIl06OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiSW5jcmVtZW50IE1pbnV0ZXNcIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5idG5bZGF0YS1hY3Rpb249XCJkZWNyZW1lbnRIb3Vyc1wiXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJEZWNyZW1lbnQgSG91cnNcIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5idG5bZGF0YS1hY3Rpb249XCJkZWNyZW1lbnRNaW51dGVzXCJdOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIkRlY3JlbWVudCBNaW51dGVzXCI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuYnRuW2RhdGEtYWN0aW9uPVwic2hvd0hvdXJzXCJdOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIlNob3cgSG91cnNcIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5idG5bZGF0YS1hY3Rpb249XCJzaG93TWludXRlc1wiXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJTaG93IE1pbnV0ZXNcIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5idG5bZGF0YS1hY3Rpb249XCJ0b2dnbGVQZXJpb2RcIl06OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiVG9nZ2xlIEFNL1BNXCI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuYnRuW2RhdGEtYWN0aW9uPVwiY2xlYXJcIl06OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiQ2xlYXIgdGhlIHBpY2tlclwiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmJ0bltkYXRhLWFjdGlvbj1cInRvZGF5XCJdOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIlNldCB0aGUgZGF0ZSB0byB0b2RheVwiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnBpY2tlci1zd2l0Y2gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAucGlja2VyLXN3aXRjaDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJUb2dnbGUgRGF0ZSBhbmQgVGltZSBTY3JlZW5zXCI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAucGlja2VyLXN3aXRjaCB0ZCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAucGlja2VyLXN3aXRjaCB0ZCBzcGFuLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnBpY2tlci1zd2l0Y2ggdGQgaSB7XG4gIGxpbmUtaGVpZ2h0OiAyLjU7XG4gIGhlaWdodDogMi41ZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgcGFkZGluZzogMC41ZW07XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aCB7XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGgucGlja2VyLXN3aXRjaCB7XG4gIHdpZHRoOiAxNDVweDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoLmRpc2FibGVkLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGguZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI2RlZTJlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoLnByZXY6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiUHJldmlvdXMgTW9udGhcIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoLm5leHQ6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiTmV4dCBNb250aFwiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCB7XG4gIGhlaWdodDogNTRweDtcbiAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIHdpZHRoOiA1NHB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuY3cge1xuICBmb250LXNpemU6IDAuOGVtO1xuICBoZWlnaHQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogI2RlZTJlNjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLmRheSB7XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuZGF5OmhvdmVyLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuaG91cjpob3Zlcixcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLm1pbnV0ZTpob3Zlcixcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLnNlY29uZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLm9sZCxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLm5ldyB7XG4gIGNvbG9yOiAjZGVlMmU2O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQudG9kYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC50b2RheTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDAgMCA3cHggN3B4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZGVlMmU2O1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA0cHg7XG4gIHJpZ2h0OiA0cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC5hY3RpdmUsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC5hY3RpdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBjb2xvcjogIzAwN2JmZjtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC5hY3RpdmUudG9kYXk6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLmRpc2FibGVkLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI2RlZTJlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW4sXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTRweDtcbiAgaGVpZ2h0OiA1NHB4O1xuICBsaW5lLWhlaWdodDogNTRweDtcbiAgbWFyZ2luOiAycHggMS41cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW46aG92ZXIsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBpOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW4uYWN0aXZlLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgaS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICBjb2xvcjogIzAwN2JmZjtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBzcGFuLm9sZCxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIGkub2xkIHtcbiAgY29sb3I6ICNkZWUyZTY7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBzcGFuLmRpc2FibGVkLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgaS5kaXNhYmxlZCxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW4uZGlzYWJsZWQ6aG92ZXIsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBpLmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICNkZWUyZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC51c2V0d2VudHlmb3VyIHRkLmhvdXIge1xuICBoZWlnaHQ6IDI3cHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQud2lkZXIge1xuICB3aWR0aDogMjFlbTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5kYXRlcGlja2VyLWRlY2FkZXMgLmRlY2FkZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjhlbSAhaW1wb3J0YW50O1xufVxuLmlucHV0LWdyb3VwLmRhdGUgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmlucHV0LWdyb3VwLmRhdGUgLmlucHV0LWdyb3VwLXRleHQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xufVxuIiwiOnJvb3Qge1xuICAgIC0tdnMtY29sb3JzLS1saWdodGVzdDogcmdiYSg2MCwgNjAsIDYwLCAwLjI2KTtcbiAgICAtLXZzLWNvbG9ycy0tbGlnaHQ6IHJnYmEoNjAsIDYwLCA2MCwgMC41KTtcbiAgICAtLXZzLWNvbG9ycy0tZGFyazogIzMzMztcbiAgICAtLXZzLWNvbG9ycy0tZGFya2VzdDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcblxuICAgIC8qIFNlYXJjaCBJbnB1dCAqL1xuICAgIC0tdnMtc2VhcmNoLWlucHV0LWNvbG9yOiBpbmhlcml0O1xuICAgIC0tdnMtc2VhcmNoLWlucHV0LWJnOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgLS12cy1zZWFyY2gtaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6IGluaGVyaXQ7XG5cbiAgICAvKiBGb250ICovXG4gICAgLS12cy1mb250LXNpemU6IDFyZW07XG4gICAgLS12cy1saW5lLWhlaWdodDogMS40O1xuXG4gICAgLyogRGlzYWJsZWQgU3RhdGUgKi9cbiAgICAtLXZzLXN0YXRlLWRpc2FibGVkLWJnOiByZ2IoMjQ4LCAyNDgsIDI0OCk7XG4gICAgLS12cy1zdGF0ZS1kaXNhYmxlZC1jb2xvcjogdmFyKC0tdnMtY29sb3JzLS1saWdodCk7XG4gICAgLS12cy1zdGF0ZS1kaXNhYmxlZC1jb250cm9scy1jb2xvcjogdmFyKC0tdnMtY29sb3JzLS1saWdodCk7XG4gICAgLS12cy1zdGF0ZS1kaXNhYmxlZC1jdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgLyogQm9yZGVycyAqL1xuICAgIC0tdnMtYm9yZGVyLWNvbG9yOiB2YXIoLS12cy1jb2xvcnMtLWxpZ2h0ZXN0KTtcbiAgICAtLXZzLWJvcmRlci13aWR0aDogMXB4O1xuICAgIC0tdnMtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAtLXZzLWJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgIC8qIEFjdGlvbnM6IGhvdXNlIHRoZSBjb21wb25lbnQgY29udHJvbHMgKi9cbiAgICAtLXZzLWFjdGlvbnMtcGFkZGluZzogNHB4IDZweCAwIDNweDtcblxuICAgIC8qIENvbXBvbmVudCBDb250cm9sczogQ2xlYXIsIE9wZW4gSW5kaWNhdG9yICovXG4gICAgLS12cy1jb250cm9scy1jb2xvcjogdmFyKC0tdnMtY29sb3JzLS1saWdodCk7XG4gICAgLS12cy1jb250cm9scy1zaXplOiAxO1xuICAgIC0tdnMtY29udHJvbHMtLWRlc2VsZWN0LXRleHQtc2hhZG93OiAwIDFweCAwICNmZmY7XG5cbiAgICAvKiBTZWxlY3RlZCAqL1xuICAgIC0tdnMtc2VsZWN0ZWQtYmc6ICNmMGYwZjA7XG4gICAgLS12cy1zZWxlY3RlZC1jb2xvcjogdmFyKC0tdnMtY29sb3JzLS1kYXJrKTtcbiAgICAtLXZzLXNlbGVjdGVkLWJvcmRlci1jb2xvcjogdmFyKC0tdnMtYm9yZGVyLWNvbG9yKTtcbiAgICAtLXZzLXNlbGVjdGVkLWJvcmRlci1zdHlsZTogdmFyKC0tdnMtYm9yZGVyLXN0eWxlKTtcbiAgICAtLXZzLXNlbGVjdGVkLWJvcmRlci13aWR0aDogdmFyKC0tdnMtYm9yZGVyLXdpZHRoKTtcblxuICAgIC8qIERyb3Bkb3duICovXG4gICAgLS12cy1kcm9wZG93bi1iZzogI2ZmZjtcbiAgICAtLXZzLWRyb3Bkb3duLWNvbG9yOiBpbmhlcml0O1xuICAgIC0tdnMtZHJvcGRvd24tei1pbmRleDogMTAwMDtcbiAgICAtLXZzLWRyb3Bkb3duLW1pbi13aWR0aDogMTYwcHg7XG4gICAgLS12cy1kcm9wZG93bi1tYXgtaGVpZ2h0OiAzNTBweDtcbiAgICAtLXZzLWRyb3Bkb3duLWJveC1zaGFkb3c6IDBweCAzcHggNnB4IDBweCB2YXIoLS12cy1jb2xvcnMtLWRhcmtlc3QpO1xuXG4gICAgLyogT3B0aW9ucyAqL1xuICAgIC0tdnMtZHJvcGRvd24tb3B0aW9uLWJnOiAjMDAwO1xuICAgIC0tdnMtZHJvcGRvd24tb3B0aW9uLWNvbG9yOiB2YXIoLS12cy1kcm9wZG93bi1jb2xvcik7XG4gICAgLS12cy1kcm9wZG93bi1vcHRpb24tcGFkZGluZzogM3B4IDIwcHg7XG5cbiAgICAvKiBBY3RpdmUgU3RhdGUgKi9cbiAgICAtLXZzLWRyb3Bkb3duLW9wdGlvbi0tYWN0aXZlLWJnOiAjNTg5N2ZiO1xuICAgIC0tdnMtZHJvcGRvd24tb3B0aW9uLS1hY3RpdmUtY29sb3I6ICNmZmY7XG5cbiAgICAvKiBEZXNlbGVjdCBTdGF0ZSAqL1xuICAgIC0tdnMtZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdC1iZzogI2ZiNTg1ODtcbiAgICAtLXZzLWRyb3Bkb3duLW9wdGlvbi0tZGVzZWxlY3QtY29sb3I6ICNmZmY7XG5cbiAgICAvKiBUcmFuc2l0aW9ucyAqL1xuICAgIC0tdnMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLCAtMC4xMTUsIDAuOTc1LCAwLjg1NSk7XG4gICAgLS12cy10cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcbn1cbiIsIi52LXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbi52LXNlbGVjdCxcbi52LXNlbGVjdCAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbiIsIjpyb290IHtcbiAgICAtLXZzLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMSwgMC41LCAwLjgsIDEpO1xuICAgIC0tdnMtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG59XG5cbi8qIEtleUZyYW1lcyAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHZTZWxlY3RTcGlubmVyIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdlNlbGVjdFNwaW5uZXIge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuLyogRHJvcGRvd24gRGVmYXVsdCBUcmFuc2l0aW9uICovXG4udnNfX2ZhZGUtZW50ZXItYWN0aXZlLFxuLnZzX19mYWRlLWxlYXZlLWFjdGl2ZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS12cy10cmFuc2l0aW9uLWR1cmF0aW9uKVxuICAgICAgICB2YXIoLS12cy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbik7XG59XG4udnNfX2ZhZGUtZW50ZXIsXG4udnNfX2ZhZGUtbGVhdmUtdG8ge1xuICAgIG9wYWNpdHk6IDA7XG59XG4iLCIvKiogQ29tcG9uZW50IFN0YXRlcyAqL1xuXG4vKlxuICogRGlzYWJsZWRcbiAqXG4gKiBXaGVuIHRoZSBjb21wb25lbnQgaXMgZGlzYWJsZWQsIGFsbCBpbnRlcmFjdGlvblxuICogc2hvdWxkIGJlIHByZXZlbnRlZC4gSGVyZSB3ZSBtb2RpZnkgdGhlIGJnIGNvbG9yLFxuICogYW5kIGNoYW5nZSB0aGUgY3Vyc29yIGRpc3BsYXllZCBvbiB0aGUgaW50ZXJhY3RpdmVcbiAqIGNvbXBvbmVudHMuXG4gKi9cblxuOnJvb3Qge1xuICAgIC0tdnMtZGlzYWJsZWQtYmc6IHZhcigtLXZzLXN0YXRlLWRpc2FibGVkLWJnKTtcbiAgICAtLXZzLWRpc2FibGVkLWNvbG9yOiB2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1jb2xvcik7XG4gICAgLS12cy1kaXNhYmxlZC1jdXJzb3I6IHZhcigtLXZzLXN0YXRlLWRpc2FibGVkLWN1cnNvcik7XG59XG5cbi52cy0tZGlzYWJsZWQge1xuICAgIC52c19fZHJvcGRvd24tdG9nZ2xlLFxuICAgIC52c19fY2xlYXIsXG4gICAgLnZzX19zZWFyY2gsXG4gICAgLnZzX19zZWxlY3RlZCxcbiAgICAudnNfX29wZW4taW5kaWNhdG9yIHtcbiAgICAgICAgY3Vyc29yOiB2YXIoLS12cy1kaXNhYmxlZC1jdXJzb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS12cy1kaXNhYmxlZC1iZyk7XG4gICAgfVxufVxuXG4vKlxuICogIFJUTCAtIFJpZ2h0IHRvIExlZnQgU3VwcG9ydFxuICpcbiAqICBCZWNhdXNlIHdlJ3JlIHVzaW5nIGEgZmxleGJveCBsYXlvdXQsIHRoZSBgZGlyPVwicnRsXCJgXG4gKiAgSFRNTCBhdHRyaWJ1dGUgZG9lcyBtb3N0IG9mIHRoZSB3b3JrIGZvciB1cyBieVxuICogIHJlYXJyYW5naW5nIHRoZSBjaGlsZCBlbGVtZW50cyB2aXN1YWxseS5cbiAqL1xuXG4udi1zZWxlY3RbZGlyPSdydGwnXSB7XG4gICAgLnZzX19hY3Rpb25zIHtcbiAgICAgICAgcGFkZGluZzogMCAzcHggMCA2cHg7XG4gICAgfVxuXG4gICAgLnZzX19jbGVhciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG5cbiAgICAudnNfX2Rlc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgIH1cblxuICAgIC52c19fZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbn1cbiIsIi8qKlxuICAgIERyb3Bkb3duIFRvZ2dsZVxuXG4gICAgVGhlIGRyb3Bkb3duIHRvZ2dsZSBpcyB0aGUgcHJpbWFyeSB3cmFwcGVyIG9mIHRoZSBjb21wb25lbnQuIEl0XG4gICAgaGFzIHR3byBkaXJlY3QgZGVzY2VuZGFudHM6IC52c19fc2VsZWN0ZWQtb3B0aW9ucywgYW5kIC52c19fYWN0aW9ucy5cblxuICAgIC52c19fc2VsZWN0ZWQtb3B0aW9ucyBob2xkcyB0aGUgLnZzX19zZWxlY3RlZCdzIGFzIHdlbGwgYXMgdGhlXG4gICAgbWFpbiBzZWFyY2ggaW5wdXQuXG5cbiAgICAudnNfX2FjdGlvbnMgaG9sZHMgdGhlIGNsZWFyIGJ1dHRvbiBhbmQgZHJvcGRvd24gdG9nZ2xlLlxuICovXG5cbi52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMCAwIDRweCAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXZzLXNlYXJjaC1pbnB1dC1iZyk7XG4gICAgYm9yZGVyOiB2YXIoLS12cy1ib3JkZXItd2lkdGgpIHZhcigtLXZzLWJvcmRlci1zdHlsZSkgdmFyKC0tdnMtYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS12cy1ib3JkZXItcmFkaXVzKTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4udnNfX3NlbGVjdGVkLW9wdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmc6IDAgMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnZzX19hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tdnMtYWN0aW9ucy1wYWRkaW5nKTtcbn1cblxuLyogRHJvcGRvd24gVG9nZ2xlIFN0YXRlcyAqL1xuLnZzLS1zZWFyY2hhYmxlIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjdXJzb3I6IHRleHQ7XG59XG4udnMtLXVuc2VhcmNoYWJsZSAudnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuIiwiLyogT3BlbiBJbmRpY2F0b3IgKi9cblxuLypcbiAgVGhlIG9wZW4gaW5kaWNhdG9yIGFwcGVhcnMgYXMgYSBkb3duIGZhY2luZ1xuICBjYXJldCBvbiB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc2VsZWN0LlxuICovXG5cbi52c19fb3Blbi1pbmRpY2F0b3Ige1xuICAgIGZpbGw6IHZhcigtLXZzLWNvbnRyb2xzLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLXZzLWNvbnRyb2xzLXNpemUpKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdnMtdHJhbnNpdGlvbi1kdXJhdGlvbilcbiAgICAgICAgdmFyKC0tdnMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS12cy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbik7XG59XG5cbi8qIE9wZW4gU3RhdGUgKi9cblxuLnZzLS1vcGVuIC52c19fb3Blbi1pbmRpY2F0b3Ige1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgc2NhbGUodmFyKC0tdnMtY29udHJvbHMtc2l6ZSkpO1xufVxuXG4vKiBMb2FkaW5nIFN0YXRlICovXG5cbi52cy0tbG9hZGluZyAudnNfX29wZW4taW5kaWNhdG9yIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuIiwiLyogQ2xlYXIgQnV0dG9uICovXG5cbi52c19fY2xlYXIge1xuICAgIGZpbGw6IHZhcigtLXZzLWNvbnRyb2xzLWNvbG9yKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG4iLCIvKiBEcm9wZG93biBNZW51ICovXG5cbi52c19fZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLyogY2FsYyB0byBlbnN1cmUgdGhlIGxlZnQgYW5kIHJpZ2h0IGJvcmRlcnMgb2YgdGhlIGRyb3Bkb3duIGFwcGVhciBmbHVzaCB3aXRoIHRoZSB0b2dnbGUuICovXG4gICAgdG9wOiBjYWxjKDEwMCUgLSB2YXIoLS12cy1ib3JkZXItd2lkdGgpKTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IHZhcigtLXZzLWRyb3Bkb3duLXotaW5kZXgpO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS12cy1kcm9wZG93bi1tYXgtaGVpZ2h0KTtcbiAgICBtaW4td2lkdGg6IHZhcigtLXZzLWRyb3Bkb3duLW1pbi13aWR0aCk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBib3gtc2hhZG93OiB2YXIoLS12cy1kcm9wZG93bi1ib3gtc2hhZG93KTtcbiAgICBib3JkZXI6IHZhcigtLXZzLWJvcmRlci13aWR0aCkgdmFyKC0tdnMtYm9yZGVyLXN0eWxlKSB2YXIoLS12cy1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXZzLWJvcmRlci1yYWRpdXMpIHZhcigtLXZzLWJvcmRlci1yYWRpdXMpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS12cy1kcm9wZG93bi1iZyk7XG4gICAgY29sb3I6IHZhcigtLXZzLWRyb3Bkb3duLWNvbG9yKTtcbn1cblxuLnZzX19uby1vcHRpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvKiBMaXN0IEl0ZW1zICovXG4udnNfX2Ryb3Bkb3duLW9wdGlvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDM7IC8qIE5vcm1hbGl6ZSBsaW5lIGhlaWdodCAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IHZhcigtLXZzLWRyb3Bkb3duLW9wdGlvbi1wYWRkaW5nKTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb2xvcjogdmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLWNvbG9yKTsgLyogT3ZlcnJpZGVzIG1vc3QgQ1NTIGZyYW1ld29ya3MgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnZzX19kcm9wZG93bi1vcHRpb24tLWhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLS1hY3RpdmUtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tLWFjdGl2ZS1jb2xvcik7XG59XG5cbi52c19fZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdC1iZyk7XG4gICAgY29sb3I6IHZhcigtLXZzLWRyb3Bkb3duLW9wdGlvbi0tZGVzZWxlY3QtY29sb3IpO1xufVxuXG4udnNfX2Ryb3Bkb3duLW9wdGlvbi0tZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXZzLXN0YXRlLWRpc2FibGVkLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtY29sb3IpO1xuICAgIGN1cnNvcjogdmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtY3Vyc29yKTtcbn1cbiIsIi8qIFNlbGVjdGVkIFRhZ3MgKi9cbi52c19fc2VsZWN0ZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS12cy1zZWxlY3RlZC1iZyk7XG4gICAgYm9yZGVyOiB2YXIoLS12cy1zZWxlY3RlZC1ib3JkZXItd2lkdGgpIHZhcigtLXZzLXNlbGVjdGVkLWJvcmRlci1zdHlsZSlcbiAgICAgICAgdmFyKC0tdnMtc2VsZWN0ZWQtYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS12cy1ib3JkZXItcmFkaXVzKTtcbiAgICBjb2xvcjogdmFyKC0tdnMtc2VsZWN0ZWQtY29sb3IpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS12cy1saW5lLWhlaWdodCk7XG4gICAgbWFyZ2luOiA0cHggMnB4IDBweCAycHg7XG4gICAgcGFkZGluZzogMCAwLjI1ZW07XG4gICAgei1pbmRleDogMDtcbn1cblxuLnZzX19kZXNlbGVjdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZpbGw6IHZhcigtLXZzLWNvbnRyb2xzLWNvbG9yKTtcbiAgICB0ZXh0LXNoYWRvdzogdmFyKC0tdnMtY29udHJvbHMtLWRlc2VsZWN0LXRleHQtc2hhZG93KTtcbn1cblxuLyogU3RhdGVzICovXG5cbi52cy0tc2luZ2xlIHtcbiAgICAudnNfX3NlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgICYudnMtLW9wZW4gLnZzX19zZWxlY3RlZCxcbiAgICAmLnZzLS1sb2FkaW5nIC52c19fc2VsZWN0ZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG4gICAgJi52cy0tc2VhcmNoaW5nIC52c19fc2VsZWN0ZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbiIsIi8qIFNlYXJjaCBJbnB1dCAqL1xuXG4vKipcbiAqIFN1cGVyIHdlaXJkIGJ1Zy4uLiBJZiB0aGlzIGRlY2xhcmF0aW9uIGlzIGdyb3VwZWRcbiAqIGJlbG93LCB0aGUgY2FuY2VsIGJ1dHRvbiB3aWxsIHN0aWxsIGFwcGVhciBpbiBjaHJvbWUuXG4gKiBJZiBpdCdzIHVwIGhlcmUgb24gaXQncyBvd24sIGl0J2xsIGhpZGUgaXQuXG4gKi9cbi52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4udnNfX3NlYXJjaDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbi52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcbi52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb24sXG4udnNfX3NlYXJjaDo6LW1zLWNsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4udnNfX3NlYXJjaCxcbi52c19fc2VhcmNoOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tdnMtc2VhcmNoLWlucHV0LWNvbG9yKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS12cy1saW5lLWhlaWdodCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS12cy1mb250LXNpemUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgbWFyZ2luOiA0cHggMCAwIDA7XG4gICAgcGFkZGluZzogMCA3cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgei1pbmRleDogMTtcbn1cblxuLnZzX19zZWFyY2g6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tdnMtc2VhcmNoLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKTtcbn1cblxuLyoqXG4gICAgU3RhdGVzXG4gKi9cblxuLyogVW5zZWFyY2hhYmxlICovXG4udnMtLXVuc2VhcmNoYWJsZSB7XG4gICAgLnZzX19zZWFyY2gge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOm5vdCgudnMtLWRpc2FibGVkKSAudnNfX3NlYXJjaCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59XG5cbi8qIFNpbmdsZSwgd2hlbiBzZWFyY2hpbmcgYnV0IG5vdCBsb2FkaW5nIG9yIG9wZW4gKi9cbi52cy0tc2luZ2xlLnZzLS1zZWFyY2hpbmc6bm90KC52cy0tb3Blbik6bm90KC52cy0tbG9hZGluZykge1xuICAgIC52c19fc2VhcmNoIHtcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgIH1cbn1cbiIsIi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuLnZzX19zcGlubmVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmb250LXNpemU6IDVweDtcbiAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci10b3A6IDAuOWVtIHNvbGlkIHJnYmEoMTAwLCAxMDAsIDEwMCwgMC4xKTtcbiAgICBib3JkZXItcmlnaHQ6IDAuOWVtIHNvbGlkIHJnYmEoMTAwLCAxMDAsIDEwMCwgMC4xKTtcbiAgICBib3JkZXItYm90dG9tOiAwLjllbSBzb2xpZCByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuMSk7XG4gICAgYm9yZGVyLWxlZnQ6IDAuOWVtIHNvbGlkIHJnYmEoNjAsIDYwLCA2MCwgMC40NSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApXG4gICAgICAgIHNjYWxlKHZhcigtLXZzLWNvbnRyb2xzLS1zcGlubmVyLXNpemUsIHZhcigtLXZzLWNvbnRyb2xzLXNpemUpKSk7XG4gICAgYW5pbWF0aW9uOiB2U2VsZWN0U3Bpbm5lciAxLjFzIGluZmluaXRlIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXM7XG59XG4udnNfX3NwaW5uZXIsXG4udnNfX3NwaW5uZXI6YWZ0ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogNWVtO1xuICAgIGhlaWdodDogNWVtO1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tdnMtY29udHJvbHMtLXNwaW5uZXItc2l6ZSwgdmFyKC0tdnMtY29udHJvbHMtc2l6ZSkpKTtcbn1cblxuLyogTG9hZGluZyBTcGlubmVyIFN0YXRlcyAqL1xuLnZzLS1sb2FkaW5nIC52c19fc3Bpbm5lciB7XG4gICAgb3BhY2l0eTogMTtcbn1cbiIsIjpyb290ey0tdnMtY29sb3JzLS1saWdodGVzdDpyZ2JhKDYwLDYwLDYwLDAuMjYpOy0tdnMtY29sb3JzLS1saWdodDpyZ2JhKDYwLDYwLDYwLDAuNSk7LS12cy1jb2xvcnMtLWRhcms6IzMzMzstLXZzLWNvbG9ycy0tZGFya2VzdDpyZ2JhKDAsMCwwLDAuMTUpOy0tdnMtc2VhcmNoLWlucHV0LWNvbG9yOmluaGVyaXQ7LS12cy1zZWFyY2gtaW5wdXQtYmc6I2ZmZjstLXZzLXNlYXJjaC1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcjppbmhlcml0Oy0tdnMtZm9udC1zaXplOjFyZW07LS12cy1saW5lLWhlaWdodDoxLjQ7LS12cy1zdGF0ZS1kaXNhYmxlZC1iZzojZjhmOGY4Oy0tdnMtc3RhdGUtZGlzYWJsZWQtY29sb3I6dmFyKC0tdnMtY29sb3JzLS1saWdodCk7LS12cy1zdGF0ZS1kaXNhYmxlZC1jb250cm9scy1jb2xvcjp2YXIoLS12cy1jb2xvcnMtLWxpZ2h0KTstLXZzLXN0YXRlLWRpc2FibGVkLWN1cnNvcjpub3QtYWxsb3dlZDstLXZzLWJvcmRlci1jb2xvcjp2YXIoLS12cy1jb2xvcnMtLWxpZ2h0ZXN0KTstLXZzLWJvcmRlci13aWR0aDoxcHg7LS12cy1ib3JkZXItc3R5bGU6c29saWQ7LS12cy1ib3JkZXItcmFkaXVzOjRweDstLXZzLWFjdGlvbnMtcGFkZGluZzo0cHggNnB4IDAgM3B4Oy0tdnMtY29udHJvbHMtY29sb3I6dmFyKC0tdnMtY29sb3JzLS1saWdodCk7LS12cy1jb250cm9scy1zaXplOjE7LS12cy1jb250cm9scy0tZGVzZWxlY3QtdGV4dC1zaGFkb3c6MCAxcHggMCAjZmZmOy0tdnMtc2VsZWN0ZWQtYmc6I2YwZjBmMDstLXZzLXNlbGVjdGVkLWNvbG9yOnZhcigtLXZzLWNvbG9ycy0tZGFyayk7LS12cy1zZWxlY3RlZC1ib3JkZXItY29sb3I6dmFyKC0tdnMtYm9yZGVyLWNvbG9yKTstLXZzLXNlbGVjdGVkLWJvcmRlci1zdHlsZTp2YXIoLS12cy1ib3JkZXItc3R5bGUpOy0tdnMtc2VsZWN0ZWQtYm9yZGVyLXdpZHRoOnZhcigtLXZzLWJvcmRlci13aWR0aCk7LS12cy1kcm9wZG93bi1iZzojZmZmOy0tdnMtZHJvcGRvd24tY29sb3I6aW5oZXJpdDstLXZzLWRyb3Bkb3duLXotaW5kZXg6MTAwMDstLXZzLWRyb3Bkb3duLW1pbi13aWR0aDoxNjBweDstLXZzLWRyb3Bkb3duLW1heC1oZWlnaHQ6MzUwcHg7LS12cy1kcm9wZG93bi1ib3gtc2hhZG93OjBweCAzcHggNnB4IDBweCB2YXIoLS12cy1jb2xvcnMtLWRhcmtlc3QpOy0tdnMtZHJvcGRvd24tb3B0aW9uLWJnOiMwMDA7LS12cy1kcm9wZG93bi1vcHRpb24tY29sb3I6dmFyKC0tdnMtZHJvcGRvd24tY29sb3IpOy0tdnMtZHJvcGRvd24tb3B0aW9uLXBhZGRpbmc6M3B4IDIwcHg7LS12cy1kcm9wZG93bi1vcHRpb24tLWFjdGl2ZS1iZzojNTg5N2ZiOy0tdnMtZHJvcGRvd24tb3B0aW9uLS1hY3RpdmUtY29sb3I6I2ZmZjstLXZzLWRyb3Bkb3duLW9wdGlvbi0tZGVzZWxlY3QtYmc6I2ZiNTg1ODstLXZzLWRyb3Bkb3duLW9wdGlvbi0tZGVzZWxlY3QtY29sb3I6I2ZmZjstLXZzLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigxLC0wLjExNSwwLjk3NSwwLjg1NSk7LS12cy10cmFuc2l0aW9uLWR1cmF0aW9uOjE1MG1zfS52LXNlbGVjdHtmb250LWZhbWlseTppbmhlcml0O3Bvc2l0aW9uOnJlbGF0aXZlfS52LXNlbGVjdCwudi1zZWxlY3QgKntib3gtc2l6aW5nOmJvcmRlci1ib3h9OnJvb3R7LS12cy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMSwwLjUsMC44LDEpOy0tdnMtdHJhbnNpdGlvbi1kdXJhdGlvbjowLjE1c31ALXdlYmtpdC1rZXlmcmFtZXMgdlNlbGVjdFNwaW5uZXJ7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB2U2VsZWN0U3Bpbm5lcnswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0udnNfX2ZhZGUtZW50ZXItYWN0aXZlLC52c19fZmFkZS1sZWF2ZS1hY3RpdmV7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgdmFyKC0tdnMtdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdnMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pfS52c19fZmFkZS1lbnRlciwudnNfX2ZhZGUtbGVhdmUtdG97b3BhY2l0eTowfTpyb290ey0tdnMtZGlzYWJsZWQtYmc6dmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtYmcpOy0tdnMtZGlzYWJsZWQtY29sb3I6dmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtY29sb3IpOy0tdnMtZGlzYWJsZWQtY3Vyc29yOnZhcigtLXZzLXN0YXRlLWRpc2FibGVkLWN1cnNvcil9LnZzLS1kaXNhYmxlZCAudnNfX2NsZWFyLC52cy0tZGlzYWJsZWQgLnZzX19kcm9wZG93bi10b2dnbGUsLnZzLS1kaXNhYmxlZCAudnNfX29wZW4taW5kaWNhdG9yLC52cy0tZGlzYWJsZWQgLnZzX19zZWFyY2gsLnZzLS1kaXNhYmxlZCAudnNfX3NlbGVjdGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tdnMtZGlzYWJsZWQtYmcpO2N1cnNvcjp2YXIoLS12cy1kaXNhYmxlZC1jdXJzb3IpfS52LXNlbGVjdFtkaXI9cnRsXSAudnNfX2FjdGlvbnN7cGFkZGluZzowIDNweCAwIDZweH0udi1zZWxlY3RbZGlyPXJ0bF0gLnZzX19jbGVhcnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0OjB9LnYtc2VsZWN0W2Rpcj1ydGxdIC52c19fZGVzZWxlY3R7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MnB4fS52LXNlbGVjdFtkaXI9cnRsXSAudnNfX2Ryb3Bkb3duLW1lbnV7dGV4dC1hbGlnbjpyaWdodH0udnNfX2Ryb3Bkb3duLXRvZ2dsZXstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZDp2YXIoLS12cy1zZWFyY2gtaW5wdXQtYmcpO2JvcmRlcjp2YXIoLS12cy1ib3JkZXItd2lkdGgpIHZhcigtLXZzLWJvcmRlci1zdHlsZSkgdmFyKC0tdnMtYm9yZGVyLWNvbG9yKTtib3JkZXItcmFkaXVzOnZhcigtLXZzLWJvcmRlci1yYWRpdXMpO2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjAgMCA0cHg7d2hpdGUtc3BhY2U6bm9ybWFsfS52c19fc2VsZWN0ZWQtb3B0aW9uc3tkaXNwbGF5OmZsZXg7ZmxleC1iYXNpczoxMDAlO2ZsZXgtZ3JvdzoxO2ZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6MCAycHg7cG9zaXRpb246cmVsYXRpdmV9LnZzX19hY3Rpb25ze2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7cGFkZGluZzp2YXIoLS12cy1hY3Rpb25zLXBhZGRpbmcpfS52cy0tc2VhcmNoYWJsZSAudnNfX2Ryb3Bkb3duLXRvZ2dsZXtjdXJzb3I6dGV4dH0udnMtLXVuc2VhcmNoYWJsZSAudnNfX2Ryb3Bkb3duLXRvZ2dsZXtjdXJzb3I6cG9pbnRlcn0udnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGV7Ym9yZGVyLWJvdHRvbS1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0udnNfX29wZW4taW5kaWNhdG9ye2ZpbGw6dmFyKC0tdnMtY29udHJvbHMtY29sb3IpO3RyYW5zZm9ybTpzY2FsZSh2YXIoLS12cy1jb250cm9scy1zaXplKSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdnMtdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdnMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXZzLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKX0udnMtLW9wZW4gLnZzX19vcGVuLWluZGljYXRvcnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZykgc2NhbGUodmFyKC0tdnMtY29udHJvbHMtc2l6ZSkpfS52cy0tbG9hZGluZyAudnNfX29wZW4taW5kaWNhdG9ye29wYWNpdHk6MH0udnNfX2NsZWFye2ZpbGw6dmFyKC0tdnMtY29udHJvbHMtY29sb3IpO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOjA7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luLXJpZ2h0OjhweDtwYWRkaW5nOjB9LnZzX19kcm9wZG93bi1tZW51e2JhY2tncm91bmQ6dmFyKC0tdnMtZHJvcGRvd24tYmcpO2JvcmRlcjp2YXIoLS12cy1ib3JkZXItd2lkdGgpIHZhcigtLXZzLWJvcmRlci1zdHlsZSkgdmFyKC0tdnMtYm9yZGVyLWNvbG9yKTtib3JkZXItcmFkaXVzOjAgMCB2YXIoLS12cy1ib3JkZXItcmFkaXVzKSB2YXIoLS12cy1ib3JkZXItcmFkaXVzKTtib3JkZXItdG9wLXN0eWxlOm5vbmU7Ym94LXNoYWRvdzp2YXIoLS12cy1kcm9wZG93bi1ib3gtc2hhZG93KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tdnMtZHJvcGRvd24tY29sb3IpO2Rpc3BsYXk6YmxvY2s7bGVmdDowO2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDttYXgtaGVpZ2h0OnZhcigtLXZzLWRyb3Bkb3duLW1heC1oZWlnaHQpO21pbi13aWR0aDp2YXIoLS12cy1kcm9wZG93bi1taW4td2lkdGgpO292ZXJmbG93LXk6YXV0bztwYWRkaW5nOjVweCAwO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246bGVmdDt0b3A6Y2FsYygxMDAlIC0gdmFyKC0tdnMtYm9yZGVyLXdpZHRoKSk7d2lkdGg6MTAwJTt6LWluZGV4OnZhcigtLXZzLWRyb3Bkb3duLXotaW5kZXgpfS52c19fbm8tb3B0aW9uc3t0ZXh0LWFsaWduOmNlbnRlcn0udnNfX2Ryb3Bkb3duLW9wdGlvbntjbGVhcjpib3RoO2NvbG9yOnZhcigtLXZzLWRyb3Bkb3duLW9wdGlvbi1jb2xvcik7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxLjQyODU3MTQzO3BhZGRpbmc6dmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLXBhZGRpbmcpO3doaXRlLXNwYWNlOm5vd3JhcH0udnNfX2Ryb3Bkb3duLW9wdGlvbi0taGlnaGxpZ2h0e2JhY2tncm91bmQ6dmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLS1hY3RpdmUtYmcpO2NvbG9yOnZhcigtLXZzLWRyb3Bkb3duLW9wdGlvbi0tYWN0aXZlLWNvbG9yKX0udnNfX2Ryb3Bkb3duLW9wdGlvbi0tZGVzZWxlY3R7YmFja2dyb3VuZDp2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tLWRlc2VsZWN0LWJnKTtjb2xvcjp2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tLWRlc2VsZWN0LWNvbG9yKX0udnNfX2Ryb3Bkb3duLW9wdGlvbi0tZGlzYWJsZWR7YmFja2dyb3VuZDp2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1iZyk7Y29sb3I6dmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtY29sb3IpO2N1cnNvcjp2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1jdXJzb3IpfS52c19fc2VsZWN0ZWR7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tdnMtc2VsZWN0ZWQtYmcpO2JvcmRlcjp2YXIoLS12cy1zZWxlY3RlZC1ib3JkZXItd2lkdGgpIHZhcigtLXZzLXNlbGVjdGVkLWJvcmRlci1zdHlsZSkgdmFyKC0tdnMtc2VsZWN0ZWQtYm9yZGVyLWNvbG9yKTtib3JkZXItcmFkaXVzOnZhcigtLXZzLWJvcmRlci1yYWRpdXMpO2NvbG9yOnZhcigtLXZzLXNlbGVjdGVkLWNvbG9yKTtkaXNwbGF5OmZsZXg7bGluZS1oZWlnaHQ6dmFyKC0tdnMtbGluZS1oZWlnaHQpO21hcmdpbjo0cHggMnB4IDA7cGFkZGluZzowIC4yNWVtO3otaW5kZXg6MH0udnNfX2Rlc2VsZWN0e2ZpbGw6dmFyKC0tdnMtY29udHJvbHMtY29sb3IpOy13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOjA7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW4tbGVmdDo0cHg7cGFkZGluZzowO3RleHQtc2hhZG93OnZhcigtLXZzLWNvbnRyb2xzLS1kZXNlbGVjdC10ZXh0LXNoYWRvdyl9LnZzLS1zaW5nbGUgLnZzX19zZWxlY3RlZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0udnMtLXNpbmdsZS52cy0tbG9hZGluZyAudnNfX3NlbGVjdGVkLC52cy0tc2luZ2xlLnZzLS1vcGVuIC52c19fc2VsZWN0ZWR7b3BhY2l0eTouNDtwb3NpdGlvbjphYnNvbHV0ZX0udnMtLXNpbmdsZS52cy0tc2VhcmNoaW5nIC52c19fc2VsZWN0ZWR7ZGlzcGxheTpub25lfS52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9ue2Rpc3BsYXk6bm9uZX0udnNfX3NlYXJjaDo6LW1zLWNsZWFyLC52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uLC52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbiwudnNfX3NlYXJjaDo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1kZWNvcmF0aW9ue2Rpc3BsYXk6bm9uZX0udnNfX3NlYXJjaCwudnNfX3NlYXJjaDpmb2N1c3std2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZDpub25lO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWxlZnQ6bm9uZTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dmFyKC0tdnMtc2VhcmNoLWlucHV0LWNvbG9yKTtmbGV4LWdyb3c6MTtmb250LXNpemU6dmFyKC0tdnMtZm9udC1zaXplKTtsaW5lLWhlaWdodDp2YXIoLS12cy1saW5lLWhlaWdodCk7bWFyZ2luOjRweCAwIDA7bWF4LXdpZHRoOjEwMCU7b3V0bGluZTpub25lO3BhZGRpbmc6MCA3cHg7d2lkdGg6MDt6LWluZGV4OjF9LnZzX19zZWFyY2g6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdnMtc2VhcmNoLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKX0udnNfX3NlYXJjaDotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdnMtc2VhcmNoLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKX0udnNfX3NlYXJjaDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdnMtc2VhcmNoLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKX0udnMtLXVuc2VhcmNoYWJsZSAudnNfX3NlYXJjaHtvcGFjaXR5OjF9LnZzLS11bnNlYXJjaGFibGU6bm90KC52cy0tZGlzYWJsZWQpIC52c19fc2VhcmNoe2N1cnNvcjpwb2ludGVyfS52cy0tc2luZ2xlLnZzLS1zZWFyY2hpbmc6bm90KC52cy0tb3Blbik6bm90KC52cy0tbG9hZGluZykgLnZzX19zZWFyY2h7b3BhY2l0eTouMn0udnNfX3NwaW5uZXJ7YWxpZ24tc2VsZjpjZW50ZXI7LXdlYmtpdC1hbmltYXRpb246dlNlbGVjdFNwaW5uZXIgMS4xcyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOnZTZWxlY3RTcGlubmVyIDEuMXMgbGluZWFyIGluZmluaXRlO2JvcmRlcjouOWVtIHNvbGlkIGhzbGEoMCwwJSwzOSUsLjEpO2JvcmRlci1sZWZ0LWNvbG9yOnJnYmEoNjAsNjAsNjAsLjQ1KTtmb250LXNpemU6NXB4O29wYWNpdHk6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1pbmRlbnQ6LTk5OTllbTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZSh2YXIoLS12cy1jb250cm9scy0tc3Bpbm5lci1zaXplLHZhcigtLXZzLWNvbnRyb2xzLXNpemUpKSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xc30udnNfX3NwaW5uZXIsLnZzX19zcGlubmVyOmFmdGVye2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDo1ZW07dHJhbnNmb3JtOnNjYWxlKHZhcigtLXZzLWNvbnRyb2xzLS1zcGlubmVyLXNpemUsdmFyKC0tdnMtY29udHJvbHMtc2l6ZSkpKTt3aWR0aDo1ZW19LnZzLS1sb2FkaW5nIC52c19fc3Bpbm5lcntvcGFjaXR5OjF9XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPXZ1ZS1zZWxlY3QuY3NzLm1hcCovIiwiLyohXG4gKiBDb3B5cmlnaHQgKGMpIEhBTkRTT05DT0RFIHNwLiB6IG8uIG8uXG4gKiBcbiAqIEhBTkRTT05UQUJMRSBpcyBhIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIGJ5IEhBTkRTT05DT0RFIHNwLiB6IG8uIG8uLCBhIFBvbGlzaCBjb3Jwb3JhdGlvbiBiYXNlZCBpblxuICogR2R5bmlhLCBQb2xhbmQsIGF0IEFsZWphIFp3eWNpZcyoc3R3YSA5Ni05OCwgcmVnaXN0ZXJlZCBieSB0aGUgRGlzdHJpY3QgQ291cnQgaW4gR2RhbnNrIHVuZGVyIG51bWJlclxuICogNTM4NjUxLCBFVSB0YXggSUQgbnVtYmVyOiBQTDU4NjIyOTQwMDIsIHNoYXJlIGNhcGl0YWw6IFBMTiA2Miw4MDAuMDAuXG4gKiBcbiAqIFRoaXMgc29mdHdhcmUgaXMgcHJvdGVjdGVkIGJ5IGFwcGxpY2FibGUgY29weXJpZ2h0IGxhd3MsIGluY2x1ZGluZyBpbnRlcm5hdGlvbmFsIHRyZWF0aWVzLCBhbmQgZHVhbC1cbiAqIGxpY2Vuc2VkIOKAkyBkZXBlbmRpbmcgb24gd2hldGhlciB5b3VyIHVzZSBmb3IgY29tbWVyY2lhbCBwdXJwb3NlcywgbWVhbmluZyBpbnRlbmRlZCBmb3Igb3JcbiAqIHJlc3VsdGluZyBpbiBjb21tZXJjaWFsIGFkdmFudGFnZSBvciBtb25ldGFyeSBjb21wZW5zYXRpb24sIG9yIG5vdC5cbiAqIFxuICogSWYgeW91ciB1c2UgaXMgc3RyaWN0bHkgcGVyc29uYWwgb3Igc29sZWx5IGZvciBldmFsdWF0aW9uIHB1cnBvc2VzLCBtZWFuaW5nIGZvciB0aGUgcHVycG9zZXMgb2YgdGVzdGluZ1xuICogdGhlIHN1aXRhYmlsaXR5LCBwZXJmb3JtYW5jZSwgYW5kIHVzZWZ1bG5lc3Mgb2YgdGhpcyBzb2Z0d2FyZSBvdXRzaWRlIHRoZSBwcm9kdWN0aW9uIGVudmlyb25tZW50LFxuICogeW91IGFncmVlIHRvIGJlIGJvdW5kIGJ5IHRoZSB0ZXJtcyBpbmNsdWRlZCBpbiB0aGUgXCJoYW5kc29udGFibGUtbm9uLWNvbW1lcmNpYWwtbGljZW5zZS5wZGZcIiBmaWxlLlxuICogXG4gKiBZb3VyIHVzZSBvZiB0aGlzIHNvZnR3YXJlIGZvciBjb21tZXJjaWFsIHB1cnBvc2VzIGlzIHN1YmplY3QgdG8gdGhlIHRlcm1zIGluY2x1ZGVkIGluIGFuIGFwcGxpY2FibGVcbiAqIGxpY2Vuc2UgYWdyZWVtZW50LlxuICogXG4gKiBJbiBhbnkgY2FzZSwgeW91IG11c3Qgbm90IG1ha2UgYW55IHN1Y2ggdXNlIG9mIHRoaXMgc29mdHdhcmUgYXMgdG8gZGV2ZWxvcCBzb2Z0d2FyZSB3aGljaCBtYXkgYmVcbiAqIGNvbnNpZGVyZWQgY29tcGV0aXRpdmUgd2l0aCB0aGlzIHNvZnR3YXJlLlxuICogXG4gKiBVTkxFU1MgRVhQUkVTU0xZIEFHUkVFRCBPVEhFUldJU0UsIEhBTkRTT05DT0RFIFBST1ZJREVTIFRISVMgU09GVFdBUkUgT04gQU4gXCJBUyBJU1wiXG4gKiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIEFORCBJTiBOTyBFVkVOVCBBTkQgVU5ERVIgTk9cbiAqIExFR0FMIFRIRU9SWSwgU0hBTEwgSEFORFNPTkNPREUgQkUgTElBQkxFIFRPIFlPVSBGT1IgREFNQUdFUywgSU5DTFVESU5HIEFOWSBESVJFQ1QsXG4gKiBJTkRJUkVDVCwgU1BFQ0lBTCwgSU5DSURFTlRBTCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9GIEFOWSBDSEFSQUNURVIgQVJJU0lORyBGUk9NXG4gKiBVU0UgT1IgSU5BQklMSVRZIFRPIFVTRSBUSElTIFNPRlRXQVJFLlxuICogXG4gKiBWZXJzaW9uOiAxMi4zLjBcbiAqIFJlbGVhc2UgZGF0ZTogMTQvMTIvMjAyMiAoYnVpbHQgYXQgMTQvMTIvMjAyMiAxMjoyNjo0NilcbiAqL1xuLyoqXG4gKiBGaXggZm9yIGJvb3RzdHJhcCBzdHlsZXNcbiAqL1xuLmhhbmRzb250YWJsZSAudGFibGUgdGgsIC5oYW5kc29udGFibGUgLnRhYmxlIHRkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLmhhbmRzb250YWJsZSB0ciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5oYW5kc29udGFibGUgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uaGFuZHNvbnRhYmxlIC50YWJsZSBjYXB0aW9uICsgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSBjYXB0aW9uICsgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGQsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSBjb2xncm91cCArIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoLFxuLmhhbmRzb250YWJsZSAudGFibGUgY29sZ3JvdXAgKyB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0ZCxcbi5oYW5kc29udGFibGUgLnRhYmxlIHRoZWFkOmZpcnN0LWNoaWxkIHRyOmZpcnN0LWNoaWxkIHRoLFxuLmhhbmRzb250YWJsZSAudGFibGUgdGhlYWQ6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0NDQ0NDQztcbn1cblxuLyogdGFibGUtYm9yZGVyZWQgKi9cbi5oYW5kc29udGFibGUgLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xufVxuXG4uaGFuZHNvbnRhYmxlIC50YWJsZS1ib3JkZXJlZCB0aCxcbi5oYW5kc29udGFibGUgLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgLnRhYmxlLWJvcmRlcmVkIHRoOmZpcnN0LWNoaWxkLFxuLmhhbmRzb250YWJsZSAudGFibGUtYm9yZGVyZWQgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNDQ0NDQ0M7XG59XG5cbi5oYW5kc29udGFibGUgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuLmhhbmRzb250YWJsZSAudGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSA+IHRmb290ID4gdHIgPiB0ZCxcbi5oYW5kc29udGFibGUgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLFxuLmhhbmRzb250YWJsZSAudGFibGUgPiB0aGVhZCA+IHRyID4gdGQsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY29sLWxnLTEuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTEwLmhhbmRzb250YWJsZSwgLmNvbC1sZy0xMS5oYW5kc29udGFibGUsIC5jb2wtbGctMTIuaGFuZHNvbnRhYmxlLFxuLmNvbC1sZy0yLmhhbmRzb250YWJsZSwgLmNvbC1sZy0zLmhhbmRzb250YWJsZSwgLmNvbC1sZy00LmhhbmRzb250YWJsZSwgLmNvbC1sZy01LmhhbmRzb250YWJsZSwgLmNvbC1sZy02LmhhbmRzb250YWJsZSwgLmNvbC1sZy03LmhhbmRzb250YWJsZSwgLmNvbC1sZy04LmhhbmRzb250YWJsZSwgLmNvbC1sZy05LmhhbmRzb250YWJsZSxcbi5jb2wtbWQtMS5oYW5kc29udGFibGUsIC5jb2wtbWQtMTAuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTExLmhhbmRzb250YWJsZSwgLmNvbC1tZC0xMi5oYW5kc29udGFibGUsXG4uY29sLW1kLTIuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTMuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTQuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTUuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTYuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTcuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTguaGFuZHNvbnRhYmxlLCAuY29sLW1kLTkuaGFuZHNvbnRhYmxlIC5jb2wtc20tMS5oYW5kc29udGFibGUsXG4uY29sLXNtLTEwLmhhbmRzb250YWJsZSwgLmNvbC1zbS0xMS5oYW5kc29udGFibGUsIC5jb2wtc20tMTIuaGFuZHNvbnRhYmxlLFxuLmNvbC1zbS0yLmhhbmRzb250YWJsZSwgLmNvbC1zbS0zLmhhbmRzb250YWJsZSwgLmNvbC1zbS00LmhhbmRzb250YWJsZSwgLmNvbC1zbS01LmhhbmRzb250YWJsZSwgLmNvbC1zbS02LmhhbmRzb250YWJsZSwgLmNvbC1zbS03LmhhbmRzb250YWJsZSwgLmNvbC1zbS04LmhhbmRzb250YWJsZSwgLmNvbC1zbS05LmhhbmRzb250YWJsZSAuY29sLXhzLTEuaGFuZHNvbnRhYmxlLFxuLmNvbC14cy0xMC5oYW5kc29udGFibGUsIC5jb2wteHMtMTEuaGFuZHNvbnRhYmxlLCAuY29sLXhzLTEyLmhhbmRzb250YWJsZSxcbi5jb2wteHMtMi5oYW5kc29udGFibGUsIC5jb2wteHMtMy5oYW5kc29udGFibGUsIC5jb2wteHMtNC5oYW5kc29udGFibGUsIC5jb2wteHMtNS5oYW5kc29udGFibGUsIC5jb2wteHMtNi5oYW5kc29udGFibGUsIC5jb2wteHMtNy5oYW5kc29udGFibGUsIC5jb2wteHMtOC5oYW5kc29udGFibGUsIC5jb2wteHMtOS5oYW5kc29udGFibGUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5oYW5kc29udGFibGUgLnRhYmxlLXN0cmlwZWQgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbn1cbi5oYW5kc29udGFibGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW5kc29udGFibGUgLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbmRzb250YWJsZSAud3RIaWRlciB7XG4gIHdpZHRoOiAwO1xufVxuXG4uaGFuZHNvbnRhYmxlIC53dFNwcmVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKm11c3QgYmUgMCwgb3RoZXJ3aXNlIGJsYW5rIHNwYWNlIGFwcGVhcnMgaW4gc2Nyb2xsIGRlbW8gYWZ0ZXIgc2Nyb2xsaW5nIG1heCB0byB0aGUgcmlnaHQgKi9cbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmhhbmRzb250YWJsZSB0YWJsZSxcbi5oYW5kc29udGFibGUgdGJvZHksXG4uaGFuZHNvbnRhYmxlIHRoZWFkLFxuLmhhbmRzb250YWJsZSB0ZCxcbi5oYW5kc29udGFibGUgdGgsXG4uaGFuZHNvbnRhYmxlIGlucHV0LFxuLmhhbmRzb250YWJsZSB0ZXh0YXJlYSxcbi5oYW5kc29udGFibGUgZGl2IHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi5oYW5kc29udGFibGUgaW5wdXQsXG4uaGFuZHNvbnRhYmxlIHRleHRhcmVhIHtcbiAgbWluLWhlaWdodDogaW5pdGlhbDtcbn1cblxuLmhhbmRzb250YWJsZSB0YWJsZS5odENvcmUge1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAvKiBpdCBtdXN0IGJlIHNlcGFyYXRlLCBvdGhlcndpc2UgdGhlcmUgYXJlIG9mZnNldCBtaXNjYWxjdWxhdGlvbnMgaW4gV2ViS2l0OiBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzI2NTU5ODcvYm9yZGVyLWNvbGxhcHNlLWRpZmZlcmVuY2VzLWluLWZmLWFuZC13ZWJraXQgKi9cbiAgLyogdGhpcyBhY3R1YWxseSBvbmx5IGNoYW5nZXMgYXBwZWFyYW5jZSBvZiB1c2VyIHNlbGVjdGlvbiAtIGRvZXMgbm90IG1ha2UgdGV4dCB1bnNlbGVjdGFibGUgKi9cbiAgLyogLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtby11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7IC8vIG5vIGJyb3dzZXIgc3VwcG9ydHMgdW5wcmVmaXhlZCB2ZXJzaW9uXG4gICovXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgd2lkdGg6IDA7XG4gIG91dGxpbmUtd2lkdGg6IDA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgLyogcmVzZXQgYm9vdHN0cmFwIHRhYmxlIHN0eWxlLiBmb3IgbW9yZSBpbmZvIHNlZTogaHR0cHM6Ly9naXRodWIuY29tL2hhbmRzb250YWJsZS9oYW5kc29udGFibGUvaXNzdWVzLzIyNCAqL1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgY29sIHtcbiAgd2lkdGg6IDUwcHg7XG59XG5cbi5oYW5kc29udGFibGUgY29sLnJvd0hlYWRlciB7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLFxuLmhhbmRzb250YWJsZSB0ZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgaGVpZ2h0OiAyMnB4O1xuICBlbXB0eS1jZWxsczogc2hvdztcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIHBhZGRpbmc6IDAgNHB4IDAgNHB4O1xuICAvKiB0b3AsIGJvdHRvbSBwYWRkaW5nIGRpZmZlcmVudCB0aGFuIDAgaXMgaGFuZGxlZCBwb29ybHkgYnkgRkYgd2l0aCBIVE1MNSBkb2N0eXBlICovXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG91dGxpbmUtd2lkdGg6IDA7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0aCwgW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0ZCB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoOmxhc3QtY2hpbGQge1xuICAvKkZvdW5kYXRpb24gZnJhbWV3b3JrIGZpeCovXG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0aDpsYXN0LWNoaWxkIHtcbiAgLypGb3VuZGF0aW9uIGZyYW1ld29yayBmaXgqL1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYztcbn1cblxuLmhhbmRzb250YWJsZSB0aDpmaXJzdC1jaGlsZCxcbi5oYW5kc29udGFibGUgdGg6bnRoLWNoaWxkKDIpLFxuLmhhbmRzb250YWJsZSB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoOmZpcnN0LWNoaWxkLCBbZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoOm50aC1jaGlsZCgyKSwgW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjYztcbn1cblxuLyogSXQgcmVtb3ZlcyBkb3VibGUgcmlnaHQgYm9yZGVyIGZyb20gZmlyc3QgY29sdW1uIGhlYWRlciB3aGVuIHJvdyBoZWFkZXJzIGFyZSBkaXNhYmxlZCAqL1xuLmhhbmRzb250YWJsZSAuaHRfY2xvbmVfdG9wIHRoOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odF9jbG9uZV90b3AgdGg6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2M7XG59XG5cbi5oYW5kc29udGFibGUuaHRSb3dIZWFkZXJzIHRoZWFkIHRyIHRoOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYztcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZS5odFJvd0hlYWRlcnMgdGhlYWQgdHIgdGg6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjYztcbn1cblxuLmhhbmRzb250YWJsZSB0cjpmaXJzdC1jaGlsZCB0aCxcbi5oYW5kc29udGFibGUgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbn1cblxuLmh0X21hc3Rlcjpub3QoLmlubmVyQm9yZGVySW5saW5lU3RhcnQpOm5vdCguZW1wdHlDb2x1bW5zKSB+IC5oYW5kc29udGFibGUgdGJvZHkgdHIgdGgsXG4uaHRfbWFzdGVyOm5vdCguaW5uZXJCb3JkZXJJbmxpbmVTdGFydCk6bm90KC5lbXB0eUNvbHVtbnMpIH4gLmhhbmRzb250YWJsZTpub3QoLmh0X2Nsb25lX3RvcCkgdGhlYWQgdHIgdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYztcbn1cblxuW2Rpcj1ydGxdLmh0X21hc3Rlcjpub3QoLmlubmVyQm9yZGVySW5saW5lU3RhcnQpOm5vdCguZW1wdHlDb2x1bW5zKSB+IC5oYW5kc29udGFibGUgdGJvZHkgdHIgdGgsIFtkaXI9cnRsXS5odF9tYXN0ZXI6bm90KC5pbm5lckJvcmRlcklubGluZVN0YXJ0KTpub3QoLmVtcHR5Q29sdW1ucykgfiAuaGFuZHNvbnRhYmxlOm5vdCguaHRfY2xvbmVfdG9wKSB0aGVhZCB0ciB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4vKlxuaW5uZXJCb3JkZXJUb3AgLSBQcm9wZXJ0eSBjb250cm9sbGVkIGJ5IHRvcCBvdmVybGF5XG5pbm5lckJvcmRlckJvdHRvbSAtIFByb3BlcnR5IGNvbnRyb2xsZWQgYnkgYm90dG9tIG92ZXJsYXlcbiAqL1xuLmh0X21hc3Rlcjpub3QoLmlubmVyQm9yZGVyVG9wKTpub3QoLmlubmVyQm9yZGVyQm90dG9tKSB0aGVhZCB0cjpsYXN0LWNoaWxkIHRoLFxuLmh0X21hc3Rlcjpub3QoLmlubmVyQm9yZGVyVG9wKTpub3QoLmlubmVyQm9yZGVyQm90dG9tKSB+IC5oYW5kc29udGFibGUgdGhlYWQgdHI6bGFzdC1jaGlsZCB0aCxcbi5odF9tYXN0ZXI6bm90KC5pbm5lckJvcmRlclRvcCk6bm90KC5pbm5lckJvcmRlckJvdHRvbSkgdGhlYWQgdHIubGFzdENoaWxkIHRoLFxuLmh0X21hc3Rlcjpub3QoLmlubmVyQm9yZGVyVG9wKTpub3QoLmlubmVyQm9yZGVyQm90dG9tKSB+IC5oYW5kc29udGFibGUgdGhlYWQgdHIubGFzdENoaWxkIHRoIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cblxuLmhhbmRzb250YWJsZSB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG4gIGNvbG9yOiAjMjIyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5oYW5kc29udGFibGUgdGhlYWQgdGgge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG59XG5cbi5oYW5kc29udGFibGUgdGhlYWQgdGggLnJlbGF0aXZlIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbn1cblxuLmhhbmRzb250YWJsZSBzcGFuLmNvbEhlYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuLyogU2VsZWN0aW9uICovXG4uaGFuZHNvbnRhYmxlIC53dEJvcmRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAwO1xufVxuXG4uaGFuZHNvbnRhYmxlIC53dEJvcmRlci5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIEEgbGF5ZXIgb3JkZXIgb2YgdGhlIHNlbGVjdGlvbiB0eXBlcyAqL1xuLmhhbmRzb250YWJsZSAud3RCb3JkZXIuY3VycmVudCB7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uaGFuZHNvbnRhYmxlIC53dEJvcmRlci5hcmVhIHtcbiAgei1pbmRleDogODtcbn1cblxuLmhhbmRzb250YWJsZSAud3RCb3JkZXIuZmlsbCB7XG4gIHotaW5kZXg6IDY7XG59XG5cbi8qIGZpbGwgaGFuZGxlICovXG4uaGFuZHNvbnRhYmxlIC53dEJvcmRlci5jb3JuZXIge1xuICBmb250LXNpemU6IDA7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xufVxuXG4uaHRfY2xvbmVfbWFzdGVyIHtcbiAgei1pbmRleDogMTAwO1xufVxuXG4uaHRfY2xvbmVfaW5saW5lX3N0YXJ0IHtcbiAgei1pbmRleDogMTIwO1xufVxuXG4uaHRfY2xvbmVfYm90dG9tIHtcbiAgei1pbmRleDogMTMwO1xufVxuXG4uaHRfY2xvbmVfYm90dG9tX2lubGluZV9zdGFydF9jb3JuZXIge1xuICB6LWluZGV4OiAxNTA7XG59XG5cbi5odF9jbG9uZV90b3Age1xuICB6LWluZGV4OiAxNjA7XG59XG5cbi5odF9jbG9uZV90b3BfaW5saW5lX3N0YXJ0X2Nvcm5lciB7XG4gIHotaW5kZXg6IDE4MDtcbn1cblxuLmhhbmRzb250YWJsZSBjb2wuaGlkZGVuIHtcbiAgd2lkdGg6IDAgIWltcG9ydGFudDtcbn1cblxuLmhhbmRzb250YWJsZSB0ci5oaWRkZW4sXG4uaGFuZHNvbnRhYmxlIHRyLmhpZGRlbiB0ZCxcbi5oYW5kc29udGFibGUgdHIuaGlkZGVuIHRoIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmh0X21hc3Rlcixcbi5odF9jbG9uZV9pbmxpbmVfc3RhcnQsXG4uaHRfY2xvbmVfdG9wLFxuLmh0X2Nsb25lX2JvdHRvbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5odF9tYXN0ZXIgLnd0SG9sZGVyIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5oYW5kc29udGFibGUgLmh0X21hc3RlciB0aGVhZCxcbi5oYW5kc29udGFibGUgLmh0X21hc3RlciB0ciB0aCxcbi5oYW5kc29udGFibGUgLmh0X2Nsb25lX2lubGluZV9zdGFydCB0aGVhZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmh0X2Nsb25lX3RvcCAud3RIb2xkZXIsXG4uaHRfY2xvbmVfaW5saW5lX3N0YXJ0IC53dEhvbGRlcixcbi5odF9jbG9uZV9ib3R0b20gLnd0SG9sZGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBjaGFyc2V0IFwiVVRGLThcIjtcbi5oYW5kc29udGFibGUge1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMzczNzM3O1xufVxuXG4uaGFuZHNvbnRhYmxlIGEge1xuICBjb2xvcjogIzEwNGFjYztcbn1cblxuLmhhbmRzb250YWJsZS5odEF1dG9TaXplIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBsZWZ0OiAtOTkwMDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTAwMHB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmh0SW52YWxpZCB7XG4gIC8qZ2l2ZXMgcHJpb3JpdHkgb3ZlciB0ZC5hcmVhIHNlbGVjdGlvbiBiYWNrZ3JvdW5kKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNGM0MiAhaW1wb3J0YW50O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmh0Tm9XcmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuI2hvdC1kaXNwbGF5LWxpY2Vuc2UtaW5mbyB7XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzM3MzczNztcbiAgcGFkZGluZzogNXB4IDAgM3B4IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbiNob3QtZGlzcGxheS1saWNlbnNlLWluZm8gYSB7XG4gIGNvbG9yOiAjMTA0YWNjO1xuICBmb250LXNpemU6IDEwcHg7XG59XG5cbi8qIHBsdWdpbnMgKi9cbi8qIHJvdyArIGNvbHVtbiByZXNpemVyKi9cbi5oYW5kc29udGFibGUgLm1hbnVhbENvbHVtblJlc2l6ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICB6LWluZGV4OiAyMTA7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogMjVweDtcbn1cblxuLmhhbmRzb250YWJsZSAubWFudWFsUm93UmVzaXplciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgY3Vyc29yOiByb3ctcmVzaXplO1xuICB6LWluZGV4OiAyMTA7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogNTBweDtcbn1cblxuLmhhbmRzb250YWJsZSAubWFudWFsQ29sdW1uUmVzaXplcjpob3Zlcixcbi5oYW5kc29udGFibGUgLm1hbnVhbENvbHVtblJlc2l6ZXIuYWN0aXZlLFxuLmhhbmRzb250YWJsZSAubWFudWFsUm93UmVzaXplcjpob3Zlcixcbi5oYW5kc29udGFibGUgLm1hbnVhbFJvd1Jlc2l6ZXIuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0YTlkYjtcbn1cblxuLmhhbmRzb250YWJsZSAubWFudWFsQ29sdW1uUmVzaXplckd1aWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogdW5zZXQ7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0YTlkYjtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IGRhc2hlZCAjNzc3O1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAubWFudWFsQ29sdW1uUmVzaXplckd1aWRlIHtcbiAgbGVmdDogdW5zZXQ7XG4gIGJvcmRlci1sZWZ0OiAxcHggZGFzaGVkICM3Nzc7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1sZWZ0OiB1bnNldDtcbn1cblxuLmhhbmRzb250YWJsZSAubWFudWFsUm93UmVzaXplckd1aWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNGE5ZGI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjNzc3O1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5oYW5kc29udGFibGUgLm1hbnVhbENvbHVtblJlc2l6ZXJHdWlkZS5hY3RpdmUsXG4uaGFuZHNvbnRhYmxlIC5tYW51YWxSb3dSZXNpemVyR3VpZGUuYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDIwOTtcbn1cblxuLmhhbmRzb250YWJsZSAuY29sdW1uU29ydGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbmRzb250YWJsZSAuY29sdW1uU29ydGluZy5zb3J0QWN0aW9uOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn0gLyogQXJyb3cgcG9zaXRpb24gKi9cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZzo6YmVmb3JlIHtcbiAgLyogQ2VudGVyaW5nIHN0YXJ0ICovXG4gIHRvcDogNTAlO1xuICAvKiBPbmUgZXh0cmEgcGl4ZWwgZm9yIHB1cnBvc2Ugb2YgcHJvcGVyIHBvc2l0aW9uaW5nIG9mIHNvcnRpbmcgYXJyb3csIHdoZW4gYGZvbnQtc2l6ZWAgc2V0IHRvIGRlZmF1bHQgKi9cbiAgbWFyZ2luLXRvcDogLTZweDtcbiAgLyogQ2VudGVyaW5nIGVuZCAqL1xuICAvKiBGb3IgcHVycG9zZSBvZiBjb250aW51b3VzIG1vdXNlIG92ZXIgZXhwZXJpZW5jZSwgd2hlbiBtb3ZpbmcgYmV0d2VlbiB0aGUgYHNwYW5gIGFuZCB0aGUgYDo6YmVmb3JlYCBlbGVtZW50cyAqL1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTlweDtcbiAgbGVmdDogdW5zZXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMTBweDtcbiAgd2lkdGg6IDVweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IHJpZ2h0O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmc6OmJlZm9yZSB7XG4gIC8qIENlbnRlcmluZyBlbmQgKi9cbiAgLyogRm9yIHB1cnBvc2Ugb2YgY29udGludW91cyBtb3VzZSBvdmVyIGV4cGVyaWVuY2UsIHdoZW4gbW92aW5nIGJldHdlZW4gdGhlIGBzcGFuYCBhbmQgdGhlIGA6OmJlZm9yZWAgZWxlbWVudHMgKi9cbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxlZnQ6IC05cHg7XG4gIHJpZ2h0OiB1bnNldDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBsZWZ0O1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuYXNjZW5kaW5nOjpiZWZvcmUge1xuICAvKiBhcnJvdyB1cDsgMjAgeCA0MCBweCwgc2NhbGVkIHRvIDUgeCAxMCBweDsgYmFzZTY0IHNpemU6IDAuM2tCICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQlFBQUFBb0NBTUFBQURKN3lycEFBQUFLbEJNVkVVQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLRTg2SUFBQUFEWFJTVGxNQUJCRW1SR3BybEpXNzJlNzd0VGtUS3dBQUFGTkpSRUZVZUFIdHpqa1NnQ0FVQk5IUGdzb3k5Nyt1bEdYUnFKRTVMK3hreG9ZdDJVZHNMYjVicUZJTnorYUx1dUxuNXJJdTJSa08zZlpwV0VOaW1OZ2l3NmlCWVJUUE1MSmpHRnhRWjFoeHhiL3hCSTFxQzhrMzlDZEtBQUFBQUVsRlRrU3VRbUNDXCIpO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuZGVzY2VuZGluZzo6YmVmb3JlIHtcbiAgLyogYXJyb3cgZG93bjsgMjAgeCA0MCBweCwgc2NhbGVkIHRvIDUgeCAxMCBweDsgYmFzZTY0IHNpemU6IDAuM2tCICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQlFBQUFBb0NBTUFBQURKN3lycEFBQUFLbEJNVkVVQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLRTg2SUFBQUFEWFJTVGxNQUJCRW1SR3BybEpXNzJlNzd0VGtUS3dBQUFGSkpSRUZVZUFIdHpqa1NnQ0FRUk5GbVFZVVo3bjlkS1V2cnUwVG12UEFuM2JyMFFmZ2RaNXh4NngrclFuMjNHcVRZbnExRkRjbnV6WklPMldtZWRWcUlSVnhnR0tFeWpOZ1lSaktHa1oxaEZJWjNJNzBMeU0wVnRVOEFBQUFBU1VWT1JLNUNZSUk9XCIpO1xufVxuXG4uaHRHaG9zdFRhYmxlIC5odENvcmUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZzpub3QoLmluZGljYXRvckRpc2FibGVkKTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIipcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIFRoZSBtdWx0aS1saW5lIGhlYWRlciBhbmQgaGVhZGVyIHdpdGggbG9uZ2VyIHRleHQgbmVlZCBtb3JlIHBhZGRpbmcgdG8gbm90IGhpZGUgYXJyb3csXG4gIHdlIG1ha2UgaGVhZGVyIHdpZGVyIGluIGBHaG9zdFRhYmxlYCB0byBtYWtlIHNvbWUgc3BhY2UgZm9yIGFycm93IHdoaWNoIGlzIHBvc2l0aW9uZWQgYWJzb2x1dGVseSBpbiB0aGUgbWFpbiB0YWJsZSAqL1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEsXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEtMSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS0yLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTMsXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEtNCxcbi5oYW5kc29udGFibGUgdGQuYXJlYS01LFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTYsXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhOmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS0xOmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS0yOmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS0zOmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS00OmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS01OmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS02OmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS03OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICAvKiBGaXggZm9yIElFOSB0byBzcHJlYWQgdGhlIFwiOmJlZm9yZVwiIHBzZXVkbyBlbGVtZW50IHRvIDEwMCUgaGVpZ2h0IG9mIHRoZSBwYXJlbnQgZWxlbWVudCAqL1xuICBib3R0b206IC0xMDAlIFxcOSA7XG4gIGJhY2tncm91bmQ6ICMwMDVlZmY7XG59XG5cbi8qIEZpeCBmb3IgSUUxMCBhbmQgSUUxMSB0byBzcHJlYWQgdGhlIFwiOmJlZm9yZVwiIHBzZXVkbyBlbGVtZW50IHRvIDEwMCUgaGVpZ2h0IG9mIHRoZSBwYXJlbnQgZWxlbWVudCAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmhhbmRzb250YWJsZSB0ZC5hcmVhOmJlZm9yZSxcbiAgLmhhbmRzb250YWJsZSB0ZC5hcmVhLTE6YmVmb3JlLFxuICAuaGFuZHNvbnRhYmxlIHRkLmFyZWEtMjpiZWZvcmUsXG4gIC5oYW5kc29udGFibGUgdGQuYXJlYS0zOmJlZm9yZSxcbiAgLmhhbmRzb250YWJsZSB0ZC5hcmVhLTQ6YmVmb3JlLFxuICAuaGFuZHNvbnRhYmxlIHRkLmFyZWEtNTpiZWZvcmUsXG4gIC5oYW5kc29udGFibGUgdGQuYXJlYS02OmJlZm9yZSxcbiAgLmhhbmRzb250YWJsZSB0ZC5hcmVhLTc6YmVmb3JlIHtcbiAgICBib3R0b206IC0xMDAlO1xuICB9XG59XG4uaGFuZHNvbnRhYmxlIHRkLmFyZWE6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4xO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEtMTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjI7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYS0yOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMjc7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYS0zOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMzU7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYS00OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNDE7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYS01OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNDc7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYS02OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNTQ7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYS03OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNTg7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGguaHRfX2hpZ2hsaWdodCxcbi5oYW5kc29udGFibGUgdGhlYWQgdGguaHRfX2hpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkY2RjZGM7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGguaHRfX2FjdGl2ZV9oaWdobGlnaHQsXG4uaGFuZHNvbnRhYmxlIHRoZWFkIHRoLmh0X19hY3RpdmVfaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhlYjBlNztcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5oYW5kc29udGFibGVJbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZS13aWR0aDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxcHggNXB4IDAgNXB4O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICM1MjkyRjcgaW5zZXQ7XG4gIHJlc2l6ZTogbm9uZTtcbiAgLypiZWxvdyBhcmUgbmVlZGVkIHRvIG92ZXJ3cml0ZSBzdHVmZiBhZGRlZCBieSBqUXVlcnkgVUkgQm9vdHN0cmFwIHRoZW1lKi9cbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAvKm92ZXJ3cml0ZSBzdHlsZXMgcG90ZW50aW9uYWxseSBtYWRlIGJ5IGEgZnJhbWV3b3JrKi9cbn1cblxuLmhhbmRzb250YWJsZUlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmhhbmRzb250YWJsZUlucHV0SG9sZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5odFNlbGVjdEVkaXRvciB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbWVudWxpc3QtYnV0dG9uICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5odFNlbGVjdEVkaXRvcjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi8qXG5UZXh0UmVuZGVyZXIgcmVhZE9ubHkgY2VsbFxuKi9cbi5oYW5kc29udGFibGUgLmh0RGltbWVkIHtcbiAgY29sb3I6ICM3Nzc7XG59XG5cbi5oYW5kc29udGFibGUgLmh0U3VibWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRTdWJtZW51IDphZnRlciB7XG4gIGNvbnRlbnQ6IFwi4pa2XCI7XG4gIGNvbG9yOiAjNzc3O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA1cHg7XG4gIGZvbnQtc2l6ZTogOXB4O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odFN1Ym1lbnUgOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuaHRTdWJtZW51IDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKXgFwiO1xuICBjb2xvcjogIzc3NztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1cHg7XG4gIGZvbnQtc2l6ZTogOXB4O1xufVxuXG4vKlxuVGV4dFJlbmRlcmVyIGhvcml6b250YWwgYWxpZ25tZW50XG4qL1xuLmhhbmRzb250YWJsZSAuaHRMZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRDZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oYW5kc29udGFibGUgLmh0UmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRKdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLypcblRleHRSZW5kZXJlciB2ZXJ0aWNhbCBhbGlnbm1lbnRcbiovXG4uaGFuZHNvbnRhYmxlIC5odFRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5oYW5kc29udGFibGUgLmh0TWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRCb3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4vKlxuVGV4dFJlbmRlcmVyIHBsYWNlaG9sZGVyIHZhbHVlXG4qL1xuLmhhbmRzb250YWJsZSAuaHRQbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4vKipcbiAqIEhhbmRzb250YWJsZSBsaXN0Ym94IHRoZW1lXG4gKi9cbi5oYW5kc29udGFibGUubGlzdGJveCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmhhbmRzb250YWJsZS5saXN0Ym94IC5odF9tYXN0ZXIgdGFibGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLmhhbmRzb250YWJsZS5saXN0Ym94IHRoLFxuLmhhbmRzb250YWJsZS5saXN0Ym94IHRyOmZpcnN0LWNoaWxkIHRoLFxuLmhhbmRzb250YWJsZS5saXN0Ym94IHRyOmxhc3QtY2hpbGQgdGgsXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggdHI6Zmlyc3QtY2hpbGQgdGQsXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggdGQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi5oYW5kc29udGFibGUubGlzdGJveCB0aCxcbi5oYW5kc29udGFibGUubGlzdGJveCB0ZCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggdGQuaHREaW1tZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXN0eWxlOiBpbmhlcml0O1xufVxuXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggLnd0Qm9yZGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggdHIgdGQuY3VycmVudCxcbi5oYW5kc29udGFibGUubGlzdGJveCB0cjpob3ZlciB0ZCB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG59XG5cbi5odF9lZGl0b3JfaGlkZGVuIHtcbiAgei1pbmRleDogLTE7XG59XG5cbi5odF9lZGl0b3JfdmlzaWJsZSB7XG4gIHotaW5kZXg6IDIwMDtcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5odFNlYXJjaFJlc3VsdCB7XG4gIGJhY2tncm91bmQ6ICNmY2VkZDk7XG4gIGNvbG9yOiAjNTgzNzA3O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5jb2xsYXBzaWJsZUluZGljYXRvciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgbGVmdDogdW5zZXQ7XG4gIHJpZ2h0OiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNBNkE2QTY7XG4gIGxpbmUtaGVpZ2h0OiA4cHg7XG4gIGNvbG9yOiAjMjIyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCA2cHggcmdiKDIzOCwgMjM4LCAyMzgpO1xuICAtbW96LWJveC1zaGFkb3c6IDAgMCAwIDZweCByZ2IoMjM4LCAyMzgsIDIzOCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDZweCByZ2IoMjM4LCAyMzgsIDIzOCk7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuY29sbGFwc2libGVJbmRpY2F0b3Ige1xuICByaWdodDogdW5zZXQ7XG4gIGxlZnQ6IDVweDtcbn1cbi8qXG5cbiBIYW5kc29udGFibGUgTW9iaWxlIFRleHQgRWRpdG9yIHN0eWxlc2hlZXRcblxuICovXG4uaGFuZHNvbnRhYmxlLm1vYmlsZSxcbi5oYW5kc29udGFibGUubW9iaWxlIC53dEhvbGRlciB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLmhhbmRzb250YWJsZS5tb2JpbGUgLmhhbmRzb250YWJsZUlucHV0OmZvY3VzIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAycHggIzUyOTJmNyBpbnNldDtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDAgMCAycHggIzUyOTJmNyBpbnNldDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICM1MjkyZjcgaW5zZXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnRvcFNlbGVjdGlvbkhhbmRsZTpub3QoLmh0X21hc3RlciAudG9wU2VsZWN0aW9uSGFuZGxlKSxcbi50b3BTZWxlY3Rpb25IYW5kbGUtSGl0QXJlYTpub3QoLmh0X21hc3RlciAudG9wU2VsZWN0aW9uSGFuZGxlLUhpdEFyZWEpIHtcbiAgei1pbmRleDogOTk5OTtcbn1cblxuLyogSW5pdGlhbCBsZWZ0L3RvcCBjb29yZGluYXRlcyAtIG92ZXJ3cml0dGVuIHdoZW4gYWN0dWFsIHBvc2l0aW9uIGlzIHNldCAqL1xuLmhhbmRzb250YWJsZSAudG9wU2VsZWN0aW9uSGFuZGxlLFxuLmhhbmRzb250YWJsZSAudG9wU2VsZWN0aW9uSGFuZGxlLUhpdEFyZWEsXG4uaGFuZHNvbnRhYmxlIC5ib3R0b21TZWxlY3Rpb25IYW5kbGUsXG4uaGFuZHNvbnRhYmxlIC5ib3R0b21TZWxlY3Rpb25IYW5kbGUtSGl0QXJlYSB7XG4gIGxlZnQ6IC0xMDAwMHB4O1xuICByaWdodDogdW5zZXQ7XG4gIHRvcDogLTEwMDAwcHg7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLnRvcFNlbGVjdGlvbkhhbmRsZSwgW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAudG9wU2VsZWN0aW9uSGFuZGxlLUhpdEFyZWEsIFtkaXI9cnRsXS5oYW5kc29udGFibGUgLmJvdHRvbVNlbGVjdGlvbkhhbmRsZSwgW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuYm90dG9tU2VsZWN0aW9uSGFuZGxlLUhpdEFyZWEge1xuICByaWdodDogLTEwMDAwcHg7XG4gIGxlZnQ6IHVuc2V0O1xufVxuXG4uaGFuZHNvbnRhYmxlLmhpZGUtdHdlZW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogb3BhY2l0eS1oaWRlIDAuM3M7XG4gIGFuaW1hdGlvbjogb3BhY2l0eS1oaWRlIDAuM3M7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xufVxuXG4uaGFuZHNvbnRhYmxlLnNob3ctdHdlZW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogb3BhY2l0eS1zaG93IDAuM3M7XG4gIGFuaW1hdGlvbjogb3BhY2l0eS1zaG93IDAuM3M7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xufVxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBQaWthZGF5XG4gKiBDb3B5cmlnaHQgwqkgMjAxNCBEYXZpZCBCdXNoZWxsIHwgQlNEICYgTUlUIGxpY2Vuc2UgfCBodHRwczovL2RidXNoZWxsLmNvbS9cbiAqL1xuLnBpa2Etc2luZ2xlIHtcbiAgei1pbmRleDogOTk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiYmI7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG59XG5cbi8qXG5jbGVhciBjaGlsZCBmbG9hdCAocGlrYS1sZW5kYXIpLCB1c2luZyB0aGUgZmFtb3VzIG1pY3JvIGNsZWFyZml4IGhhY2tcbmh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuKi9cbi5waWthLXNpbmdsZTpiZWZvcmUsXG4ucGlrYS1zaW5nbGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5waWthLXNpbmdsZTphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGlrYS1zaW5nbGUuaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBpa2Etc2luZ2xlLmlzLWJvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3gtc2hhZG93OiAwIDVweCAxNXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4ucGlrYS1sZW5kYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI0MHB4O1xuICBtYXJnaW46IDhweDtcbn1cblxuLnBpa2EtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBpa2EtbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA1cHggM3B4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnBpa2EtdGl0bGUgc2VsZWN0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDk5OTg7XG4gIG1hcmdpbjogMDtcbiAgbGVmdDogMDtcbiAgdG9wOiA1cHg7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5waWthLXByZXYsXG4ucGlrYS1uZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIC8qIGhpZGUgdGV4dCB1c2luZyB0ZXh0LWluZGVudCB0cmljaywgdXNpbmcgd2lkdGggdmFsdWUgKGl0J3MgZW5vdWdoKSAqL1xuICB0ZXh0LWluZGVudDogMjBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNzUlIDc1JTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ucGlrYS1wcmV2OmhvdmVyLFxuLnBpa2EtbmV4dDpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5waWthLXByZXYsXG4uaXMtcnRsIC5waWthLW5leHQge1xuICBmbG9hdDogbGVmdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFlQ0FZQUFBQXNFajVyQUFBQVVrbEVRVlI0MnUzVk1Rb0FJQkFEUWY4UGdqK09EOWhHMkN0T05KQjJ5bVFrS2UwSGJ3QVAweHVjRGlRV0FSSVRJREVCRW5NZ01ROFM4K0FxQklsNmtLZ0hpWHFRcUFlSmVwQm8vejM4Si9VMHVBSGxhQmtCbDlJNEd3QUFBQUJKUlU1RXJrSmdnZz09XCIpO1xufVxuXG4ucGlrYS1uZXh0LFxuLmlzLXJ0bCAucGlrYS1wcmV2IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVTBsRVFWUjQydTNWT3dvQU1BZ0UwZHdmQW5OalUyNmJZa0JDRkd3ZmlMOVZWV29PK0JKNEdmM2d0c0VLS29GQk5UQ29DQVlWd2FBaUdOUUdNVUhNa2pHYmdqazJtSU9OdVhvMG5DOFhuQ2YxSlhnQXJWSVpBUWg1VEtZQUFBQUFTVVZPUks1Q1lJST1cIik7XG59XG5cbi5waWthLXByZXYuaXMtZGlzYWJsZWQsXG4ucGlrYS1uZXh0LmlzLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjI7XG59XG5cbi5waWthLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnBpa2EtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLnBpa2EtdGFibGUgdGgsXG4ucGlrYS10YWJsZSB0ZCB7XG4gIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbiAgcGFkZGluZzogMDtcbn1cblxuLnBpa2EtdGFibGUgdGgge1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBpa2EtYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweDtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBoZWlnaHQ6IGluaXRpYWw7XG59XG5cbi5waWthLXdlZWsge1xuICBmb250LXNpemU6IDExcHg7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4uaXMtdG9kYXkgLnBpa2EtYnV0dG9uIHtcbiAgY29sb3I6ICMzM2FhZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uaXMtc2VsZWN0ZWQgLnBpa2EtYnV0dG9uLFxuLmhhcy1ldmVudCAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6ICMzM2FhZmY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCAjMTc4ZmU1O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5oYXMtZXZlbnQgLnBpa2EtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzAwNWRhOTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4ICMwMDc2Yzk7XG59XG5cbi5pcy1kaXNhYmxlZCAucGlrYS1idXR0b24sXG4uaXMtaW5yYW5nZSAucGlrYS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjRDVFOUY3O1xufVxuXG4uaXMtc3RhcnRyYW5nZSAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzZDQjMxRDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4uaXMtZW5kcmFuZ2UgLnBpa2EtYnV0dG9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMzM2FhZmY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLmlzLWRpc2FibGVkIC5waWthLWJ1dHRvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGNvbG9yOiAjOTk5O1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi5pcy1vdXRzaWRlLWN1cnJlbnQtbW9udGggLnBpa2EtYnV0dG9uIHtcbiAgY29sb3I6ICM5OTk7XG4gIG9wYWNpdHk6IDAuMztcbn1cblxuLmlzLXNlbGVjdGlvbi1kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5waWthLWJ1dHRvbjpob3Zlcixcbi5waWthLXJvdy5waWNrLXdob2xlLXdlZWs6aG92ZXIgLnBpa2EtYnV0dG9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICNmZjgwMDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLyogc3R5bGluZyBmb3IgYWJiciAqL1xuLnBpa2EtdGFibGUgYWJiciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGN1cnNvcjogaGVscDtcbn1cbi8qXG5BdXRvY29tcGxldGVSZW5kZXJlciBkb3duIGFycm93XG4qL1xuLmhhbmRzb250YWJsZSAuaHRBdXRvY29tcGxldGVBcnJvdyB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogI0VFRTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB3aWR0aDogMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odEF1dG9jb21wbGV0ZUFycm93IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5oYW5kc29udGFibGUgdGQgLmh0QXV0b2NvbXBsZXRlQXJyb3c6aG92ZXIge1xuICBjb2xvcjogIzc3Nztcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhIC5odEF1dG9jb21wbGV0ZUFycm93IHtcbiAgY29sb3I6ICNkM2QzZDM7XG59XG4vKlxuQ2hlY2tib3hSZW5kZXJlclxuKi9cbi5oYW5kc29udGFibGUgLmh0Q2hlY2tib3hSZW5kZXJlcklucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odENoZWNrYm94UmVuZGVyZXJJbnB1dC5ub1ZhbHVlIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odENoZWNrYm94UmVuZGVyZXJMYWJlbCB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5oYW5kc29udGFibGUgLmh0Q2hlY2tib3hSZW5kZXJlckxhYmVsLmZ1bGxXaWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmhhbmRzb250YWJsZSAuaHRDb21tZW50Q2VsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRDb21tZW50Q2VsbDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogdW5zZXQ7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLXRvcDogNnB4IHNvbGlkIGJsYWNrO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odENvbW1lbnRDZWxsOmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IHVuc2V0O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi5odENvbW1lbnRzQ29udGFpbmVyIC5odENvbW1lbnRzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogMTA1OTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uaHRDb21tZW50c0NvbnRhaW5lciAuaHRDb21tZW50VGV4dEFyZWEge1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTE3NjQ3KSAwIDFweCAzcHgsIHJnYmEoMCwgMCwgMCwgMC4yMzkyMTYpIDAgMXB4IDJweDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjY2NjO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHdpZHRoOiAyMTVweDtcbiAgaGVpZ2h0OiA5MHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgb3V0bGluZTogMHB4ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW2Rpcj1ydGxdLmh0Q29tbWVudHNDb250YWluZXIgLmh0Q29tbWVudFRleHRBcmVhIHtcbiAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgI2NjYztcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi5odENvbW1lbnRzQ29udGFpbmVyIC5odENvbW1lbnRUZXh0QXJlYTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xMTc2NDcpIDAgMXB4IDNweCwgcmdiYSgwLCAwLCAwLCAwLjIzOTIxNikgMCAxcHggMnB4LCBpbnNldCAwIDAgMCAxcHggIzUyOTJmNztcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjNTI5MmY3O1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbltkaXI9cnRsXS5odENvbW1lbnRzQ29udGFpbmVyIC5odENvbW1lbnRUZXh0QXJlYTpmb2N1cyB7XG4gIGJvcmRlci1yaWdodDogM3B4IHNvbGlkICM1MjkyZjc7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuLyohXG4gKiBIYW5kc29udGFibGUgQ29udGV4dE1lbnVcbiAqL1xuLmh0Q29udGV4dE1lbnU6bm90KC5odEdob3N0VGFibGUpIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAvKiBuZWVkcyB0byBiZSBoaWdoZXIgdGhhbiAxMDUwIC0gei1pbmRleCBmb3IgVHdpdHRlciBCb290c3RyYXAgbW9kYWwgKCMxNTY5KSAqL1xuICB6LWluZGV4OiAxMDYwO1xufVxuXG4uaHRDb250ZXh0TWVudSAuaHRfY2xvbmVfdG9wLFxuLmh0Q29udGV4dE1lbnUgLmh0X2Nsb25lX2JvdHRvbSxcbi5odENvbnRleHRNZW51IC5odF9jbG9uZV9pbmxpbmVfc3RhcnQsXG4uaHRDb250ZXh0TWVudSAuaHRfY2xvbmVfdG9wX2lubGluZV9zdGFydF9jb3JuZXIsXG4uaHRDb250ZXh0TWVudSAuaHRfY2xvbmVfYm90dG9tX2lubGluZV9zdGFydF9jb3JuZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaHRDb250ZXh0TWVudSAuaHRfbWFzdGVyIHRhYmxlLmh0Q29yZSB7XG4gIGJvcmRlci1jb2xvcjogI2NjYztcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMnB4O1xufVxuXG5bZGlyPXJ0bF0uaHRDb250ZXh0TWVudSAuaHRfbWFzdGVyIHRhYmxlLmh0Q29yZSB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMnB4O1xufVxuXG4uaHRDb250ZXh0TWVudSAud3RCb3JkZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgcGFkZGluZzogNHB4IDZweCAwIDZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xufVxuXG5bZGlyPXJ0bF0uaHRDb250ZXh0TWVudSB0YWJsZSB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG5cbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0RGltbWVkIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogIzMyMzIzMjtcbn1cblxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQuY3VycmVudCxcbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkLnplcm9jbGlwYm9hcmQtaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjNmM2YzO1xufVxuXG4uaHRDb250ZXh0TWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5odFNlcGFyYXRvciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaXNhYmxlZCB7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0RGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzk5OTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uaHRDb250ZXh0TWVudSB0YWJsZSB0Ym9keSB0ci5odEhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkIC5odEl0ZW1XcmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogNnB4O1xufVxuXG4uaHRDb250ZXh0TWVudSB0YWJsZSB0Ym9keSB0ciB0ZCBkaXYgc3Bhbi5zZWxlY3RlZCB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNHB4O1xufVxuXG4uaHRDb250ZXh0TWVudSAuaHRfbWFzdGVyIC53dEhvbGRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG50ZXh0YXJlYS5IYW5kc29udGFibGVDb3B5UGFzdGUge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIG91dGxpbmU6IDAgbm9uZSAhaW1wb3J0YW50O1xufVxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBIYW5kc29udGFibGUgRHJvcGRvd25NZW51XG4gKi9cbi5oYW5kc29udGFibGUgLmNoYW5nZVR5cGUge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiYmI7XG4gIGNvbG9yOiAjYmJiO1xuICBmb250LXNpemU6IDlweDtcbiAgbGluZS1oZWlnaHQ6IDlweDtcbiAgcGFkZGluZzogMnB4O1xuICBtYXJnaW46IDNweCAxcHggMCA1cHg7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuY2hhbmdlVHlwZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5jaGFuZ2VUeXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pa8IFwiO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5jaGFuZ2VUeXBlOmhvdmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc3NztcbiAgY29sb3I6ICM3Nzc7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmh0RHJvcGRvd25NZW51Om5vdCguaHRHaG9zdFRhYmxlKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLyogbmVlZHMgdG8gYmUgaGlnaGVyIHRoYW4gMTA1MCAtIHotaW5kZXggZm9yIFR3aXR0ZXIgQm9vdHN0cmFwIG1vZGFsICgjMTU2OSkgKi9cbiAgei1pbmRleDogMTA2MDtcbn1cblxuLmh0RHJvcGRvd25NZW51IC5odF9jbG9uZV90b3AsXG4uaHREcm9wZG93bk1lbnUgLmh0X2Nsb25lX2JvdHRvbSxcbi5odERyb3Bkb3duTWVudSAuaHRfY2xvbmVfaW5saW5lX3N0YXJ0LFxuLmh0RHJvcGRvd25NZW51IC5odF9jbG9uZV90b3BfaW5saW5lX3N0YXJ0X2Nvcm5lcixcbi5odERyb3Bkb3duTWVudSAuaHRfY2xvbmVfYm90dG9tX2lubGluZV9zdGFydF9jb3JuZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUuaHRDb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG59XG5cbltkaXI9cnRsXS5odERyb3Bkb3duTWVudSB0YWJsZS5odENvcmUge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDJweDtcbn1cblxuLmh0RHJvcGRvd25NZW51IC53dEJvcmRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgcGFkZGluZzogNHB4IDZweCAwIDZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbn1cblxuW2Rpcj1ydGxdLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0RGltbWVkIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogIzMyMzIzMjtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkLmN1cnJlbnQsXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQuemVyb2NsaXBib2FyZC1pcy1ob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlOWU5ZTk7XG59XG5cbi5odERyb3Bkb3duTWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5odFNlcGFyYXRvciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0RGlzYWJsZWQge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0RGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzk5OTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uaHREcm9wZG93bk1lbnU6bm90KC5odEdob3N0VGFibGUpIHRhYmxlIHRib2R5IHRyLmh0SGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkIC5odEl0ZW1XcmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkIGRpdiBzcGFuLnNlbGVjdGVkIHtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA0cHg7XG59XG5cbi5odERyb3Bkb3duTWVudSAuaHRfbWFzdGVyIC53dEhvbGRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbmRzb250YWJsZSBGaWx0ZXJzXG4gKi9cbi8qIENvbmRpdGlvbnMgbWVudSAqL1xuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51Om5vdCguaHRHaG9zdFRhYmxlKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IC5odF9jbG9uZV90b3AsXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgLmh0X2Nsb25lX2lubGluZV9zdGFydCxcbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSAuaHRfY2xvbmVfY29ybmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlLmh0Q29yZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiYmI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSAud3RCb3JkZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIHBhZGRpbmc6IDRweCA2cHggMCA2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG5cbltkaXI9cnRsXS5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5odERpbW1lZCB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6ICMzMjMyMzI7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5jdXJyZW50LFxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkLnplcm9jbGlwYm9hcmQtaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xufVxuXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHRTZXBhcmF0b3Ige1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaXNhYmxlZCB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZCAuaHRJdGVtV3JhcHBlciB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZCBkaXYgc3Bhbi5zZWxlY3RlZCB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNHB4O1xufVxuXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgLmh0X21hc3RlciAud3RIb2xkZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odE1lbnVGaWx0ZXJpbmcge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNjY2M7XG4gIGhlaWdodDogMTM1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5oYW5kc29udGFibGUgLmh0X21hc3RlciB0YWJsZSB0ZC5odEN1c3RvbU1lbnVSZW5kZXJlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLyogTWVudSBsYWJlbCAqL1xuLmhhbmRzb250YWJsZSAuaHRGaWx0ZXJzTWVudUxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG59XG5cbi8qIENvbXBvbmVudCBhY3Rpb24gYmFyICovXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51QWN0aW9uQmFyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDNweDtcbn1cblxuLyogQ29tcG9uZW50IGZpbHRlciBieSBjb25kaXRpb25hbCAqL1xuLmhhbmRzb250YWJsZSAuaHRGaWx0ZXJzTWVudUNvbmRpdGlvbi5ib3JkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNjY2MgIWltcG9ydGFudDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRGaWx0ZXJzTWVudUNvbmRpdGlvbiAuaHRVSUlucHV0IHtcbiAgcGFkZGluZzogMCAwIDVweCAwO1xufVxuXG4vKiBDb21wb25lbnQgZmlsdGVyIGJ5IHZhbHVlICovXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51VmFsdWUge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNjY2MgIWltcG9ydGFudDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRGaWx0ZXJzTWVudVZhbHVlIC5odFVJTXVsdGlwbGVTZWxlY3RTZWFyY2gge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51Q29uZGl0aW9uIC5odFVJSW5wdXQgaW5wdXQsXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51VmFsdWUgLmh0VUlNdWx0aXBsZVNlbGVjdFNlYXJjaCBpbnB1dCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgcGFkZGluZzogNHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmh0VUlNdWx0aXBsZVNlbGVjdCAuaHRfbWFzdGVyIC53dEhvbGRlciB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRGaWx0ZXJzQWN0aXZlIC5jaGFuZ2VUeXBlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzUwOTI3MjtcbiAgY29sb3I6ICMxODgwNGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMmUwZDk7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlTZWxlY3RBbGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odFVJU2VsZWN0QWxsIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSUNsZWFyQWxsLCAuaGFuZHNvbnRhYmxlIC5odFVJU2VsZWN0QWxsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJQ2xlYXJBbGwgYSwgLmhhbmRzb250YWJsZSAuaHRVSVNlbGVjdEFsbCBhIHtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlTZWxlY3Rpb25Db250cm9scyB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odFVJU2VsZWN0aW9uQ29udHJvbHMge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odENoZWNrYm94UmVuZGVyZXJJbnB1dCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgaGVpZ2h0OiAxZW07XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0Q2hlY2tib3hSZW5kZXJlcklucHV0IHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKiBVSSBlbGVtZW50cyAqL1xuLyogSW5wdXQgKi9cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dCB7XG4gIHBhZGRpbmc6IDNweCAwIDdweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSUlucHV0IGlucHV0IHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDJkMWQxO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJSW5wdXQgaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJSW5wdXRJY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4vKiBCdXR0b24gKi9cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dC5odFVJQnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dC5odFVJQnV0dG9uIGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgY29sb3I6ICMwMDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiAxOXB4O1xuICBtaW4td2lkdGg6IDY0cHg7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dC5odFVJQnV0dG9uIGlucHV0OmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjliOWI5O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJSW5wdXQuaHRVSUJ1dHRvbk9LIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuaHRVSUlucHV0Lmh0VUlCdXR0b25PSyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dC5odFVJQnV0dG9uT0sgaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGY5ZDU4O1xuICBib3JkZXItY29sb3I6ICMxODgwNGU7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJSW5wdXQuaHRVSUJ1dHRvbk9LIGlucHV0OmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWE2ZjQ2O1xufVxuXG4vKiBTZWxlY3QgKi9cbi5oYW5kc29udGFibGUgLmh0VUlTZWxlY3Qge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDdweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJU2VsZWN0Q2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QyZDFkMTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogM3B4IDIwcHggM3B4IDEwcHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJU2VsZWN0Q2FwdGlvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiOWI5Yjk7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlTZWxlY3REcm9wZG93bjphZnRlciB7XG4gIGNvbnRlbnQ6IFwi4payXCI7XG4gIGZvbnQtc2l6ZTogN3B4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDA7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlTZWxlY3REcm9wZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKWvFwiO1xuICBmb250LXNpemU6IDdweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTBweDtcbiAgdG9wOiA4cHg7XG59XG5cbi8qIFNlbGVjdE11bHRpcGxlICovXG4uaGFuZHNvbnRhYmxlIC5odFVJTXVsdGlwbGVTZWxlY3QgLmhhbmRzb250YWJsZSAuaHRDb3JlIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJTXVsdGlwbGVTZWxlY3QgLmhhbmRzb250YWJsZSAuaHRDb3JlIHRkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSU11bHRpcGxlU2VsZWN0U2VhcmNoIGlucHV0IHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDJkMWQxO1xuICBwYWRkaW5nOiAzcHg7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlSYWRpbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0VUlSYWRpbyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVJhZGlvOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlSYWRpbyA+IGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMC41ZXg7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0VUlSYWRpbyA+IGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMC41ZXg7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlSYWRpbyBsYWJlbCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0RmlsdGVyc01lbnVPcGVyYXRvcnMge1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xufVxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcbiAqIEhhbmRzb250YWJsZSBIaWRkZW5Db2x1bW5zXG4gKi9cbi5oYW5kc29udGFibGUgdGguYmVmb3JlSGlkZGVuQ29sdW1uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLmJlZm9yZUhpZGRlbkNvbHVtbjo6YWZ0ZXIsXG4uaGFuZHNvbnRhYmxlIHRoLmFmdGVySGlkZGVuQ29sdW1uOjpiZWZvcmUge1xuICBjb2xvcjogI2JiYjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgZm9udC1zaXplOiA1cHQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmhhbmRzb250YWJsZSB0aC5hZnRlckhpZGRlbkNvbHVtbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbmRzb250YWJsZSB0aC5iZWZvcmVIaWRkZW5Db2x1bW46OmFmdGVyIHtcbiAgcmlnaHQ6IDFweDtcbiAgY29udGVudDogXCLil4BcIjsgLyogbGVmdCBhcnJvdyAqL1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoLmJlZm9yZUhpZGRlbkNvbHVtbjo6YWZ0ZXIge1xuICByaWdodDogaW5pdGlhbDtcbiAgbGVmdDogMXB4O1xuICBjb250ZW50OiBcIuKWtlwiOyAvKiByaWdodCBhcnJvdyAqL1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLmFmdGVySGlkZGVuQ29sdW1uOjpiZWZvcmUge1xuICBsZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwi4pa2XCI7IC8qIHJpZ2h0IGFycm93ICovXG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgdGguYWZ0ZXJIaWRkZW5Db2x1bW46OmJlZm9yZSB7XG4gIHJpZ2h0OiAxcHg7XG4gIGxlZnQ6IGluaXRpYWw7XG4gIGNvbnRlbnQ6IFwi4peAXCI7IC8qIGxlZnQgYXJyb3cgKi9cbn1cbkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFuZHNvbnRhYmxlIEhpZGRlblJvd3NcbiAqL1xuLmhhbmRzb250YWJsZSB0aC5iZWZvcmVIaWRkZW5Sb3c6OmJlZm9yZSxcbi5oYW5kc29udGFibGUgdGguYWZ0ZXJIaWRkZW5Sb3c6OmFmdGVyIHtcbiAgY29sb3I6ICNiYmI7XG4gIGZvbnQtc2l6ZTogNnB0O1xuICBsaW5lLWhlaWdodDogNnB0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDJweDtcbn1cblxuLmhhbmRzb250YWJsZSB0aC5iZWZvcmVIaWRkZW5Sb3csXG4uaGFuZHNvbnRhYmxlIHRoLmFmdGVySGlkZGVuUm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLmJlZm9yZUhpZGRlblJvdzo6YmVmb3JlIHtcbiAgY29udGVudDogXCLilrJcIjtcbiAgYm90dG9tOiAycHg7XG59XG5cbi5oYW5kc29udGFibGUgdGguYWZ0ZXJIaWRkZW5Sb3c6OmFmdGVyIHtcbiAgY29udGVudDogXCLilrxcIjtcbiAgdG9wOiAycHg7XG59XG5cbi5oYW5kc29udGFibGUuaHRfX3NlbGVjdGlvbi0tcm93cyB0Ym9keSB0aC5iZWZvcmVIaWRkZW5Sb3cuaHRfX2hpZ2hsaWdodDpiZWZvcmUsXG4uaGFuZHNvbnRhYmxlLmh0X19zZWxlY3Rpb24tLXJvd3MgdGJvZHkgdGguYWZ0ZXJIaWRkZW5Sb3cuaHRfX2hpZ2hsaWdodDphZnRlciB7XG4gIGNvbG9yOiAjZWVlO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmFmdGVySGlkZGVuUm93LmZpcnN0VmlzaWJsZVJvdyxcbi5oYW5kc29udGFibGUgdGguYWZ0ZXJIaWRkZW5Sb3cuZmlyc3RWaXNpYmxlUm93IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNDQ0M7XG59XG4uaHRSb3dIZWFkZXJzIC5odF9tYXN0ZXIuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB+IC5odF9jbG9uZV90b3BfaW5saW5lX3N0YXJ0X2Nvcm5lciB0aDpudGgtY2hpbGQoMiksXG4uaHRSb3dIZWFkZXJzIC5odF9tYXN0ZXIuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB+IC5odF9jbG9uZV9pbmxpbmVfc3RhcnQgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci1sZWZ0OiAwIG5vbmU7XG59XG4uaGFuZHNvbnRhYmxlIC53dEhpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxDb2x1bW5Nb3ZlLmFmdGVyLXNlbGVjdGlvbi0tY29sdW1ucyB0aGVhZCB0aC5odF9faGlnaGxpZ2h0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjtcbn1cblxuLmhhbmRzb250YWJsZS5odF9fbWFudWFsQ29sdW1uTW92ZS5vbi1tb3ZpbmctLWNvbHVtbnMsXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxDb2x1bW5Nb3ZlLm9uLW1vdmluZy0tY29sdW1ucyB0aGVhZCB0aC5odF9faGlnaGxpZ2h0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC1tb3otZ3JhYmJpbmc7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLmhhbmRzb250YWJsZS5odF9fbWFudWFsQ29sdW1uTW92ZS5vbi1tb3ZpbmctLWNvbHVtbnMgLm1hbnVhbENvbHVtblJlc2l6ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tZ3VpZGVsaW5lLFxuLmhhbmRzb250YWJsZSAuaHRfX21hbnVhbENvbHVtbk1vdmUtLWJhY2tsaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tZ3VpZGVsaW5lIHtcbiAgYmFja2dyb3VuZDogIzc1NzU3NTtcbiAgd2lkdGg6IDJweDtcbiAgdG9wOiAwO1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAtMXB4O1xuICBtYXJnaW4taW5saW5lLWVuZDogMDtcbiAgei1pbmRleDogMjA1O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tYmFja2xpZ2h0IHtcbiAgYmFja2dyb3VuZDogIzM0MzQzNDtcbiAgYmFja2dyb3VuZDogcmdiYSg1MiwgNTIsIDUyLCAwLjI1KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogMjA1O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmhhbmRzb250YWJsZS5vbi1tb3ZpbmctLWNvbHVtbnMuc2hvdy11aSAuaHRfX21hbnVhbENvbHVtbk1vdmUtLWd1aWRlbGluZSxcbi5oYW5kc29udGFibGUub24tbW92aW5nLS1jb2x1bW5zIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tYmFja2xpZ2h0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGFuZHNvbnRhYmxlIC53dEhpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxSb3dNb3ZlLmFmdGVyLXNlbGVjdGlvbi0tcm93cyB0Ym9keSB0aC5odF9faGlnaGxpZ2h0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjtcbn1cblxuLmhhbmRzb250YWJsZS5odF9fbWFudWFsUm93TW92ZS5vbi1tb3ZpbmctLXJvd3MsXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxSb3dNb3ZlLm9uLW1vdmluZy0tcm93cyB0Ym9keSB0aC5odF9faGlnaGxpZ2h0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC1tb3otZ3JhYmJpbmc7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLmhhbmRzb250YWJsZS5odF9fbWFudWFsUm93TW92ZS5vbi1tb3ZpbmctLXJvd3MgLm1hbnVhbFJvd1Jlc2l6ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odF9fbWFudWFsUm93TW92ZS0tZ3VpZGVsaW5lLFxuLmhhbmRzb250YWJsZSAuaHRfX21hbnVhbFJvd01vdmUtLWJhY2tsaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0X19tYW51YWxSb3dNb3ZlLS1ndWlkZWxpbmUge1xuICBiYWNrZ3JvdW5kOiAjNzU3NTc1O1xuICBoZWlnaHQ6IDJweDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgei1pbmRleDogMjA1O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odF9fbWFudWFsUm93TW92ZS0tYmFja2xpZ2h0IHtcbiAgYmFja2dyb3VuZDogIzM0MzQzNDtcbiAgYmFja2dyb3VuZDogcmdiYSg1MiwgNTIsIDUyLCAwLjI1KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogMjA1O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmhhbmRzb250YWJsZS5vbi1tb3ZpbmctLXJvd3Muc2hvdy11aSAuaHRfX21hbnVhbFJvd01vdmUtLWd1aWRlbGluZSxcbi5oYW5kc29udGFibGUub24tbW92aW5nLS1yb3dzIC5odF9fbWFudWFsUm93TW92ZS0tYmFja2xpZ2h0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGFuZHNvbnRhYmxlIHRib2R5IHRkW3Jvd3NwYW5dW2NsYXNzKj1hcmVhXVtjbGFzcyo9aGlnaGxpZ2h0XTpub3QoW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbF0pOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbC1tdWx0aXBsZV06YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4xO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRib2R5IHRkW3Jvd3NwYW5dW2NsYXNzKj1hcmVhXVtjbGFzcyo9aGlnaGxpZ2h0XVtjbGFzcyo9ZnVsbHlTZWxlY3RlZE1lcmdlZENlbGwtMF06YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4xO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRib2R5IHRkW3Jvd3NwYW5dW2NsYXNzKj1hcmVhXVtjbGFzcyo9aGlnaGxpZ2h0XVtjbGFzcyo9ZnVsbHlTZWxlY3RlZE1lcmdlZENlbGwtMV06YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4yO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRib2R5IHRkW3Jvd3NwYW5dW2NsYXNzKj1hcmVhXVtjbGFzcyo9aGlnaGxpZ2h0XVtjbGFzcyo9ZnVsbHlTZWxlY3RlZE1lcmdlZENlbGwtMl06YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4yNztcbn1cblxuLmhhbmRzb250YWJsZSB0Ym9keSB0ZFtyb3dzcGFuXVtjbGFzcyo9YXJlYV1bY2xhc3MqPWhpZ2hsaWdodF1bY2xhc3MqPWZ1bGx5U2VsZWN0ZWRNZXJnZWRDZWxsLTNdOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMzU7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbC00XTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjQxO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRib2R5IHRkW3Jvd3NwYW5dW2NsYXNzKj1hcmVhXVtjbGFzcyo9aGlnaGxpZ2h0XVtjbGFzcyo9ZnVsbHlTZWxlY3RlZE1lcmdlZENlbGwtNV06YmVmb3JlIHtcbiAgb3BhY2l0eTogMC40Nztcbn1cblxuLmhhbmRzb250YWJsZSB0Ym9keSB0ZFtyb3dzcGFuXVtjbGFzcyo9YXJlYV1bY2xhc3MqPWhpZ2hsaWdodF1bY2xhc3MqPWZ1bGx5U2VsZWN0ZWRNZXJnZWRDZWxsLTZdOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNTQ7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbC03XTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjU4O1xufVxuLyogQ29sdW1uJ3MgbnVtYmVyIHBvc2l0aW9uICovXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmc6OmFmdGVyIHtcbiAgLyogQ2VudGVyaW5nIHN0YXJ0ICovXG4gIHRvcDogNTAlO1xuICAvKiBUd28gZXh0cmEgcGl4ZWxzICgtMiBpbnN0ZWFkIG9mIC00KSBmb3IgcHVycG9zZSBvZiBwcm9wZXIgcG9zaXRpb25pbmcgb2YgbnVtZXJpYyBpbmRpY2F0b3JzLCB3aGVuIGBmb250LXNpemVgIHNldCB0byBkZWZhdWx0ICovXG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIC8qIENlbnRlcmluZyBlbmQgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTE1cHg7XG4gIGxlZnQ6IHVuc2V0O1xuICAvKiBGb3IgcHVycG9zZSBvZiBjb250aW51b3VzIG1vdXNlIG92ZXIgZXhwZXJpZW5jZSwgd2hlbiBtb3ZpbmcgYmV0d2VlbiB0aGUgYDo6YmVmb3JlYCBhbmQgdGhlIGA6OmFmdGVyYCBlbGVtZW50cyAqL1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gIGZvbnQtc2l6ZTogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgLyogV29ya2Fyb3VuZCBmb3IgSUU5IC0gSUUxMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSBzcGFuLmNvbEhlYWRlci5jb2x1bW5Tb3J0aW5nOjphZnRlciB7XG4gIGxlZnQ6IC0xNXB4O1xuICByaWdodDogdW5zZXQ7XG4gIC8qIEZvciBwdXJwb3NlIG9mIGNvbnRpbnVvdXMgbW91c2Ugb3ZlciBleHBlcmllbmNlLCB3aGVuIG1vdmluZyBiZXR3ZWVuIHRoZSBgOjpiZWZvcmVgIGFuZCB0aGUgYDo6YWZ0ZXJgIGVsZW1lbnRzICovXG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbn1cblxuLyogV29ya2Fyb3VuZCBmb3IgSUU5IC0gSUUxMSwgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzIxOTAyNTY2LCBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMzIxMjAyNDcgKi9cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZzo6YWZ0ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIFdlIHN1cHBvcnQgdXAgdG8gNyBudW1lcmljIGluZGljYXRvcnMsIGRlc2NyaWJpbmcgb3JkZXIgb2YgY29sdW1uIGluIHNvcnRlZCBjb2x1bW5zIHF1ZXVlICovXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmdbY2xhc3NePXNvcnQtXTo6YWZ0ZXIsXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmdbY2xhc3MqPVwiIHNvcnQtXCJdOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiK1wiO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuc29ydC0xOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiMVwiO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuc29ydC0yOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiMlwiO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuc29ydC0zOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiM1wiO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuc29ydC00OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiNFwiO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuc29ydC01OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiNVwiO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuc29ydC02OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiNlwiO1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmcuc29ydC03OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiN1wiO1xufVxuXG4vKiBEcm9wLWRvd24gbWVudSB3aWRlbnMgaGVhZGVyIGJ5IDUgcGl4ZWxzLCBzb3J0IHNlcXVlbmNlIG51bWJlcnMgd29uJ3Qgb3ZlcmxhcCB0aGUgaWNvbjsgbWFpbmx5IGZvciB0aGUgSUU5KyAqL1xuLmh0R2hvc3RUYWJsZSB0aCBkaXYgYnV0dG9uLmNoYW5nZVR5cGUgKyBzcGFuLmNvbEhlYWRlci5jb2x1bW5Tb3J0aW5nOm5vdCguaW5kaWNhdG9yRGlzYWJsZWQpIHtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuLmhhbmRzb250YWJsZSB0aGVhZCB0aC5oaWRkZW5IZWFkZXI6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AY2hhcnNldCBcIlVURi04XCI7XG4uaGFuZHNvbnRhYmxlIHRoLmh0X25lc3RpbmdMZXZlbHMge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDdweDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0aC5odF9uZXN0aW5nTGV2ZWxzIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDdweDtcbn1cblxuLmhhbmRzb250YWJsZSB0aCBkaXYuaHRfbmVzdGluZ0xldmVscyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxMXB4O1xuICByaWdodDogdW5zZXQ7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdMZXZlbHMge1xuICByaWdodDogMTFweDtcbiAgbGVmdDogdW5zZXQ7XG59XG5cbi5oYW5kc29udGFibGUuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB0aCBkaXYuaHRfbmVzdGluZ0xldmVscyxcbi5oYW5kc29udGFibGUuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB+IC5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdMZXZlbHMge1xuICByaWdodDogMTBweDtcbiAgbGVmdDogdW5zZXQ7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB0aCBkaXYuaHRfbmVzdGluZ0xldmVscywgW2Rpcj1ydGxdLmhhbmRzb250YWJsZS5pbm5lckJvcmRlcklubGluZVN0YXJ0IH4gLmhhbmRzb250YWJsZSB0aCBkaXYuaHRfbmVzdGluZ0xldmVscyB7XG4gIGxlZnQ6IDEwcHg7XG4gIHJpZ2h0OiB1bnNldDtcbn1cblxuLmhhbmRzb250YWJsZSB0aCBzcGFuLmh0X25lc3RpbmdMZXZlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmhhbmRzb250YWJsZSB0aCBzcGFuLmh0X25lc3RpbmdMZXZlbF9lbXB0eSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMXB4O1xuICBmbG9hdDogbGVmdDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0aCBzcGFuLmh0X25lc3RpbmdMZXZlbF9lbXB0eSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmhhbmRzb250YWJsZSB0aCBzcGFuLmh0X25lc3RpbmdMZXZlbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKUkFwiO1xuICBmb250LXNpemU6IDlweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvdHRvbTogM3B4O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoIGRpdi5odF9uZXN0aW5nQnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMnB4O1xuICBsZWZ0OiB1bnNldDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoIGRpdi5odF9uZXN0aW5nQnV0dG9uIHtcbiAgbGVmdDogLTJweDtcbiAgcmlnaHQ6IHVuc2V0O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoIGRpdi5odF9uZXN0aW5nQnV0dG9uLmh0X25lc3RpbmdFeHBhbmQ6OmFmdGVyIHtcbiAgY29udGVudDogXCIrXCI7XG59XG5cbi5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24uaHRfbmVzdGluZ0NvbGxhcHNlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xufVxuXG4uaGFuZHNvbnRhYmxlLmlubmVyQm9yZGVySW5saW5lU3RhcnQgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24sXG4uaGFuZHNvbnRhYmxlLmlubmVyQm9yZGVySW5saW5lU3RhcnQgfiAuaGFuZHNvbnRhYmxlIHRoIGRpdi5odF9uZXN0aW5nQnV0dG9uIHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IHVuc2V0O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlLmlubmVyQm9yZGVySW5saW5lU3RhcnQgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24sIFtkaXI9cnRsXS5oYW5kc29udGFibGUuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB+IC5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24ge1xuICBsZWZ0OiAwO1xuICByaWdodDogdW5zZXQ7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gTGlicmFyeVxuXG4vLyBGb250c1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1OdW5pdG8nKTtcblxuLy8gVmFyaWFibGVzXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG4vLyBCb290c3RyYXBcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy9ib290c3RyYXAnO1xuQGltcG9ydCAnfmJvb3RzdHJhcC12dWUvc3JjL2luZGV4LnNjc3MnO1xuXG4vLyB2dWUtc2VsY3RcbkBpbXBvcnQgJ352dWUtc2VsZWN0L2Rpc3QvdnVlLXNlbGVjdC5jc3MnO1xuXG4vLyBIYW5kc29udGFibGVcbkBpbXBvcnQgJ35oYW5kc29udGFibGUvZGlzdC9oYW5kc29udGFibGUuZnVsbC5jc3MnO1xuXG4vLyBWdWUgTW9udGggUGlja2VyXG4vL0BpbXBvcnQgJ352dWUtbW9udGgtcGlja2VyL2Rpc3QvYXNzZXRzL2Nzcy9pbmRleC5mY2QxOThiMS5jaHVuay5jc3MnO1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBBcHBcblxuQGZ1bmN0aW9uIHVuaWNvZGUoJHN0cmxpc3QpIHtcbiAgICAkcmV0OiAnJztcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHN0cmxpc3Qge1xuICAgICAgICAkcmV0OiAkcmV0ICsgdW5xdW90ZShzdHItaW5zZXJ0KCR2YWx1ZSwgXCJcXFxcXCIsIDEpKTtcbiAgICB9XG4gICAgQHJldHVybiB1bnF1b3RlKFwiXFxcIlwiKSArICRyZXQgKyB1bnF1b3RlKFwiXFxcIlwiKTtcbn1cblxuLy8gZm9udC1mYWNlXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJmbGFncy1jb2xvci13b3JsZC1mb250LWY0MTA5MFwiO1xuICAgIHNyYzogdXJsKC9pbWFnZXMvRmxhZ3NDb2xvcldvcmxkLTZZblJNLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG4vLyBjb250YWluZXJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5hcHAtd3JhcHBlciB7XG4gICAgICAgICYuY29udGFpbmVyLWxnIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIG5hdlxuLmItbmF2LWl0ZW0tdGV4dC1pY29uIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIHNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICB9XG59XG5cbi8vIE1vZGFsXG4ubW9kYWwtZGlhbG9nIHtcbiAgICAmLm1vZGFsLXhsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcblxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1vZGFsLWxnIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDkwdnc7XG4gICAgICAgIGhlaWdodDogOTB2aDtcbiAgICAgICAgbWF4LXdpZHRoOiA5MHZ3O1xuICAgICAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuXG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgICAmLmJ0bi1ub25lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEZvcm1cbi5mb3JtLW5hbWUge1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG4uZm9ybS1kZXNjcmlwdGlvbiB7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBtYXJnaW4tYm90dG9tOiAzZW07XG59XG4uZm9ybS1wYXltZW50LWJhbmstYWNjb3VudCB7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cbnVsLmZvcm0taW5wdXQtZGVzY3JpcHRpb24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxZW07XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICBsaSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDNCXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gVGlwdGFwXG4uZWRpdG9yX19jb250ZW50IHtcbiAgICAuUHJvc2VNaXJyb3Ige1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGJkYmRiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHJlc2l6ZTogdmVydGljYWw7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgXG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMmVtKTtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXG4gICAgICAgICZbY29udGVudGVkaXRhYmxlPVwiZmFsc2VcIl0ge1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcmVzaXplOiB1bnNldDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiB1bnNldDtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gVG9Eb1xuICAgIHVsW2RhdGEtdHlwZT1cInRvZG9fbGlzdFwiXSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBsaVtkYXRhLXR5cGU9XCJ0b2RvX2l0ZW1cIl0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAgICZbZGF0YS1kb25lPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgPiAudG9kby1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgPiBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gLnRvZG8tY2hlY2tib3gge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbZGF0YS1kb25lPVwiZmFsc2VcIl0ge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRvZG8tY2hlY2tib3gge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRkYXJrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC45ZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDAuOWVtO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGJhY2tncm91bmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50b2RvLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgPiBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gdWxbZGF0YS10eXBlPVwidG9kb19saXN0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAuNXJlbSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJhZGlvXG4gICAgdWxbZGF0YS10eXBlPVwicmFkaW9fbGlzdFwiXSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBsaVtkYXRhLXR5cGU9XCJyYWRpb19pdGVtXCJdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgICAmW2RhdGEtY2hlY2tlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgICAgID4gLnJhZGlvLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICA+IHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPiAucmFkaW8tdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2RhdGEtY2hlY2tlZD1cImZhbHNlXCJdIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yYWRpby10b2dnbGUge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRkYXJrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC45ZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDAuOWVtO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGJhY2tncm91bmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yYWRpby1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgID4gcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+IHVsW2RhdGEtdHlwZT1cInJhZGlvX2xpc3RcIl0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC41cmVtIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIGlmcmFtZVxuICAgIC5pZnJhbWUge1xuICAgICAgICAmX19lbWJlZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTVyZW07XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJl9faW5wdXQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkYXJrLCAwLjEpO1xuICAgICAgICAgICAgcGFkZGluZzogMC4zcmVtIDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBibG9ja3F1b3RlXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgcmdiYSgwLDAsMCwuMSk7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLC44KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAuOHJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICAvLyBjb2RlXG4gICAgICAgIGNvZGUge1xuICAgICAgICAgICAgcGFkZGluZzogLjJyZW0gLjRyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjEpO1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoMCwwLDAsLjgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJlIHtcbiAgICAgICAgcGFkZGluZzogLjdyZW0gMXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFuZ3VhZ2UpO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvZGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEJ1dHRvblxuLmJ0biB7XG4gICAgJi5idG4tdGhlbWUge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgICAgICR0aGVtZSxcbiAgICAgICAgICAgICR0aGVtZVxuICAgICAgICApO1xuXG4gICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYuYnRuLWZhY2Vib29rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNiNTk5OCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICMzYjU5OTggIWltcG9ydGFudDtcbiAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzA0ZDhhICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMzMDRkOGEgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi10d2l0dGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1YWNlZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICM1NWFjZWUgIWltcG9ydGFudDtcbiAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzVhMmY0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMzNWEyZjQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1saW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxYmE0NSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICMyMWJhNDUgIWltcG9ydGFudDtcbiAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTZhYjM5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxNmFiMzkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1mYXZvcml0ZSB7XG4gICAgICAgICYuaXNfbXlfZmF2b3JpdGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzgyMzMzICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYzgyMzMzICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG4tY2lyY2xlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIFxuICAgICAgICB3aWR0aDogMzhweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDM4cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTlweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgICAgICB9XG4gICAgICAgICYuYnRuLW1kIHtcbiAgICAgICAgfVxuICAgICAgICAmLmJ0bi1sZyB7XG4gICAgICAgICAgICB3aWR0aDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAmLmJ0bi14bCB7XG4gICAgICAgICAgICB3aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG4tZmF2b3JpdGUge1xuICAgICAgICAmLmJ0bi1sZyB7XG4gICAgICAgICAgICAuYnRuLWZhdm9yaXRlLWNvdW50IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuZmllbGRzZXQuZm9ybS1ncm91cCB7XG4gICAgJi5mb3JtLWdyb3VwLW5vd3JhcCB7XG4gICAgICAgID4gLmZvcm0tcm93IHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5yZXF1aXJlZCB7XG4gICAgICAgID4gbGVnZW5kLmNvbC1mb3JtLWxhYmVsIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1bmljb2RlKChcIjIwM0JcIixcIjVGQzVcIixcIjk4MDhcIikpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmVxdWlyZWQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdW5pY29kZSgoXCIyMDNCXCIsXCI1RkM1XCIsXCI5ODA4XCIpKTtcbiAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgIH1cbn1cblxuLnctY291bnRyeSB7XG4gICAgd2lkdGg6IDhlbTtcbiAgICAudnNfX3NlbGVjdGVkIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoOGVtIC0gNC41ZW0pO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIHBhZGRpbmctdG9wOiAyLjVweDtcbn1cblxuXG5cbi5kZy1jb250YWluZXIge1xuICAgIC5kZy1jb250ZW50LWNvbnQge1xuICAgICAgICAuZGctdmlldy13cmFwcGVyIHtcbiAgICAgICAgICAgIC5kZy1jb250ZW50LWZvb3RlciB7XG4gICAgICAgICAgICAgICAgLmRnLWJ0bi0tb2sge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgICAgICAgICAgICAgICAgICR0aGVtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICR0aGVtZVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5kZy1idG4tLWNhbmNlbCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgJHNlY29uZGFyeVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuZGctYnRuLWxvYWRlciAuZGctY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5kZy1jb250YWluZXItLWhhcy1pbnB1dCB7XG4gICAgICAgIC5kZy1jb250ZW50LWNvbnQge1xuICAgICAgICAgICAgLmRnLXZpZXctd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgLmRnLWZvcm0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRnLWNvbnRlbnQtZm9vdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgLmRnLWJ0bi0tb2sge1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmRnLWJ0bi0tY2FuY2VsIHtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5kZy1idG4tbG9hZGVyIC5kZy1jaXJjbGUge1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBzaXplXG4vLy5tdy0xMDAge1xuLy8gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4vL31cbi8vLm1oLTEwMCB7XG4vLyAgICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4vL31cbi52dy01MCB7XG4gICAgd2lkdGg6IDUwdncgIWltcG9ydGFudDtcbn1cbi52aC01MCB7XG4gICAgaGVpZ2h0OiA1MHZoICFpbXBvcnRhbnQ7XG59XG4ubWluLXZ3LTUwIHtcbiAgICBtaW4td2lkdGg6IDUwdncgIWltcG9ydGFudDtcbn1cbi5taW4tdmgtNTAge1xuICAgIG1pbi1oZWlnaHQ6IDUwdmggIWltcG9ydGFudDtcbn1cbi52dy03NSB7XG4gICAgd2lkdGg6IDc1dncgIWltcG9ydGFudDtcbn1cbi52aC03NSB7XG4gICAgaGVpZ2h0OiA3NXZoICFpbXBvcnRhbnQ7XG59XG4ubWluLXZ3LTc1IHtcbiAgICBtaW4td2lkdGg6IDc1dncgIWltcG9ydGFudDtcbn1cbi5taW4tdmgtNzUge1xuICAgIG1pbi1oZWlnaHQ6IDc1dmggIWltcG9ydGFudDtcbn1cbi5taW4taGVpZ2h0LTEge1xuICAgIG1pbi1oZWlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cbi5taW4taGVpZ2h0LTIge1xuICAgIG1pbi1oZWlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuLm1pbi1oZWlnaHQtMyB7XG4gICAgbWluLWhlaWdodDogMXJlbSAhaW1wb3J0YW50O1xufVxuLm1pbi1oZWlnaHQtNCB7XG4gICAgbWluLWhlaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG4ubWluLWhlaWdodC00LTUge1xuICAgIG1pbi1oZWlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbn1cbi5taW4taGVpZ2h0LTUge1xuICAgIG1pbi1oZWlnaHQ6IDNlbSAhaW1wb3J0YW50O1xufVxuLm1pbi1oLTUwIHtcbiAgICBtaW4taGVpZ2h0OiA1MCUgIWltcG9ydGFudDtcbn1cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgICAubWluLWgtI3skYnJlYWtwb2ludH0tNTAge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1pbi12aC0jeyRicmVha3BvaW50fS01MCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1MHZoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1pbi12aC0jeyRicmVha3BvaW50fS05MCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA5MHZoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnZoLSN7JGJyZWFrcG9pbnR9LTgwIHtcbiAgICAgICAgICAgIGhlaWdodDogODB2aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC52aC0jeyRicmVha3BvaW50fS05MCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDkwdmggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gbVxuLm0tLTEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cbi5tLS0yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cbi5tLS0zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG59XG4ubS0tNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG4ubS0tNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xufVxuLm14LS0xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG4ubXgtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG4ubXgtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbn1cbi5teC0tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cbi5teC0tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xufVxuLm15LS0xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG4ubXktLTIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG4ubXktLTMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbn1cbi5teS0tNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cbi5teS0tNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4vLyBsaFxuLmxoLTEge1xuICAgIGxpbmUtaGVpZ2h0OiAxIWltcG9ydGFudDtcbn1cbi5saC1zbSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjUhaW1wb3J0YW50O1xufVxuLmxoLWJhc2Uge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjUhaW1wb3J0YW50O1xufVxuLmxoLWxnIHtcbiAgICBsaW5lLWhlaWdodDogMiFpbXBvcnRhbnQ7XG59XG5cbi8vIG92ZXJmbG93XG4ub3ZlcmZsb3ctYXV0byB7XG4gICAgb3ZlcmZsb3c6IGF1dG8haW1wb3J0YW50O1xufVxuLm92ZXJmbG93LWhpZGRlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3ctdmlzaWJsZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUhaW1wb3J0YW50O1xufVxuLm92ZXJmbG93LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHNjcm9sbCFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3cteC1hdXRvIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvIWltcG9ydGFudDtcbn1cbi5vdmVyZmxvdy14LWhpZGRlbiB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuIWltcG9ydGFudDtcbn1cbi5vdmVyZmxvdy14LXZpc2libGUge1xuICAgIG92ZXJmbG93LXg6IHZpc2libGUhaW1wb3J0YW50O1xufVxuLm92ZXJmbG93LXgtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGwhaW1wb3J0YW50O1xufVxuLm92ZXJmbG93LXktYXV0byB7XG4gICAgb3ZlcmZsb3cteTogYXV0byFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3cteS1oaWRkZW4ge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbiFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3cteS12aXNpYmxlIHtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlIWltcG9ydGFudDtcbn1cbi5vdmVyZmxvdy15LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsIWltcG9ydGFudDtcbn1cblxuLy8gZmxleFxuLmZsZXgtZXZlbiB7XG4gICAgZmxleDogMTtcbn1cblxuLy8gZmxhZ3MtY29sb3Itd29ybGRcbi5mYyB7XG4gICAgZm9udC1mYW1pbHk6IFwiZmxhZ3MtY29sb3Itd29ybGQtZm9udC1mNDEwOTBcIjtcbiAgICBmb250LXN0eWxlOiB1bnNldDtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbn1cbi5mYy1hbWF6b246OmFmdGVyLFxuLmZjLWViYXk6OmFmdGVyXG57XG4gICAgY29udGVudDogXCJ1XCI7XG59XG4uZmMtYW1hem9uX2F1OjphZnRlcixcbi5mYy1lYmF5X2F1OjphZnRlclxue1xuICAgIGNvbnRlbnQ6IFwiXlwiO1xufVxuLmZjLWFtYXpvbl9jYTo6YWZ0ZXIsXG4uZmMtZWJheV9jYTo6YWZ0ZXJcbntcbiAgICBjb250ZW50OiBcImNcIjtcbn1cblxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gICAgICAgICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgICAgICAgICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBIYW5kc29udGFibGVcbi5odERhdGVwaWNrZXJIb2xkZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgIWltcG9ydGFudDtcbn1cbi5oYW5kc29udGFibGUge1xuICAgICZbbW9kZV0ge1xuICAgICAgICAmOm5vdChbbW9kZT1cInJlYWRcIl0pIHtcbiAgICAgICAgICAgIC5odERpbW1lZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2VlZWVlZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBjc3MgYW5pbWF0aW9uXG4uYmxpbmsge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBibGluayAxcyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGU7XG4gICAgYW5pbWF0aW9uOiBibGluayAxcyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGU7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYmxpbmsge1xuICAgIDAlIHtvcGFjaXR5OiAwO31cbiAgICAxMDAlIHtvcGFjaXR5OiAxO31cbn1cbkBrZXlmcmFtZXMgYmxpbmsge1xuICAgIDAlIHtvcGFjaXR5OiAwO31cbiAgICAxMDAlIHtvcGFjaXR5OiAxO31cbn1cbiIsIi8vIEJvZHlcbiRib2R5LWJnOiAjZjhmYWZjO1xuXG4vLyBUeXBvZ3JhcGh5XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJ051bml0bycsIHNhbnMtc2VyaWY7XG4kZm9udC1zaXplLWJhc2U6IDAuOXJlbTtcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjY7XG5cbi8vIENvbG9yc1xuLy8kYmx1ZTogIzM0OTBkYztcbi8vJGluZGlnbzogIzY1NzRjZDtcbi8vJHB1cnBsZTogIzk1NjFlMjtcbi8vJHBpbms6ICNmNjZkOWI7XG4vLyRyZWQ6ICNlMzM0MmY7XG4vLyRvcmFuZ2U6ICNmNjk5M2Y7XG4vLyR5ZWxsb3c6ICNmZmVkNGE7XG4vLyRncmVlbjogIzM4YzE3Mjtcbi8vJHRlYWw6ICM0ZGMwYjU7XG4vLyRjeWFuOiAjNmNiMmViO1xuXG4kYmx1ZTogIzAwN2JmZjtcbiRpbmRpZ286ICM2NjEwZjI7XG4kcHVycGxlOiAjNmY0MmMxO1xuJHBpbms6ICNlODNlOGM7XG4kcmVkOiAjZGMzNTQ1O1xuJG9yYW5nZTogI2ZkN2UxNDtcbiR5ZWxsb3c6ICNmZmMxMDc7XG4kZ3JlZW46ICMyOGE3NDU7XG4kdGVhbDogIzIwYzk5NztcbiRjeWFuOiAjMTdhMmI4O1xuJHdoaXRlOiAjZmZmO1xuJGdyYXk6ICM2Yzc1N2Q7XG4kZ3JheS1kYXJrOiAjMzQzYTQwO1xuJHByaW1hcnk6ICMwMDdiZmY7XG4kc2Vjb25kYXJ5OiAjNmM3NTdkO1xuJHN1Y2Nlc3M6ICMyOGE3NDU7XG4kaW5mbzogIzE3YTJiODtcbiR3YXJuaW5nOiAjZmZjMTA3O1xuJGRhbmdlcjogI2RjMzU0NTtcbiRsaWdodDogI2Y4ZjlmYTtcbiRkYXJrOiAjMzQzYTQwO1xuXG4kdGhlbWU6ICNmZmMxMDc7XG4iLCIvLyAtLS0gQm9vdHN0cmFwVnVlIHV0aWxpdHkgLyBoZWxwZXIgY2xhc3NlcyAtLS1cblxuJGJ2LXV0aWxpdHktY2xhc3Nlcy1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gTWFrZSBzdXJlIHRvIGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25seSBvbmNlXG5AaWYgJGJ2LXV0aWxpdHktY2xhc3Nlcy1kZWZpbmVkID09IGZhbHNlIHtcbiAgJGJ2LXV0aWxpdHktY2xhc3Nlcy1kZWZpbmVkOiB0cnVlO1xuXG4gIC8vIE5vIGZvY3VzIG91dGxpbmUgaGVscGVyICh1c2Ugc3BhcmluZ2x5KVxuICAuYnYtbm8tZm9jdXMtcmluZzpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC8vIENyZWF0ZSBgLmJ2LWQtPGJwPi1kb3duLW5vbmVgIGhlbHBlciBjbGFzc2VzXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAuYnYtZC0jeyRicmVha3BvaW50fS1kb3duLW5vbmUge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBTcGVjaWFsIHN0eWxpbmcgZm9yIHNvbWUgQm9vdHN0cmFwVnVlIGN1c3RvbSBmb3JtIGNvbnRyb2xzIHRoYXQgZG9cbi8vIG5vdCBoYXZlIGEgbmF0aXZlIEhUTUwgaW5wdXQgdHlwZSByb290IGVsZW1lbnQgKG9yIHRhYmluZGV4KVxuLy8gVXNlZCBieSBCRm9ybVNwaW5idXR0b24sIEJGb3JtRGF0ZXBpY2tlciwgQkZvcm1UaW1lcGlja2VyLCBCVGltZSwgQkNhbGVuZGFyXG4uZm9ybS1jb250cm9sIHtcbiAgLy8gQWRkcyBmb2N1cyBzdHlsaW5nIHRvIHRoZSBmb3JtLWNvbnRyb2wgY2xhc3MgKHZpYSB0aGUgZm9jdXMgY2xhc3MpXG4gIC8vIFNwZWNpZmljYWxseSB3aGVuIHdlIGFyZSB1c2luZyBub24gZm9jdXNhYmxlIGVsZW1lbnRzLCBvciB3aGVuIHRydWUgZm9jdXNcbiAgLy8gaXMgd2l0aGluIHRoZSBgLmZvcm0tY29udHJvbGAgZWxlbWVudC5cbiAgLy8gTWltaWNzIHRoZSBgLmZvcm0tY29udHJvbDpmb2N1c2Agc3R5bGluZ1xuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICYuaXMtdmFsaWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLCAwLjI1KTtcbiAgICB9XG5cbiAgICAmLmlzLWludmFsaWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciwgMC4yNSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBCQXZhdGFyIGN1c3RvbSBzdHlsZXNcblxuLmItYXZhdGFyIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6ICRiLWF2YXRhci1zaXplO1xuICBoZWlnaHQ6ICRiLWF2YXRhci1zaXplO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsXG4gICAgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJi5idG4sXG4gICZbaHJlZl0ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgLmItYXZhdGFyLWltZyBpbWcge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5iLWF2YXRhci1pbWcgaW1nIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC5iLWF2YXRhci1jdXN0b20sXG4gIC5iLWF2YXRhci10ZXh0LFxuICAuYi1hdmF0YXItaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvLyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9heWFtZmxvdy9iNjAyYWI0MzZhYzlmMDU2NjBkOWMxNTE5MGY0ZmQ3YlxuICAgIG1hc2staW1hZ2U6IHJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spO1xuICB9XG5cbiAgLmItYXZhdGFyLXRleHQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gICZbaHJlZl0ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gID4gLmItaWNvbiB7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmItYXZhdGFyLWltZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgLy8gVGhpcyBpcyBub3Qgc3VwcG9ydGVkIGluIElFMTEgYW5kIEVkZ2UgPDE2XG4gICAgLy8gaHR0cHM6Ly9jYW5pdXNlLmNvbS9vYmplY3QtZml0XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cblxuICAuYi1hdmF0YXItYmFkZ2Uge1xuICAgIC8vIFBvc2l0aW9uaW5nIHdpbGwgYmUgaGFuZGxlZCB2aWEgaW5saW5lIHN0eWxlc1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtaW4taGVpZ2h0OiAxLjVlbTtcbiAgICBtaW4td2lkdGg6IDEuNWVtO1xuICAgIHBhZGRpbmc6IDAuMjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3JkZXItcmFkaXVzOiAxMGVtO1xuICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4uYi1hdmF0YXItc20ge1xuICB3aWR0aDogJGItYXZhdGFyLXNpemUtc207XG4gIGhlaWdodDogJGItYXZhdGFyLXNpemUtc207XG5cbiAgLmItYXZhdGFyLXRleHQge1xuICAgIGZvbnQtc2l6ZTogY2FsYygjeyRiLWF2YXRhci1zaXplLXNtICogJGItYXZhdGFyLWZvbnQtc2l6ZS1zY2FsZX0pO1xuICB9XG5cbiAgLmItYXZhdGFyLWJhZGdlIHtcbiAgICBmb250LXNpemU6IGNhbGMoI3skYi1hdmF0YXItc2l6ZS1zbSAqICRiLWF2YXRhci1iYWRnZS1mb250LXNpemUtc2NhbGV9KTtcbiAgfVxufVxuXG4uYi1hdmF0YXItbGcge1xuICB3aWR0aDogJGItYXZhdGFyLXNpemUtbGc7XG4gIGhlaWdodDogJGItYXZhdGFyLXNpemUtbGc7XG5cbiAgLmItYXZhdGFyLXRleHQge1xuICAgIGZvbnQtc2l6ZTogY2FsYygjeyRiLWF2YXRhci1zaXplLWxnICogJGItYXZhdGFyLWZvbnQtc2l6ZS1zY2FsZX0pO1xuICB9XG5cbiAgLmItYXZhdGFyLWJhZGdlIHtcbiAgICBmb250LXNpemU6IGNhbGMoI3skYi1hdmF0YXItc2l6ZS1sZyAqICRiLWF2YXRhci1iYWRnZS1mb250LXNpemUtc2NhbGV9KTtcbiAgfVxufVxuXG4uYi1hdmF0YXItZ3JvdXAge1xuICAuYi1hdmF0YXItZ3JvdXAtaW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmItYXZhdGFyIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIGEsXG4gIC5idG4ge1xuICAgICYuYi1hdmF0YXI6aG92ZXI6bm90KC5kaXNhYmxlZCk6bm90KGRpc2FibGVkKSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gLS0tIEJvb3RzdHJhcFZ1ZSBjdXN0b20gU0NTUyB2YXJpYWJsZXMgLS0tXG4vL1xuLy8gVXNlcnMgY2FuIG92ZXJyaWRlIHRoZXNlIHZhcmlhYmxlcyBpbiB0aGVpciBjdXN0b20gU0NTU1xuLy9cbi8vIFZhcmlhYmxlcyBiZWdpbm5pbmcgd2l0aCBgJGJ2LWAgYXJlIHVzZWQgdG8gZW5hYmxlL2Rpc2FibGUgc3BlY2lmaWMgc2VjdGlvbiBDU1MgZ2VuZXJhdGlvblxuLy8gVmFyaWFibGVzIGJlZ2lubmluZyB3aXRoIGAkYi1gIGFyZSB1c2VkIHRvIGNvbnRyb2wgdmFsdWVzIHdpdGhpbiB0aGUgQ1NTIGdlbmVyYXRpb25cblxuLy8gLS0tIEN1c3RvbSBpbnB1dHMgKGFkZHMgc2l6aW5nIHN1cHBvcnQpIC0tLVxuXG4vLyBJbmRpY2F0b3IgaGVpZ2h0IChhbmQgc29tZXRpbWVzIHdpZHRoKVxuJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMC44NzUgIWRlZmF1bHQ7XG5cbi8vIEluZGljYXRvciBiYWNrZ3JvdW5kXG4kYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1sZzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplICFkZWZhdWx0O1xuJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemUtc206ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZSAhZGVmYXVsdDtcblxuLy8gR3V0dGVyIHdpZHRoc1xuJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLWxnOiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICogMS4yNSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbTogJGN1c3RvbS1jb250cm9sLWd1dHRlciAqIDAuODc1ICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gcmFkaW8gc2l6ZXMgKHVzZXMgZGVmYXVsdHMgb2YgNTAlLCBzaW5jZSByYWRpb3MgYXJlIHJvdW5kKVxuJGItY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGItY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzLXNtOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gY2hlY2tib3ggc2l6ZXNcbiRiLWN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1sZzogJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYi1jdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc206ICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gc3dpdGNoIHNpemVzXG4kYi1jdXN0b20tc3dpdGNoLXdpZHRoLWxnOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyAqIDEuNzUgIWRlZmF1bHQ7XG4kYi1jdXN0b20tc3dpdGNoLXdpZHRoLXNtOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSAqIDEuNzUgIWRlZmF1bHQ7XG4kYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyAvIDIgIWRlZmF1bHQ7XG4kYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzLXNtOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSAvIDIgIWRlZmF1bHQ7XG4kYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplLWxnOiBjYWxjKFxuICAjeyRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnfSAtICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0fVxuKSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemUtc206IGNhbGMoXG4gICN7JGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc219IC0gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDR9XG4pICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gZmlsZSBzaXplc1xuJGItY3VzdG9tLWZpbGUtZm9udC1zaXplLWxnOiAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtZm9udC1zaXplLXNtOiAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQtbGc6ICRpbnB1dC1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcbiRiLWN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0LXNtOiAkaW5wdXQtbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1oZWlnaHQtbGc6ICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1oZWlnaHQtc206ICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzLWxnOiAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRiLWN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMtc206ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtcGFkZGluZy15LWxnOiAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtcGFkZGluZy15LXNtOiAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtcGFkZGluZy14LWxnOiAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtcGFkZGluZy14LXNtOiAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyLWxnOiBjYWxjKFxuICAjeyRiLWN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0LWxnICogMWVtfSArICN7JGItY3VzdG9tLWZpbGUtcGFkZGluZy15LWxnICogMn1cbikgIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1oZWlnaHQtaW5uZXItc206IGNhbGMoXG4gICN7JGItY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQtc20gKiAxZW19ICsgI3skYi1jdXN0b20tZmlsZS1wYWRkaW5nLXktc20gKiAyfVxuKSAhZGVmYXVsdDtcblxuLy8gLS0tIEljb25zIC0tLVxuXG4kYi1pY29uLXZlcnRpY2FsLW9mZnNldDogLTAuMTVlbTtcblxuLy8gQW5pbWF0aW9uc1xuJGItaWNvbi1hbmltYXRpb24tY3lsb24tZHVyYXRpb246IDAuNzVzICFkZWZhdWx0O1xuJGItaWNvbi1hbmltYXRpb24tY3lsb24tdmVydGljYWwtZHVyYXRpb246ICRiLWljb24tYW5pbWF0aW9uLWN5bG9uLWR1cmF0aW9uICFkZWZhdWx0O1xuJGItaWNvbi1hbmltYXRpb24tZmFkZS1kdXJhdGlvbjogMC43NXMgIWRlZmF1bHQ7XG4kYi1pY29uLWFuaW1hdGlvbi1zcGluLWR1cmF0aW9uOiAycyAhZGVmYXVsdDtcbiRiLWljb24tYW5pbWF0aW9uLXNwaW4tcmV2ZXJzZS1kdXJhdGlvbjogJGItaWNvbi1hbmltYXRpb24tc3Bpbi1kdXJhdGlvbiAhZGVmYXVsdDtcbiRiLWljb24tYW5pbWF0aW9uLXNwaW4tcHVsc2UtZHVyYXRpb246IDFzICFkZWZhdWx0O1xuJGItaWNvbi1hbmltYXRpb24tc3Bpbi1yZXZlcnNlLXB1bHNlLWR1cmF0aW9uOiAkYi1pY29uLWFuaW1hdGlvbi1zcGluLXB1bHNlLWR1cmF0aW9uICFkZWZhdWx0O1xuJGItaWNvbi1hbmltYXRpb24tdGhyb2ItZHVyYXRpb246IDAuNzVzICFkZWZhdWx0O1xuXG4vLyAtLS0gU2lkZWJhciAtLS1cblxuJGItc2lkZWJhci13aWR0aDogMzIwcHggIWRlZmF1bHQ7XG4kYi1zaWRlYmFyLXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3MgIWRlZmF1bHQ7XG4kYi1zaWRlYmFyLXppbmRleDogY2FsYygjeyR6aW5kZXgtZml4ZWR9ICsgNSkgIWRlZmF1bHQ7XG4kYi1zaWRlYmFyLWhlYWRlci1mb250LXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiRiLXNpZGViYXItaGVhZGVyLXBhZGRpbmcteTogJG5hdmJhci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYi1zaWRlYmFyLWhlYWRlci1wYWRkaW5nLXg6ICRuYXZiYXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4vLyAtLS0gVGFibGVzIC0tLVxuXG4vLyBUYWJsZSBidXN5IHN0YXRlXG4kYi10YWJsZS1idXN5LW9wYWNpdHk6IDAuNTUgIWRlZmF1bHQ7XG5cbi8vIFRhYmxlIHNvcnRpbmdcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy13aWR0aDogMC42NWVtICFkZWZhdWx0O1xuJGItdGFibGUtc29ydC1pY29uLWJnLWhlaWdodDogMWVtICFkZWZhdWx0O1xuLy8gU29ydCBpY29ucyBhcmUgc3F1YXJlLCBidXQgXCJzcXVpc2hlZFwiIGhvcml6b250YWxseSBieSB0aGUgYWJvdmUgdmFyaWFibGVzXG4kYi10YWJsZS1zb3J0LWljb24tYmctbm90LXNvcnRlZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAxJyBoZWlnaHQ9JzEwMScgdmlldy1ib3g9JzAgMCAxMDEgMTAxJyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSdub25lJz48cGF0aCBmaWxsPSdibGFjaycgb3BhY2l0eT0nLjMnIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6TTUxIDEwMWwyNS0yMyAyNC0yMkgxbDI1IDIyeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy1hc2NlbmRpbmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSc+PHBhdGggZmlsbD0nYmxhY2snIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6Jy8+PHBhdGggZmlsbD0nYmxhY2snIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGItdGFibGUtc29ydC1pY29uLWJnLWRlc2NlbmRpbmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSc+PHBhdGggZmlsbD0nYmxhY2snIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMWwyNSAyMyAyNCAyMkgxbDI1LTIyeicvPjxwYXRoIGZpbGw9J2JsYWNrJyBkPSdNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gSWNvbnMgdG8gdXNlIG9uIGRhcmsgdGFibGUgb3IgZGFyayBoZWFkZXIvZm9vdGVyIChsaWdodGVyIGNvbG9yIGljb25zKVxuLy8gV2Ugc2ltcGx5IGp1c3QgcmVwbGFjZSB0aGUgZmlsbCBjb2xvciAnYmxhY2snIHdoaXRlICd3aGl0ZSdcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLW5vdC1zb3J0ZWQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSc+PHBhdGggZmlsbD0nd2hpdGUnIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMWwyNSAyMyAyNCAyMkgxbDI1LTIyek01MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1hc2NlbmRpbmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSc+PHBhdGggZmlsbD0nd2hpdGUnIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6Jy8+PHBhdGggZmlsbD0nd2hpdGUnIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstZGVzY2VuZGluZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAxJyBoZWlnaHQ9JzEwMScgdmlldy1ib3g9JzAgMCAxMDEgMTAxJyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSdub25lJz48cGF0aCBmaWxsPSd3aGl0ZScgb3BhY2l0eT0nLjMnIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6Jy8+PHBhdGggZmlsbD0nd2hpdGUnIGQ9J001MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbi8vIEZsYWcgdG8gZW5hYmxlIHN0aWNreSB0YWJsZSBoZWFkZXIgYW5kIGNvbHVtbiBDU1MgZ2VuZXJhdGlvblxuJGJ2LWVuYWJsZS10YWJsZS1zdGlja3k6IHRydWUgIWRlZmF1bHQ7XG4vLyBEZWZhdWx0IG1heC1oZWlnaHQgZm9yIHRhYmxlcyB3aXRoIHN0aWNreSBoZWFkZXJzXG4kYi10YWJsZS1zdGlja3ktaGVhZGVyLW1heC1oZWlnaHQ6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLyBGbGFnIHRvIGVuYWJsZSB0YWJsZSBzdGFja2VkIENTUyBnZW5lcmF0aW9uXG4kYnYtZW5hYmxlLXRhYmxlLXN0YWNrZWQ6IHRydWUgIWRlZmF1bHQ7XG4vLyBUYWJsZSBzdGFja2VkIGRlZmF1bHRzXG4kYi10YWJsZS1zdGFja2VkLWhlYWRpbmctd2lkdGg6IDQwJSAhZGVmYXVsdDtcbiRiLXRhYmxlLXN0YWNrZWQtZ2FwOiAxcmVtICFkZWZhdWx0O1xuXG4vLyBCb290c3RyYXAgdjQuMyBpcyBtaXNzaW5nIHRoZSBcImFjdGl2ZVwiIHZhcmlhbnQgZm9yIGRhcmsgdGFibGVzXG4vLyBXaGljaCB0cmFuc2xhdGVzIHRvIGBiZy1hY3RpdmVgLCBidXQgb25seSBmb3IgdGFibGVzXG4kdGFibGUtZGFyay1hY3RpdmUtYmc6ICR0YWJsZS1kYXJrLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4vLyAtLS0gVG9hc3RzIC0tLVxuXG4vLyBUb2FzdGVyIGRlZmF1bHRzXG4kYi10b2FzdGVyLXppbmRleDogMTEwMCAhZGVmYXVsdDtcbiRiLXRvYXN0ZXItb2Zmc2V0LXRvcDogMC41cmVtICFkZWZhdWx0O1xuJGItdG9hc3Rlci1vZmZzZXQtYm90dG9tOiAkYi10b2FzdGVyLW9mZnNldC10b3AgIWRlZmF1bHQ7XG4kYi10b2FzdGVyLW9mZnNldC1sZWZ0OiAkYi10b2FzdGVyLW9mZnNldC10b3AgIWRlZmF1bHQ7XG4kYi10b2FzdGVyLW9mZnNldC1yaWdodDogJGItdG9hc3Rlci1vZmZzZXQtdG9wICFkZWZhdWx0O1xuXG4vLyBEZWZhdWx0IHRvYXN0IG9wYWNpdHlcbi8vIFZhbHVlIGZyb20gMCB0byAxLCBvciAwJSB0byAxMDAlXG4vLyBCb290c3RyYXAgZGVmYXVsdCBpcyAwLjg1IChleHRyYWN0ZWQgZnJvbSB0aGUgYCR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yYCB2YWx1ZSlcbi8vIEJvb3RzdHJhcCBkb2VzIG5vdCBoYXZlIHRoaXMgYXMgYSB2YXJpYWJsZSwgc28gd2UgYWRkIGl0IGluLlxuJGItdG9hc3QtYmFja2dyb3VuZC1vcGFjaXR5OiBhbHBoYSgkdG9hc3QtYmFja2dyb3VuZC1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vIFRvYXN0IHZhcmlhbnQgbGV2ZWxzIHdydCB0aGVtZSBjb2xvciB2YWx1ZVxuJGItdG9hc3QtYmctbGV2ZWw6ICRhbGVydC1iZy1sZXZlbCAhZGVmYXVsdDtcbiRiLXRvYXN0LWJvcmRlci1sZXZlbDogJGFsZXJ0LWJvcmRlci1sZXZlbCAhZGVmYXVsdDtcbiRiLXRvYXN0LWNvbG9yLWxldmVsOiAkYWxlcnQtY29sb3ItbGV2ZWwgIWRlZmF1bHQ7XG5cbi8vIC0tLSBUb29sdGlwcyAtLS1cblxuLy8gRmxhZyB0byBlbmFibGUgdG9vbHRpcCB2YXJpYW50IENTUyBnZW5lcmF0aW9uXG4kYnYtZW5hYmxlLXRvb2x0aXAtdmFyaWFudHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIFRvb2x0aXAgYmFja2dyb3VuZCB2YXJpYW50IGxldmVsIHdydCB0aGVtZSBjb2xvciB2YWx1ZVxuJGItdG9vbHRpcC1iZy1sZXZlbDogMCAhZGVmYXVsdDtcblxuLy8gLS0tIFBvcG92ZXJzIC0tLVxuXG4vLyBGbGFnIHRvIGVuYWJsZSBwb3BvdmVyIHZhcmlhbnQgQ1NTIGdlbmVyYXRpb25cbiRidi1lbmFibGUtcG9wb3Zlci12YXJpYW50czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gUG9wb3ZlciB2YXJpYW50IGxldmVscyB3cnQgdGhlbWUgY29sb3IgdmFsdWVcbiRiLXBvcG92ZXItYmctbGV2ZWw6ICRhbGVydC1iZy1sZXZlbCAhZGVmYXVsdDtcbiRiLXBvcG92ZXItYm9yZGVyLWxldmVsOiAkYWxlcnQtYm9yZGVyLWxldmVsICFkZWZhdWx0O1xuJGItcG9wb3Zlci1jb2xvci1sZXZlbDogJGFsZXJ0LWNvbG9yLWxldmVsICFkZWZhdWx0O1xuXG4vLyAtLS0gQXZhdGFyIC0tLVxuXG4kYi1hdmF0YXItc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuJGItYXZhdGFyLXNpemUtc206IDEuNXJlbSAhZGVmYXVsdDtcbiRiLWF2YXRhci1zaXplLWxnOiAzLjVyZW0gIWRlZmF1bHQ7XG4kYi1hdmF0YXItZm9udC1zaXplLXNjYWxlOiAwLjQgIWRlZmF1bHQ7XG4kYi1hdmF0YXItYmFkZ2UtZm9udC1zaXplLXNjYWxlOiAkYi1hdmF0YXItZm9udC1zaXplLXNjYWxlICogMC43ICFkZWZhdWx0O1xuXG4vLyAtLS0gU2tlbGV0b24gLS0tXG5cbiRiLXNrZWxldG9uLWJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMikgIWRlZmF1bHQ7XG4kYi1za2VsZXRvbi1sb2FkaW5nLWN1cnNvcjogd2FpdCAhZGVmYXVsdDtcbiRiLXNrZWxldG9uLWFuaW1hdGlvbi1kdXJhdGlvbjogMS43NXMgIWRlZmF1bHQ7XG4kYi1za2VsZXRvbi10ZXh0LXNwYWNpbmc6IG1hcC1nZXQoJHNwYWNlcnMsIDEpICFkZWZhdWx0O1xuJGItc2tlbGV0b24tYnRuLXdpZHRoOiA3NXB4ICFkZWZhdWx0O1xuIiwiLy8gQkNhbGVuZGFyIGN1c3RvbSBzdHlsZXNcblxuLmItY2FsZW5kYXIge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICAuYi1jYWxlbmRhci1pbm5lciB7XG4gICAgLy8gUHJldmVudCBjYWxlbmRhciBmcm9tIGdvaW5nIGJlbG93IHRoaXMgd2lkdGhcbiAgICBtaW4td2lkdGg6IDI1MHB4O1xuICB9XG5cbiAgLmItY2FsZW5kYXItaGVhZGVyLFxuICAuYi1jYWxlbmRhci1uYXYge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIH1cblxuICAuYi1jYWxlbmRhci1uYXYgLmJ0biB7XG4gICAgcGFkZGluZzogMC4yNXJlbTtcbiAgfVxuXG4gIG91dHB1dCB7XG4gICAgcGFkZGluZzogMC4yNXJlbTtcbiAgICBmb250LXNpemU6IDgwJTtcblxuICAgICYucmVhZG9ubHkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAuYi1jYWxlbmRhci1mb290ZXIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgfVxuXG4gIC5iLWNhbGVuZGFyLWdyaWQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIC8vIEVhc3kgcm91bmRlZCBjb3JuZXJzIG9uIGNvbnRhaW5lZCBlbGVtZW50cyxcbiAgICAvLyBzcGVjaWZpY2FsbHkgdGhlIGZvb3RlciBvZiB0aGUgY2FsZW5kYXIgZ3JpZFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAucm93IHtcbiAgICAgIC8vIFByZXZlbnQgZ3JpZCByb3dzIGZyb20gd3JhcHBpbmdcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gIC5iLWNhbGVuZGFyLWdyaWQtY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMC4yNXJlbTtcbiAgfVxuXG4gIC5iLWNhbGVuZGFyLWdyaWQtYm9keSB7XG4gICAgLmNvbFtkYXRhLWRhdGVdIHtcbiAgICAgIC8vIFdlIGhhcmQgY29kZSB0aGUgc2l6ZXMgaW4gYHB4YCB0byBmaXRcbiAgICAgIC8vIGNvcnJlY3RseSBvbiBzbWFsbCBtb2JpbGUgZGV2aWNlIHNjcmVlbnNcbiAgICAgIC5idG4ge1xuICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW46IDNweCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiA5cHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZSB0byBnZXQgYXJvdW5kIEJvb3RzdHJhcCB2NC40IGJ1Z1xuICAvLyB3aXRoIGhhbmQgY3Vyc29yIG9uIGRpc2FibGVkIGJ1dHRvbnNcbiAgLy8gQXMgd2VsbCwgd2hlbiBhIGJ1dHRvbiBpcyBzdGlsbCBmb2N1c2FibGUsIGJ1dCBpc1xuICAvLyBgYXJpYS1kaXNhYmxlZGAgd2Ugd2FudCBgcG9pbnRlci1ldmVudHM6IG5vbmVgXG4gIC5idG4ge1xuICAgICY6ZGlzYWJsZWQsXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLmNhcmQtaW1nLWxlZnQge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZy1yaWdodCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG4iLCIkYnYtZHJvcGRvd24tZGVmaW5lZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIE1ha2Ugc3VyZSB0byBpbmNsdWRlIHRoZXNlIHN0eWxlIGRlZmluaXRpb25zIG9ubHkgb25jZVxuQGlmICRidi1kcm9wZG93bi1kZWZpbmVkID09IGZhbHNlIHtcbiAgJGJ2LWRyb3Bkb3duLWRlZmluZWQ6IHRydWU7XG5cbiAgLy8gSGlkZSB0aGUgY2FyZXQgZm9yIGBuby1jYXJldGAgc2V0dGluZ1xuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzE0NzNcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzIzNzI0XG4gIC5kcm9wZG93biB7XG4gICAgJjpub3QoLmRyb3BsZWZ0KSB7XG4gICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgJi5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQ6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzI5MDlcbiAgICAmLmRyb3BsZWZ0IHtcbiAgICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAmLmRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldDo6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaWRlIHRoZSBmb2N1cyByaW5nIGludHJvZHVjZWQgYnkgQm9vdHN0cmF0cCB2NC40IHJlYm9vdFxuICAgIC8vIG9uIGl0ZW1zIHdpdGggdGFiaW5kZXg9XCItMVwiLCBhcyB3ZSBrbm93IGhvdyB1c2VycyBmZWVsXG4gICAgLy8gYWJvdXQgYmx1ZSByaW5ncyB3aGVyZSB0aGV5IGRvbid0IGV4cGVjdCB0aGVtLlxuICAgIC5kcm9wZG93bi1tZW51OmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gUHJldmVudCBkcm9wZG93biBiYWNrZ3JvdW5kIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICAgIC8vIEFkZGVkIGhlcmUgdG8gYWRkcmVzcyA8bGk+IHdyYXBwaW5nIG9mIGl0ZW1zXG4gICAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAuZHJvcGRvd24taXRlbSxcbiAgICAgICAgICAuZHJvcGRvd24tZm9ybSxcbiAgICAgICAgICAuZHJvcGRvd24tdGV4dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgLmRyb3Bkb3duLWl0ZW0sXG4gICAgICAgICAgLmRyb3Bkb3duLWZvcm0sXG4gICAgICAgICAgLmRyb3Bkb3duLXRleHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiJGJ2LWRyb3Bkb3duLWZvcm0tZGVmaW5lZDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiAkYnYtZHJvcGRvd24tZm9ybS1kZWZpbmVkID09IGZhbHNlIHtcbiAgLy8gVGhpcyB0ZXN0IHdpbGwgb25seSBpbmNsdWRlIHRoZXNlIHN0eWxlIGRlZmluaXRpb25zIG9uY2VcbiAgJGJ2LWRyb3Bkb3duLWZvcm0tZGVmaW5lZDogdHJ1ZTtcblxuICAvLyBDdXN0b20gc3R5bGVzIGZvciA8Yi1kcm9wZG93bi1mb3JtPlxuICAvLyBCYXNlZCBvbiBjbGFzcyBgLmRyb3Bkb3duLWl0ZW1gXG4gIC5iLWRyb3Bkb3duLWZvcm0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBGcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9zY3NzL19yZWJvb3Quc2Nzc1xuICAgICAgLy8gbWltaWNraW5nIGJ1dHRvbjpmb2N1cyBzdHlsaW5nLlxuICAgICAgLy8gV2UgYWRkIGltcG9ydGFudCBoZXJlIGFzIGFueXRoaW5nIHdpdGggdGFiaW5kZXggYC0xYCBhbmQgZm9jdXNlZCB3aWxsIG5vdFxuICAgICAgLy8gaGF2ZSBhIGZvY3VzIHJpbmcgZHVlIHRvIHJlYm9vdC5zY3NzIGFuZCBpdHMgYCFpbXBvcnRhbnRgIG92ZXJyaWRlLlxuICAgICAgLy8gTmVlZGVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uIGhpZ2gtbGlnaHRpbmdcbiAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgIWltcG9ydGFudDtcbiAgICAgIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgICAvLyBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgLy8gICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgLy8gfVxuICAgIH1cbiAgfVxufVxuIiwiJGJ2LWRyb3Bkb3duLXRleHQtZGVmaW5lZDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiAkYnYtZHJvcGRvd24tdGV4dC1kZWZpbmVkID09IGZhbHNlIHtcbiAgLy8gVGhpcyB0ZXN0IHdpbGwgb25seSBpbmNsdWRlIHRoZXNlIHN0eWxlIGRlZmluaXRpb25zIG9uY2VcbiAgJGJ2LWRyb3Bkb3duLXRleHQtZGVmaW5lZDogdHJ1ZTtcblxuICAvLyBDdXN0b20gc3R5bGVzIGZvciA8Yi1kcm9wZG93bi10ZXh0PlxuICAvLyBCYXNlZCBvbiBjbGFzcyBgLmRyb3Bkb3duLWl0ZW1gXG4gIC5iLWRyb3Bkb3duLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyO1xuICB9XG59XG4iLCIvLyBBZGRzIGNvbnRyb2wgc2l6aW5nIHRvIEJvb3RzdHJhcCBjdXN0b20gY2hlY2tib3gvc3dpdGNoIGlucHV0c1xuXG4uY3VzdG9tLWNoZWNrYm94LmItY3VzdG9tLWNvbnRyb2wtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgLmN1c3RvbS1jaGVja2JveCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sZztcbiAgcGFkZGluZy1sZWZ0OiAkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcgKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZztcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZyAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKSAvIDI7XG4gICAgbGVmdDogLSgkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcgKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyk7XG4gICAgd2lkdGg6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnO1xuICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYi1jdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtbGcpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZyAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKSAvIDI7XG4gICAgbGVmdDogLSgkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcgKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyk7XG4gICAgd2lkdGg6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnO1xuICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1sZztcbiAgfVxufVxuXG4uY3VzdG9tLWNoZWNrYm94LmItY3VzdG9tLWNvbnRyb2wtc20sXG4uaW5wdXQtZ3JvdXAtc20gLmN1c3RvbS1jaGVja2JveCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItc20gKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1zbSAqICRsaW5lLWhlaWdodC1zbSAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKSAvIDI7XG4gICAgbGVmdDogLSgkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItc20gKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSk7XG4gICAgd2lkdGg6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtO1xuICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYi1jdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc20pO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1zbSAqICRsaW5lLWhlaWdodC1zbSAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKSAvIDI7XG4gICAgbGVmdDogLSgkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItc20gKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSk7XG4gICAgd2lkdGg6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtO1xuICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG4gICAgYmFja2dyb3VuZC1zaXplOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1zbTtcbiAgfVxufVxuXG4uY3VzdG9tLXN3aXRjaC5iLWN1c3RvbS1jb250cm9sLWxnLFxuLmlucHV0LWdyb3VwLWxnIC5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkYi1jdXN0b20tc3dpdGNoLXdpZHRoLWxnICsgJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLWxnO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbGc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAoJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZyAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKSAvIDI7XG4gICAgICBoZWlnaHQ6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnO1xuICAgICAgbGVmdDogLSgkYi1jdXN0b20tc3dpdGNoLXdpZHRoLWxnICsgJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLWxnKTtcbiAgICAgIHdpZHRoOiAkYi1jdXN0b20tc3dpdGNoLXdpZHRoLWxnO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1sZztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IGNhbGMoXG4gICAgICAgICN7KCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGcpIC8gMil9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqXG4gICAgICAgICAgMn1cbiAgICAgICk7XG4gICAgICBsZWZ0OiBjYWxjKFxuICAgICAgICAjey0gKCRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtbGcgKyAkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcpfSArICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKlxuICAgICAgICAgIDJ9XG4gICAgICApO1xuICAgICAgd2lkdGg6ICRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgICBoZWlnaHQ6ICRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1sZztcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtbGcgLSAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyk7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tc3dpdGNoLmItY3VzdG9tLWNvbnRyb2wtc20sXG4uaW5wdXQtZ3JvdXAtc20gLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtc20gKyAkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItc207XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6ICgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pIC8gMjtcbiAgICAgIGxlZnQ6IC0oJGItY3VzdG9tLXN3aXRjaC13aWR0aC1zbSArICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSk7XG4gICAgICB3aWR0aDogJGItY3VzdG9tLXN3aXRjaC13aWR0aC1zbTtcbiAgICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG4gICAgICBib3JkZXItcmFkaXVzOiAkYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzLXNtO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogY2FsYyhcbiAgICAgICAgI3soKCRmb250LXNpemUtc20gKiAkbGluZS1oZWlnaHQtc20gLSAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSkgLyAyKX0gKyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICpcbiAgICAgICAgICAyfVxuICAgICAgKTtcbiAgICAgIGxlZnQ6IGNhbGMoXG4gICAgICAgICN7LSAoJGItY3VzdG9tLXN3aXRjaC13aWR0aC1zbSArICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSl9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqXG4gICAgICAgICAgMn1cbiAgICAgICk7XG4gICAgICB3aWR0aDogJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICAgIGhlaWdodDogJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc207XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplLXNtO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGItY3VzdG9tLXN3aXRjaC13aWR0aC1zbSAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKTtcbiAgICB9XG4gIH1cbn1cbiIsIiRidi1pbnB1dC1ncm91cC1kcm9wZG93bi1wYXRjaGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gTWFrZSBzdXJlIHRvIGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25seSBvbmNlXG5AaWYgJGJ2LWlucHV0LWdyb3VwLWRyb3Bkb3duLXBhdGNoZWQgPT0gZmFsc2Uge1xuICAkYnYtaW5wdXQtZ3JvdXAtZHJvcGRvd24tcGF0Y2hlZDogdHJ1ZTtcblxuICAvLyBXb3JrYXJvdW5kIGZvciBodHRwczovL2dpdGh1Yi5jb20vYm9vdHN0cmFwLXZ1ZS9ib290c3RyYXAtdnVlL2lzc3Vlcy8xNTYwXG4gIC8vIFdvcmthcm91bmQgZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzIxMTQgKi9cbiAgLy8gQmFzZWQgb246IGB+Ym9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3NgXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4tZ3JvdXAsXG4gICAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLWdyb3VwLFxuICAgID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gICAgICA+IC5idG4ge1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bi1ncm91cCxcbiAgICA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bi1ncm91cCxcbiAgICA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICA+IC5idG4ge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiJGJ2LWZvcm0tYnRuLWxhYmVsLWNvbnRyb2wtZGVmaW5lZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIE1ha2Ugc3VyZSB0byBpbmNsdWRlIHRoZXNlIHN0eWxlIGRlZmluaXRpb25zIG9ubHkgb25jZVxuQGlmICRidi1mb3JtLWJ0bi1sYWJlbC1jb250cm9sLWRlZmluZWQgPT0gZmFsc2Uge1xuICAkYnYtZm9ybS1idG4tbGFiZWwtY29udHJvbC1kZWZpbmVkOiB0cnVlO1xuXG4gIC8vIEN1c3RvbSBCVkZvcm1CdG5MYWJlbENvbnRyb2wgc3R5bGluZ1xuICAvLyBDdXJyZW50bHkgdXNlZCBieSBCRm9ybVRpbWVwaWNrZXIgYW5kIEJGb3JtRGF0ZXBpY2tlclxuICAvLyBEb2VzIG5vdCBhcHBseSB0byBidXR0b24tb25seSBzdHlsaW5nXG4gIC5iLWZvcm0tYnRuLWxhYmVsLWNvbnRyb2wuZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8vIFJlbW92ZSBiYWNrZ3JvdW5kIHZhbGlkYXRpb24gaW1hZ2VzIGFuZCBwYWRkaW5nIGZyb21cbiAgICAvLyBtYWluIHdyYXBwZXIgYXMgdGhleSB3aWxsIGJlIHByZXNlbnQgaW4gdGhlIGlubmVyIGxhYmVsIGVsZW1lbnRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gICAgQGF0LXJvb3Qge1xuICAgICAgLy8gSGFuZGxlIGAuaW5wdXQtZ3JvdXBgIHBhZGRpbmcgb3ZlcnJpZGVzXG4gICAgICAuaW5wdXQtZ3JvdXAgJiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGF0LXJvb3Qge1xuICAgICAgLy8gUHJldmVudCB0aGUgYnV0dG9uL2xhYmVsIGZyb20gcmV2ZXJzaW5nIG9yZGVyIG9uIGluIGhvcml6b250YWwgUlRMIG1vZGVcbiAgICAgIFtkaXI9XCJydGxcIl0gJixcbiAgICAgICZbZGlyPVwicnRsXCJdIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXG4gICAgICAgID4gbGFiZWwge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuYnRuIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy12YWxpZCA+IC5idG4ge1xuICAgICAgY29sb3I6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yO1xuICAgIH1cblxuICAgICYuaXMtaW52YWxpZCA+IC5idG4ge1xuICAgICAgY29sb3I6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I7XG4gICAgfVxuXG4gICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgfVxuXG4gICAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIC8vIFNldCBhIG1pbmltdW0gaGVpZ2h0LCBhcyB3ZSBoYXZlIGhlaWdodCBzZXQgdG8gYGF1dG9gXG4gICAgICAvLyAodG8gYWxsb3cgdGhlIGNvbnRlbnQgdG8gd3JhcCwgaWYgbmVlZGVkKVxuICAgICAgLy8gV2Ugc3VidHJhY3Qgb2ZmIHRoZSBib3JkZXIsIGFzIHdlIGhhdmUgYm9yZGVyIHNldCB0byBgMGBcbiAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoI3skaW5wdXQtaGVpZ2h0fSAtICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG5cbiAgICAgICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICAgICAgbWluLWhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHQtc219IC0gI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pO1xuICAgICAgfVxuXG4gICAgICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWxnfSAtICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KTtcbiAgICAgIH1cblxuICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAvLyBIYW5kbGUgaW5wdXQgZ3JvdXAgc2l6aW5nXG4gICAgICAgIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC1zbSAmIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodC1zbX0gLSAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSk7XG4gICAgICAgICAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXktc207XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1wYWRkaW5nLXktc207XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtbGcgJiB7XG4gICAgICAgICAgbWluLWhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHQtbGd9IC0gI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15LWxnO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15LWxnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBzdHlsaW5nXG4gICAgJlthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSxcbiAgICAmW2FyaWEtcmVhZG9ubHk9XCJ0cnVlXCJdIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJlthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgPiBsYWJlbCB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBCdXR0b24gb25seSBtb2RlIG1lbnUgcGFkZGluZyBvdmVycmlkZXNcbiAgLmItZm9ybS1idG4tbGFiZWwtY29udHJvbC5idG4tZ3JvdXAge1xuICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQWRkcyBpbiBzaXplcyBmb3IgY3VzdG9tLWZpbGVcblxuLy8gUHJldmVudCBmaWxlIG5hbWVzIGZyb20gb3ZlcmZsb3dpbmcgdGhlIGZpbGUgaW5wdXRcbi8vIFRoZXNlIHN0eWxlcyBjYW4gYmUgcmVtb3ZlZCB3aGVuIHRoZSByZWxhdGVkIEJvb3RzdHJhcCBidWcgZ2V0cyBmaXhlZDpcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMzE1Nzdcbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLmItY3VzdG9tLWNvbnRyb2wtbGcsXG4uaW5wdXQtZ3JvdXAtbGcge1xuICAmLmN1c3RvbS1maWxlLFxuICAuY3VzdG9tLWZpbGUtaW5wdXQsXG4gIC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAkYi1jdXN0b20tZmlsZS1mb250LXNpemUtbGc7XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tZmlsZS1oZWlnaHQtbGc7XG4gIH1cblxuICAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gIC5jdXN0b20tZmlsZS1sYWJlbDphZnRlciB7XG4gICAgcGFkZGluZzogJGItY3VzdG9tLWZpbGUtcGFkZGluZy15LWxnICRiLWN1c3RvbS1maWxlLXBhZGRpbmcteC1sZztcbiAgICBsaW5lLWhlaWdodDogJGItY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQtbGc7XG4gIH1cblxuICAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGItY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBoZWlnaHQ6ICRiLWN1c3RvbS1maWxlLWhlaWdodC1pbm5lci1sZztcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkYi1jdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzLWxnICRiLWN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMtbGcgMCk7XG4gICAgfVxuICB9XG59XG5cbi5iLWN1c3RvbS1jb250cm9sLXNtLFxuLmlucHV0LWdyb3VwLXNtIHtcbiAgJi5jdXN0b20tZmlsZSxcbiAgLmN1c3RvbS1maWxlLWlucHV0LFxuICAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJGItY3VzdG9tLWZpbGUtZm9udC1zaXplLXNtO1xuICAgIGhlaWdodDogJGItY3VzdG9tLWZpbGUtaGVpZ2h0LXNtO1xuICB9XG5cbiAgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAuY3VzdG9tLWZpbGUtbGFiZWw6YWZ0ZXIge1xuICAgIHBhZGRpbmc6ICRiLWN1c3RvbS1maWxlLXBhZGRpbmcteS1zbSAkYi1jdXN0b20tZmlsZS1wYWRkaW5nLXgtc207XG4gICAgbGluZS1oZWlnaHQ6ICRiLWN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0LXNtO1xuICB9XG5cbiAgLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiLWN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMtc20pO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgaGVpZ2h0OiAkYi1jdXN0b20tZmlsZS1oZWlnaHQtaW5uZXItc207XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGItY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cy1zbSAkYi1jdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzLXNtIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVGVtcG9yYXJ5IGZpeCBmb3IgY3NzbmFubyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9jc3NuYW5vL2Nzc25hbm8vaXNzdWVzLzcxMlxuLy8gQnkgbW92aW5nIGNlbnRlciB0byBsYXN0IHZhbHVlIGluIGBiYWNrZ3JvdW5kLXBvc2l0aW9uYCBwcm9wZXJ0eVxuLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYm9vdHN0cmFwLXZ1ZS9ib290c3RyYXAtdnVlL2lzc3Vlcy8yNTk5XG5AaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjppbnZhbGlkLFxuICAgIC53YXMtdmFsaWRhdGVkICY6dmFsaWQsXG4gICAgJi5pcy1pbnZhbGlkLFxuICAgICYuaXMtdmFsaWQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gQm9vdHN0cmFwIHY0LnggZG9lcyBub3QgaGF2ZSBzcGVjaWFsIHN0eWxpbmcgZm9yIGNvbG9yIGlucHV0XG4vLyBTbyB3ZSBkZWZpbmUgc29tZSBiYXNpYyBzdHlsZXMgdG8gY29tcGVuc2F0ZVxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgLy8gV2UgdXNlIHRoZSBzbWFsbGVyIHBhZGRpbmcgdG8gbWFrZSB0aGUgY29sb3IgYmxvY2sgbGFyZ2VyXG4gIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15LXNtIC8gMikgKCRpbnB1dC1wYWRkaW5nLXgtc20gLyAyKTtcbn1cblxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4uaW5wdXQtZ3JvdXAtc20gaW5wdXRbdHlwZT1cImNvbG9yXCJdLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgLy8gV2UgdXNlIHRoZSBzbWFsbGVyIHBhZGRpbmcgdG8gbWFrZSB0aGUgY29sb3IgYmxvY2sgbGFyZ2VyXG4gIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15LXNtIC8gMikgKCRpbnB1dC1wYWRkaW5nLXgtc20gLyAyKTtcbn1cblxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgaW5wdXRbdHlwZT1cImNvbG9yXCJdLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogKCRpbnB1dC1wYWRkaW5nLXktc20gLyAyKSAoJGlucHV0LXBhZGRpbmcteC1zbSAvIDIpO1xufVxuXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0uZm9ybS1jb250cm9sOmRpc2FibGVkIHtcbiAgLy8gRGlzYWJsZWQgc3R5bGluZyBuZWVkcyB0byBiZSBhIGJpdCBkaWZmZXJlbnQgdGhhbiByZWd1bGFyIGlucHV0c1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS01MDA7XG4gIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbn1cblxuLy8gLS0tIEJhc2UgYC5pbnB1dC1ncm91cCA+IC5jdXN0b20tcmFuZ2VgIHN0eWxpbmcgKG5vIFBSIHlldCBvbiBCb290c3RyYXAgdjQpIC0tLVxuLmlucHV0LWdyb3VwIHtcbiAgPiAuY3VzdG9tLXJhbmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1yYW5nZSxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5jdXN0b20tc2VsZWN0LFxuICA+IC5jdXN0b20tcmFuZ2UsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICArIC5jdXN0b20tcmFuZ2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gID4gLmN1c3RvbS1yYW5nZTpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gID4gLmN1c3RvbS1yYW5nZSB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gID4gLmN1c3RvbS1yYW5nZSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG5cbiAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcbiAgICAvLyBCb290c3RyYXAgdjQuMy4yIGhhcyBkZXByZWNhdGVkIHRoaXMgbWl4aW5cbiAgICAvLyBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoKTtcbiAgICAvLyBTbyB3ZSBtYW51YWxseSBhZGQgaXRzIGNvbnRlbnQgaGVyZVxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjsgLy8gb25seSBuZWVkZWQgZm9yIGZhbGxiYWNrIHRvIHRleHQgaW5wdXRcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXJhbmdlIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAwICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXJhbmdlIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAwICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4vLyAtLS0gPGItZm9ybS1pbnB1dD46IGN1c3RvbS1yYW5nZSB2YWxpZGF0aW9uIHN0eWxpbmcgLSB2YWxpZCAobm8gUFIgeWV0IGZvciBCb290c3RyYXAgdjQuMikgLS0tXG4vLyBNaXhpbiBmb3IgZ2VuZXJhdGluZyBgLmlucHV0LWdyb3VwIC5jdXN0b20tcmFuZ2VgIHZhbGlkYXRpb24gc3R5bGluZ1xuQG1peGluIGJ2LWN1c3RvbS1yYW5nZS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC5pbnB1dC1ncm91cCAuY3VzdG9tLXJhbmdlIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIDAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tcmFuZ2Uge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGFmZmVjdFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGJvZHktYmcsIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggbGlnaHRlbigkY29sb3IsIDM1JSk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRib2R5LWJnLCAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoIGxpZ2h0ZW4oJGNvbG9yLCAzNSUpO1xuICAgICAgICB9XG4gICAgICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRib2R5LWJnLCAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoIGxpZ2h0ZW4oJGNvbG9yLCAzNSUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMzUlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsIDAuMzUpO1xuICAgICAgfVxuXG4gICAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMzUlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgMC4zNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3IsIDM1JSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOjotbXMtdHJhY2stbG93ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgMC4zNSk7XG4gICAgICB9XG4gICAgICAmOjotbXMtdHJhY2stdXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgMC4zNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGJ2LWN1c3RvbS1yYW5nZS12YWxpZGF0aW9uLXN0YXRlKFwidmFsaWRcIiwgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IpO1xuQGluY2x1ZGUgYnYtY3VzdG9tLXJhbmdlLXZhbGlkYXRpb24tc3RhdGUoXCJpbnZhbGlkXCIsICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IpO1xuIiwiLy8gQWRkcyBjb250cm9sIHNpemluZyB0byBCb290c3RyYXAgY3VzdG9tIHJhZGlvIGlucHV0c1xuXG4uY3VzdG9tLXJhZGlvLmItY3VzdG9tLWNvbnRyb2wtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgLmN1c3RvbS1yYWRpbyB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sZztcbiAgcGFkZGluZy1sZWZ0OiAkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcgKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZztcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZyAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKSAvIDI7XG4gICAgbGVmdDogLSgkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcgKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyk7XG4gICAgd2lkdGg6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnO1xuICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgYm9yZGVyLXJhZGl1czogJGItY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZyAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKSAvIDI7XG4gICAgbGVmdDogLSgkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcgKyAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyk7XG4gICAgd2lkdGg6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnO1xuICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJSAvICN7JGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemUtbGd9O1xuICB9XG59XG5cbi5jdXN0b20tcmFkaW8uYi1jdXN0b20tY29udHJvbC1zbSxcbi5pbnB1dC1ncm91cC1zbSAuY3VzdG9tLXJhZGlvIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICBib3JkZXItcmFkaXVzOiAkYi1jdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc207XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1zbX07XG4gIH1cbn1cbiIsIi5iLXJhdGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmLmQtaW5saW5lLWZsZXgge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmItcmF0aW5nLXN0YXIsXG4gIC5iLXJhdGluZy12YWx1ZSB7XG4gICAgcGFkZGluZzogMCAwLjI1ZW07XG4gIH1cblxuICAuYi1yYXRpbmctdmFsdWUge1xuICAgIC8vIEtlZXAgdGhlIHN0YXJzIGZyb20gbW92aW5nIHdoZW4gdmFsdWUgY2hhbmdlcyAodXN1YWxseSlcbiAgICBtaW4td2lkdGg6IDIuNWVtO1xuICB9XG5cbiAgLmItcmF0aW5nLXN0YXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAuYi1yYXRpbmctaWNvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG5cbiAgJjpub3QoLmRpc2FibGVkKTpub3QoLnJlYWRvbmx5KSB7XG4gICAgLmItcmF0aW5nLXN0YXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC8vIFpvb20gZm9jdXNlZCBvciBob3ZlcmVkIGljb25zXG4gICAgJjpmb2N1czpub3QoOmhvdmVyKSAuYi1yYXRpbmctc3Rhci5mb2N1c2VkLFxuICAgIC5iLXJhdGluZy1zdGFyOmhvdmVyIHtcbiAgICAgIC5iLXJhdGluZy1pY29uIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEZsaXAgdGhlIGhhbGYgaWNvbiBpZiBSVEwgbW9kZVxuICAvLyBXZSB0cmFuc2Zvcm0gdGhlIG91dGVyIHN0YXIgd3JhcHBlciBzbyB0aGF0IHdlIGRvIG5vdFxuICAvLyBpbnRlcmZlcmUgd2l0aCB0aGUgaG92ZXIvZm9jdXMgdHJhbnNmb3JtIGFib3ZlXG4gICZbZGlyPVwicnRsXCJdIHtcbiAgICAuYi1yYXRpbmctc3Rhci1oYWxmIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgIH1cbiAgfVxufVxuIiwiLmItZm9ybS1zcGluYnV0dG9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAvLyBRdWljayB3YXkgdG8gZ2V0IGVuZCBidXR0b25zIHJvdW5kZWQgb24gb3V0c2lkZSBlZGdlc1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBIaWRlIHZhbGlkYXRpb24gaWNvbiwgYXMgdGhlcmUgaXMgbm8gcm9vbSBmb3IgaXRcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgcGFkZGluZzogMDtcblxuICBAYXQtcm9vdCB7XG4gICAgLy8gUHJldmVudCB0aGUgYnV0dG9ucyBmcm9tIHJldmVyc2luZyBvcmRlciBvbiBpbiBob3Jpem9udGFsIFJUTCBtb2RlXG4gICAgW2Rpcj1cInJ0bFwiXSAmOm5vdCguZmxleC1jb2x1bW4pLFxuICAgICZbZGlyPVwicnRsXCJdOm5vdCguZmxleC1jb2x1bW4pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cblxuICBvdXRwdXQge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwLjI1cmVtO1xuXG4gICAgPiBkaXYsXG4gICAgPiBiZGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtaW4td2lkdGg6IDIuMjVlbTtcbiAgICAgIC8vIFdlIHNldCBhIGhlaWdodCB0byBlbnN1cmUgYW4gZW1wdHkgdmFsdWUgaXNuJ3QgY29sbGFwc2VkXG4gICAgICBoZWlnaHQ6IDFlbSAqICRpbnB1dC1saW5lLWhlaWdodDtcbiAgICB9XG4gIH1cblxuICAmLmZsZXgtY29sdW1uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICBvdXRwdXQge1xuICAgICAgbWFyZ2luOiAwIDAuMjVyZW07XG4gICAgICBwYWRkaW5nOiAwLjI1cmVtIDA7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLmQtaW5saW5lLWZsZXgpOm5vdCguZmxleC1jb2x1bW4pIHtcbiAgICBvdXRwdXQ6IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICYuZC1pbmxpbmUtZmxleDpub3QoLmZsZXgtY29sdW1uKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuYnRuIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCkgPiBkaXYgPiAuYi1pY29uIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJi5yZWFkb25seSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cbiIsIi5iLWZvcm0tdGFncyB7XG4gIC5iLWZvcm0tdGFncy1saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcblxuICAgIC5iLWZyb20tdGFncy1maWVsZCxcbiAgICAuYi1mb3JtLXRhZyB7XG4gICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIH1cbiAgfVxuXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJi5pcy12YWxpZCB7XG4gICAgICBib3JkZXItY29sb3I6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsIDAuMjUpO1xuICAgIH1cblxuICAgICYuaXMtaW52YWxpZCB7XG4gICAgICBib3JkZXItY29sb3I6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLCAwLjI1KTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gIH1cbn1cblxuLmItZm9ybS10YWcge1xuICAvLyBPdmVycmlkZSBkZWZhdWx0IGJhZGdlIHNldHRpbmdzXG4gIC8vIER1ZSB0byB1c2luZyB0ZXh0LXRydW5jYXRlIG9uIHRoZSBpbm5lciBjb250ZW50XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC43NTtcbiAgfVxuXG4gIC8vIE92ZXJyaWRlIGRlZmF1bHQgY2xvc2UgYnV0dG9uIHNldHRpbmdzXG4gID4gYnV0dG9uLmItZm9ybS10YWctcmVtb3ZlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDEyNSU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1zbSAuYi1mb3JtLXRhZyB7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcgLmItZm9ybS10YWcge1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xufVxuIiwiLm1lZGlhLWFzaWRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4ubWVkaWEtYXNpZGUtcmlnaHQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuIiwiLy8gTmVlZGVkIHRvIGFsbG93IFZ1ZSB0cmFuc2l0aW9uIHN5c3RlbSB0byB3b3JrIHdpdGggQm9vdHN0cmFwIHY0IC5tb2RhbC1iYWNrZHJvcFxuLy8gYXMgbW9kYWwgb3BhY2l0eSBpcyAxIGJ5IGRlZmF1bHRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5O1xufVxuIiwiLy8gPHBhZ2luYXRpb24+IGFuZCA8cGFnaW5hdGlvbi1uYXY+IHJlcXVpcmUgdGhlIGhlbHBlciB1dGlsaXR5IGNsYXNzZXNcbkBpbXBvcnQgXCIuLi8uLi91dGlsaXRpZXNcIjtcblxuJGJ2LXBhZ2luYXRpb24tY2xhc3Nlcy1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gTWFrZSBzdXJlIHRvIGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25seSBvbmNlXG5AaWYgJGJ2LXBhZ2luYXRpb24tY2xhc3Nlcy1kZWZpbmVkID09IGZhbHNlIHtcbiAgJGJ2LXBhZ2luYXRpb24tY2xhc3Nlcy1kZWZpbmVkOiB0cnVlO1xuXG4gIC8vIFBhZ2luYXRpb24gcGlsbCBzdHlsZVxuICAuYi1wYWdpbmF0aW9uLXBpbGxzIHtcbiAgICAucGFnZS1pdGVtIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gU29tZSBvdmVycmlkZXMgdG8gbWFrZSBwb3BvdmVyIHRyYW5zaXRpb25zIHdvcmsgd2l0aCBWdWUgYDx0cmFuc2l0aW9uPmBcbi5wb3BvdmVyLmItcG9wb3ZlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xuICAvLyBOZWVkZWQgZHVlIHRvIEJvb3RzdHJhcCB2NC40IHJlYm9vdC5jc3MgY2hhbmdlc1xuICBvdXRsaW5lOiAwO1xuXG4gICYuZmFkZTpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBpZiAkYnYtZW5hYmxlLXBvcG92ZXItdmFyaWFudHMge1xuICBAZWFjaCAkdmFyaWFudCwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC5iLXBvcG92ZXItI3skdmFyaWFudH0ge1xuICAgICAgJHBvLWJnLWNvbG9yOiB0aGVtZS1jb2xvci1sZXZlbCgkdmFyaWFudCwgJGItcG9wb3Zlci1iZy1sZXZlbCk7XG4gICAgICAkcG8tYm9yZGVyLWNvbG9yOiB0aGVtZS1jb2xvci1sZXZlbCgkdmFyaWFudCwgJGItcG9wb3Zlci1ib3JkZXItbGV2ZWwpO1xuICAgICAgJHBvLWNvbG9yOiB0aGVtZS1jb2xvci1sZXZlbCgkdmFyaWFudCwgJGItcG9wb3Zlci1jb2xvci1sZXZlbCk7XG4gICAgICAkcG8taGVhZGVyLWJnOiBkYXJrZW4oJHBvLWJnLWNvbG9yLCAzJSk7XG4gICAgICAkcG8taGVhZGVyLWNvbG9yOiBjb2xvci15aXEoJHBvLWhlYWRlci1iZyk7XG4gICAgICAkcG8tYXJyb3ctY29sb3I6ICRwby1iZy1jb2xvcjtcbiAgICAgICRwby1hcnJvdy1jb2xvci1ib3R0b206ICRwby1oZWFkZXItYmc7XG4gICAgICAkcG8tYXJyb3ctb3V0ZXItY29sb3I6IGZhZGUtaW4oJHBvLWJvcmRlci1jb2xvciwgMC4wNSk7XG5cbiAgICAgICYucG9wb3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwby1iZy1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcG8tYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmJzLXBvcG92ZXItdG9wIHtcbiAgICAgICAgPiAuYXJyb3cge1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG8tYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvLWFycm93LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXBvcG92ZXItcmlnaHQge1xuICAgICAgICA+IC5hcnJvdyB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvLWFycm93LW91dGVyLWNvbG9yO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvLWFycm93LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgICAgICAgPiAuYXJyb3cge1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG8tYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgLy8gVXNlIHRoZSBoZWFkZXIgYmcgY29sb3JcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwby1hcnJvdy1jb2xvci1ib3R0b207XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwby1oZWFkZXItYmc7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5icy1wb3BvdmVyLWxlZnQge1xuICAgICAgICA+IC5hcnJvdyB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG8tYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwby1hcnJvdy1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5icy1wb3BvdmVyLWF1dG8ge1xuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgICAgICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gICAgICAgIH1cbiAgICAgICAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgICAgICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgICAgICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gICAgICAgIH1cbiAgICAgICAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnBvcG92ZXItaGVhZGVyIHtcbiAgICAgICAgY29sb3I6ICRwby1oZWFkZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwby1oZWFkZXItYmc7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGRhcmtlbigkcG8taGVhZGVyLWJnLCA1JSk7XG4gICAgICB9XG5cbiAgICAgIC5wb3BvdmVyLWJvZHkge1xuICAgICAgICBjb2xvcjogJHBvLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmItc2lkZWJhci1vdXRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgei1pbmRleDogJGItc2lkZWJhci16aW5kZXg7XG59XG5cbi5iLXNpZGViYXItYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uYi1zaWRlYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAkYi1zaWRlYmFyLXdpZHRoO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXG4gICYuc2xpZGUge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkYi1zaWRlYmFyLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQ7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLmItc2lkZWJhci1yaWdodCkge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG5cbiAgICAmLnNsaWRlOm5vdCguc2hvdykge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICB9XG5cbiAgICA+IC5iLXNpZGViYXItaGVhZGVyIC5jbG9zZSB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmLmItc2lkZWJhci1yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcblxuICAgICYuc2xpZGU6bm90KC5zaG93KSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxuXG4gICAgPiAuYi1zaWRlYmFyLWhlYWRlciAuY2xvc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gID4gLmItc2lkZWJhci1oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogJGItc2lkZWJhci1oZWFkZXItZm9udC1zaXplO1xuICAgIHBhZGRpbmc6ICRiLXNpZGViYXItaGVhZGVyLXBhZGRpbmcteSAkYi1zaWRlYmFyLWhlYWRlci1wYWRkaW5nLXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGF0LXJvb3Qge1xuICAgICAgLy8gS2VlcCB0aGUgYnV0dG9ucyBvbiB0aGUgY29ycmVjdCBlbmQgd2hlbiBpbiBSVEwgbW9kZVxuICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jbG9zZSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogJGItc2lkZWJhci1oZWFkZXItZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gID4gLmItc2lkZWJhci1ib2R5IHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICA+IC5iLXNpZGViYXItZm9vdGVyIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gIH1cbn1cbiIsIi8vIFdyYXBwZXJcbi5iLXNrZWxldG9uLXdyYXBwZXIge1xuICBjdXJzb3I6ICRiLXNrZWxldG9uLWxvYWRpbmctY3Vyc29yO1xufVxuXG4vLyBCYXNlXG4uYi1za2VsZXRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGItc2tlbGV0b24tYmFja2dyb3VuZC1jb2xvcjtcbiAgY3Vyc29yOiAkYi1za2VsZXRvbi1sb2FkaW5nLWN1cnNvcjtcbiAgLy8gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vYXlhbWZsb3cvYjYwMmFiNDM2YWM5ZjA1NjYwZDljMTUxOTBmNGZkN2JcbiAgbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7XG5cbiAgLy8gVXNlIGA6OmJlZm9yZWAgc2luY2UgYDo6YWZ0ZXJgIGlzIHVzZWQgZm9yIHRoZSB3YXZlLWFuaW1hdGlvblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwwMGEwXCI7XG4gIH1cbn1cblxuLy8gVGV4dFxuLmItc2tlbGV0b24tdGV4dCB7XG4gIGhlaWdodDogJGZvbnQtc2l6ZS1iYXNlO1xuICBtYXJnaW4tYm90dG9tOiAkYi1za2VsZXRvbi10ZXh0LXNwYWNpbmc7XG5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgfVxufVxuXG4vLyBCdXR0b25cbi5iLXNrZWxldG9uLWJ1dHRvbiB7XG4gIHdpZHRoOiAkYi1za2VsZXRvbi1idG4td2lkdGg7XG4gIHBhZGRpbmc6ICRidG4tcGFkZGluZy15ICRidG4tcGFkZGluZy14O1xuICBmb250LXNpemU6ICRidG4tZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodDtcblxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuLy8gQXZhdGFyXG4uYi1za2VsZXRvbi1hdmF0YXIge1xuICB3aWR0aDogMi41ZW07XG4gIGhlaWdodDogMi41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLy8gSW5wdXRcbi5iLXNrZWxldG9uLWlucHV0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci1jb2xvciBzb2xpZCAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbi8vIEljb25cbi5iLXNrZWxldG9uLWljb24td3JhcHBlciB7XG4gIHN2ZyB7XG4gICAgY29sb3I6ICRiLXNrZWxldG9uLWJhY2tncm91bmQtY29sb3I7XG4gIH1cbn1cblxuLy8gSW1hZ2Vcbi5iLXNrZWxldG9uLWltZyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFdhdmUgYW5pbWF0aW9uXG4uYi1za2VsZXRvbi1hbmltYXRlLXdhdmUge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHRyYW5zcGFyZW50LCBoc2xhKDAsIDAlLCAxMDAlLCAwLjQpLCB0cmFuc3BhcmVudCk7XG4gICAgYW5pbWF0aW9uOiBiLXNrZWxldG9uLWFuaW1hdGUtd2F2ZSAkYi1za2VsZXRvbi1hbmltYXRpb24tZHVyYXRpb24gbGluZWFyIGluZmluaXRlO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgYi1za2VsZXRvbi1hbmltYXRlLXdhdmUge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cbn1cblxuLy8gRmFkZSBhbmltYXRpb25cbi5iLXNrZWxldG9uLWFuaW1hdGUtZmFkZSB7XG4gIGFuaW1hdGlvbjogYi1za2VsZXRvbi1hbmltYXRlLWZhZGUgKCRiLXNrZWxldG9uLWFuaW1hdGlvbi1kdXJhdGlvbiAvIDIpIGVhc2UtaW4tb3V0IGFsdGVybmF0ZVxuICAgIGluZmluaXRlO1xuXG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYi1za2VsZXRvbi1hbmltYXRlLWZhZGUge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwLjQ7XG4gIH1cbn1cblxuLy8gVGhyb2IgYW5pbWF0aW9uXG4uYi1za2VsZXRvbi1hbmltYXRlLXRocm9iIHtcbiAgYW5pbWF0aW9uOiBiLXNrZWxldG9uLWFuaW1hdGUtdGhyb2IgKCRiLXNrZWxldG9uLWFuaW1hdGlvbi1kdXJhdGlvbiAvIDIpIGVhc2UtaW4gYWx0ZXJuYXRlXG4gICAgaW5maW5pdGU7XG5cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBiLXNrZWxldG9uLWFuaW1hdGUtdGhyb2Ige1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTc1KTtcbiAgfVxufVxuIiwiLy8gLS0tIEdlbmVyYWwgc3R5bGluZyAtLS1cblxuLnRhYmxlLmItdGFibGUge1xuICAvLyBUYWJsZSBmaXhlZCBoZWFkZXIgd2lkdGggbGF5b3V0XG4gICYuYi10YWJsZS1maXhlZCB7XG4gICAgLy8gRml4ZWQgd2lkdGggY29sdW1uc1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBib3JkZXItY29sbGFwc2VcbiAgLy8gTWFpbmx5IGZvciB1c2Ugd2l0aCBzdGlja3kgaGVhZGVycyBhbmQgY29sdW1uc1xuICAmLmItdGFibGUtbm8tYm9yZGVyLWNvbGxhcHNlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICB9XG5cbiAgLy8gVGFibGUgYnVzeSBzdHlsaW5nXG4gICZbYXJpYS1idXN5PVwidHJ1ZVwiXSB7XG4gICAgb3BhY2l0eTogJGItdGFibGUtYnVzeS1vcGFjaXR5O1xuICB9XG5cbiAgLy8gRGV0YWlscyByb3cgc3R5bGluZ1xuICA+IHRib2R5ID4gdHIuYi10YWJsZS1kZXRhaWxzID4gdGQge1xuICAgIGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIENhcHRpb24gcG9zaXRpb25pbmdcbiAgPiBjYXB0aW9uIHtcbiAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgfVxuXG4gICYuYi10YWJsZS1jYXB0aW9uLXRvcCB7XG4gICAgPiBjYXB0aW9uIHtcbiAgICAgIGNhcHRpb24tc2lkZTogdG9wICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmUtZGVjbGFyZSBgdGFibGUtYWN0aXZlYCBjbGFzcyBoZXJlIHNvIHRoYXQgaXQgY2FuIHRha2VcbiAgLy8gcHJlY2VkZW5jZSBvdmVyIHJvdyB2YXJpYW50cyB3aGVuIHVzZWQgb24gc2VsZWN0YWJsZSByb3dzXG4gIC8vIENsYXNzIGNhbiBvbmx5IGJlIGFwcGxpZWQgdG8gcm93cyBhbmQgbm90IGluZGl2aWR1YWwgY2VsbHNcbiAgPiB0Ym9keSA+IC50YWJsZS1hY3RpdmUge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY3RpdmUtYmc7XG4gICAgfVxuICB9XG5cbiAgLy8gQWRkIHNwZWNpYWwgaG92ZXIgc3R5bGluZyBmb3IgYHRhYmxlLWFjdGl2ZWAgcm93IHZhcmlhbnRcbiAgJi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIudGFibGUtYWN0aXZlOmhvdmVyIHtcbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgLy8gYCR0YWJsZS1ob3Zlci1iZ2AgZGVmYXVsdCBpcyBhIHZlcnkgdHJhbnNwYXJlbnQgYmxhY2tcbiAgICAgIC8vIFdlIG92ZXJsYXkgaXQgb3ZlciB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBhY2hpZXZlIHRoZVxuICAgICAgLy8gc2FtZSBjb2xvciBlZmZlY3Qgd2hpbGUga2VlcGluZyB0aGUgYmFja2dyb3VuZCBzb2xpZFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCR0YWJsZS1ob3Zlci1iZywgJHRhYmxlLWhvdmVyLWJnKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWRkIGluIG1pc3NpbmcgYGJnLWFjdGl2ZWAgY2xhc3MgZm9yIHRhYmxlIHRib2R5IHJvd3NcbiAgLy8gQm9vdHN0cmFwIHY0LjMgaXMgbWlzc2luZyB0aGlzIGZvciBkYXJrIHRhYmxlc1xuICAvLyBgYmctYWN0aXZlYCBjbGFzcyBjYW5ub3QgYmUgYXBwbGllZCB0byBpbmRpdmlkdWFsIGNlbGxzXG4gID4gdGJvZHkgPiAuYmctYWN0aXZlIHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICAvLyBJbXBvcnRhbnQgaXMgbmVlZGVkIHRvIG92ZXJyaWRlIHRoZSBzdGFuZGFyZCBgYmctdmFyaWFudHNgXG4gICAgICAvLyBhcyB0aGUgYWxzbyB1c2UgYCFpbXBvcnRhbnRgXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY3RpdmUtYmcgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgc3BlY2lhbCBob3ZlciBzdHlsaW5nIGZvciBgYmctYWN0aXZlYCByb3cgdmFyaWFudCAoZGFyayB0YWJsZXMpXG4gICYudGFibGUtaG92ZXIudGFibGUtZGFyayA+IHRib2R5ID4gdHIuYmctYWN0aXZlOmhvdmVyIHtcbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAvLyBgJHRhYmxlLWRhcmstaG92ZXItYmdgIGRlZmF1bHQgaXMgYSB2ZXJ5IHRyYW5zcGFyZW50IHdoaXRlXG4gICAgICAvLyBXZSBvdmVybGF5IGl0IG92ZXIgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gYWNoaWV2ZSB0aGVcbiAgICAgIC8vIHNhbWUgY29sb3IgZWZmZWN0IHdoaWxlIGtlZXBpbmcgdGhlIGJhY2tncm91bmQgc29saWRcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkdGFibGUtZGFyay1ob3Zlci1iZywgJHRhYmxlLWRhcmstaG92ZXItYmcpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gIH1cbn1cblxuLy8gLS0tIFRhYmxlIHN0aWNreSBoZWFkZXIgc3R5bGluZyAtLS1cblxuQGlmICRidi1lbmFibGUtdGFibGUtc3RpY2t5IHtcbiAgLmItdGFibGUtc3RpY2t5LWhlYWRlcixcbiAgLnRhYmxlLXJlc3BvbnNpdmUsXG4gIFtjbGFzcyo9XCJ0YWJsZS1yZXNwb25zaXZlLVwiXSB7XG4gICAgLy8gTW92ZSB0aGUgdGFibGUgYm90dG9tIG1hcmdpbiB0byB0aGUgd3JhcHBlclxuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cbiAgICA+IC50YWJsZSB7XG4gICAgICAvLyBSZXNldCBgbWFyZ2luLWJvdHRvbWAgdG8gd2UgZG9uJ3QgZ2V0IGEgc3BhY2UgYWZ0ZXJcbiAgICAgIC8vIHRoZSB0YWJsZSBpbnNpZGUgdGhlIHNjcm9sbCBhcmVhXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5iLXRhYmxlLXN0aWNreS1oZWFkZXIge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLy8gQW5ub3lpbmdseSwgd2hlbiBvdmVyZmxvdy15IGlzIHNldCwgYnJvd3NlcnMgY29udmVydFxuICAgIC8vICdvdmVyZmxvdy14OiB2aXNpYmxlJyB0byAnb3ZlcmZsb3cteDogYXV0bycgLSBzbyBpdCBiZWNvbWVzXG4gICAgLy8gcmVzcG9uc2l2ZSBpbiB0aGUgeCBheGlzIGF1dG9tYXRpY2FsbHlcbiAgICAvLyBEZWZhdWx0IGBtYXgtaGVpZ2h0YCBiZWZvcmUgYSBzY3JvbGxiYXIgd2lsbCBzaG93XG4gICAgLy8gV2UgZG9uJ3QgdXNlIGBoZWlnaHRgIGFzIHRhYmxlIGNvdWxkIGJlIHNob3J0ZXIgdGhhbiB0aGlzIHZhbHVlXG4gICAgbWF4LWhlaWdodDogJGItdGFibGUtc3RpY2t5LWhlYWRlci1tYXgtaGVpZ2h0O1xuICB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAvLyBPdmVycmlkZSBhbnkgc3R5bGVzIChpbmNsdWRpbmcgaW5saW5lIHN0eWxlcylcbiAgICAvLyB3aGVuIHByaW50aW5nXG4gICAgLmItdGFibGUtc3RpY2t5LWhlYWRlciB7XG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgLy8gUG9zaXRpb25pbmcgb2Ygc3RpY2t5IGhlYWRlcnNcbiAgICAuYi10YWJsZS1zdGlja3ktaGVhZGVyID4gLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgICAgLy8gSGVhZGVyIGNlbGxzIG5lZWQgdG8gYmUgc3RpY2t5IG9uIHRvcFxuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLy8gUG9zaXRpb25pbmcgb2Ygc3RpY2t5IGNvbHVtbnNcbiAgICAvLyBTdGlja3kgY29sdW1ucyBvbmx5IHdvcmsgd2hlbiB0YWJsZSBoYXMgc3RpY2t5XG4gICAgLy8gaGVhZGVycyBhbmQvb3IgaXMgcmVzcG9uc2l2ZVxuICAgIC5iLXRhYmxlLXN0aWNreS1oZWFkZXIsXG4gICAgLnRhYmxlLXJlc3BvbnNpdmUsXG4gICAgW2NsYXNzKj1cInRhYmxlLXJlc3BvbnNpdmUtXCJdIHtcbiAgICAgID4gLnRhYmxlLmItdGFibGUge1xuICAgICAgICA+IHRoZWFkLFxuICAgICAgICA+IHRib2R5LFxuICAgICAgICA+IHRmb290IHtcbiAgICAgICAgICA+IHRyID4gLmItdGFibGUtc3RpY2t5LWNvbHVtbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IHRoZWFkIHtcbiAgICAgICAgICA+IHRyID4gLmItdGFibGUtc3RpY2t5LWNvbHVtbiB7XG4gICAgICAgICAgICAvLyB6LWluZGV4IG5lZWRzIHRvIGJlIGhpZ2hlciB0aGFuIHN0aWNreSBjb2x1bW5zIGFuZFxuICAgICAgICAgICAgLy8gc3RpY2t5IGhlYWRlcnMgZm9yIGNvcnJlY3QgbGF5ZXJpbmdcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiB0Ym9keSxcbiAgICAgICAgPiB0Zm9vdCB7XG4gICAgICAgICAgPiB0ciA+IC5iLXRhYmxlLXN0aWNreS1jb2x1bW4ge1xuICAgICAgICAgICAgLy8gei1pbmRleCBuZWVkcyB0byBiZSBsb3dlciB0aGFuIHN0aWNreSBoZWFkZXIgdGhhdFxuICAgICAgICAgICAgLy8gaXMgYWxzbyBhIHN0aWNreSBjb2x1bW5cbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGVmYXVsdCB0aGVtZSBjb2xvciBiYWNrZ3JvdW5kIGZvciB0YWJsZSBjZWxscyB0aGF0IGFyZSBzdGlja3lcbiAgICAvLyBBcHBsaWVkIG9ubHkgd2hlbiBubyB2YXJpYW50IGlzIGFwcGxpZWQgdG8gdGhlIHJvd3MsIG9yIG5vIGhlYWQtdmFyaWFudFxuICAgIC8vIE5lZWRlZCBiZWNhdXNlIEJvb3RzdHJhcCB2NCBkb2VzIG5vdCBoYXZlIHRhYmxlIGNoaWxkIGVsZW1lbnRzIHNldCB1cFxuICAgIC8vIHRvIGluaGVyaXQgdGhlaXIgYmFja2dyb3VuZCBjb2xvciBmcm9tIHBhcmVudCBlbGVtZW50IGJ5IGRlZmF1bHRcbiAgICAvL1xuICAgIC8vIEFuIGlzc3VlIG1hZGUgYXQgdHdicy9ib290c3RyYXAgcmVwbyBmb3IgdGFibGVcbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG9yIGluaGVyaXRhbmNlOlxuICAgIC8vICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTI0NFxuICAgIC8vIElmIGltcGxlbWVudGVkLCB3b3VsZCBuZWdhdGUgdGhlIG5lZWQgZm9yIGFsbCB0aGUgYmVsb3cgU0NTU1xuICAgIC50YWJsZS5iLXRhYmxlIHtcbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIgPiAudGFibGUtYi10YWJsZS1kZWZhdWx0IHtcbiAgICAgICAgICAvLyBEZWZhdWx0IGNlbGwgY29sb3JcbiAgICAgICAgICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICAgICAgICAgIC8vIGAkdGFibGUtYmdgIGlzIG51bGwgYnkgZGVmYXVsdCBpbiBCb290c3RyYXAgdjQgdmFyaWFibGVzXG4gICAgICAgICAgLy8gYnV0IGNvdWxkIGhhdmUgYSB2YWx1ZSBzZXQgYnkgdGhlIGNvbnN1bWVyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoJHRhYmxlLWJnLCAkdGFibGUtYmcsICRib2R5LWJnKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnRhYmxlLWRhcmsge1xuICAgICAgICA+IHRoZWFkLFxuICAgICAgICA+IHRib2R5LFxuICAgICAgICA+IHRmb290IHtcbiAgICAgICAgICA+IHRyID4gLmJnLWItdGFibGUtZGVmYXVsdCB7XG4gICAgICAgICAgICAvLyBEZWZhdWx0IGNlbGwgY29sb3IgaW4gdGFibGUgZGFyayBtb2RlXG4gICAgICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gICAgICAgICAgICAvLyBEZWZhdWx0IGNlbGwgYmFja2dyb3VuZCBjb2xvciBpbiB0YWJsZSBkYXJrIG1vZGVcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgY2FzZSBvZiB6ZWJyYSBzdHJpcGluZ1xuICAgICAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICAgICAgLy8gXCJmYWtlXCIgemVicmEgc3RyaXBpbmcgdmlhIHVzZSBvZiBhIHRyYW5zcGFyZW50IGJhY2tncm91bmQgaW1hZ2VcbiAgICAgICAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+IC50YWJsZS1iLXRhYmxlLWRlZmF1bHQge1xuICAgICAgICAgIC8vIGAkdGFibGUtYWNjZW50LWJnYCAodXNlZCBmb3Igc3RyaXBpbmcpIGRlZmF1bHQgaXMgYSB2ZXJ5IHRyYW5zcGFyZW50IGJsYWNrXG4gICAgICAgICAgLy8gV2Ugb3ZlcmxheSBpdCBvdmVyIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFjaGlldmUgdGhlIHNhbWUgY29sb3JcbiAgICAgICAgICAvLyBlZmZlY3Qgd2hpbGUga2VlcGluZyB0aGUgYmFja2dyb3VuZCBzb2xpZC5cbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHRhYmxlLWFjY2VudC1iZywgJHRhYmxlLWFjY2VudC1iZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuXG4gICAgICAgICYudGFibGUtZGFyayB7XG4gICAgICAgICAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+IC5iZy1iLXRhYmxlLWRlZmF1bHQge1xuICAgICAgICAgICAgLy8gYCR0YWJsZS1kYXJrLWFjY2VudC1iZ2AgKHVzZWQgZm9yIHN0cmlwaW5nKSBkZWZhdWx0IGlzIGEgdmVyeSB0cmFuc3BhcmVudCB3aGl0ZVxuICAgICAgICAgICAgLy8gV2Ugb3ZlcmxheSBpdCBvdmVyIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFjaGlldmUgdGhlIHNhbWUgY29sb3JcbiAgICAgICAgICAgIC8vIGVmZmVjdCB3aGlsZSBrZWVwaW5nIHRoZSBiYWNrZ3JvdW5kIHNvbGlkLlxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCR0YWJsZS1kYXJrLWFjY2VudC1iZywgJHRhYmxlLWRhcmstYWNjZW50LWJnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIG9mIGhvdmVyXG4gICAgICAmLnRhYmxlLWhvdmVyIHtcbiAgICAgICAgLy8gXCJmYWtlXCIgaG92ZXIgdmlhIHVzZSBvZiBhIHRyYW5zcGFyZW50IGJhY2tncm91bmQgaW1hZ2VcbiAgICAgICAgPiB0Ym9keSA+IHRyOmhvdmVyID4gLnRhYmxlLWItdGFibGUtZGVmYXVsdCB7XG4gICAgICAgICAgY29sb3I6ICR0YWJsZS1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAvLyBgJHRhYmxlLWhvdmVyLWJnYCBkZWZhdWx0IGlzIGEgdmVyeSB0cmFuc3BhcmVudCBibGFja1xuICAgICAgICAgIC8vIFdlIG92ZXJsYXkgaXQgb3ZlciB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBhY2hpZXZlIHRoZSBzYW1lIGNvbG9yXG4gICAgICAgICAgLy8gZWZmZWN0IHdoaWxlIGtlZXBpbmcgdGhlIGJhY2tncm91bmQgc29saWQuXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCR0YWJsZS1ob3Zlci1iZywgJHRhYmxlLWhvdmVyLWJnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50YWJsZS1kYXJrIHtcbiAgICAgICAgICA+IHRib2R5ID4gdHI6aG92ZXIgPiAuYmctYi10YWJsZS1kZWZhdWx0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIC8vIGAkdGFibGUtZGFyay1ob3Zlci1iZ2AgZGVmYXVsdCBpcyBhIHZlcnkgdHJhbnNwYXJlbnQgd2hpdGVcbiAgICAgICAgICAgIC8vIFdlIG92ZXJsYXkgaXQgb3ZlciB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBhY2hpZXZlIHRoZSBzYW1lIGNvbG9yXG4gICAgICAgICAgICAvLyBlZmZlY3Qgd2hpbGUga2VlcGluZyB0aGUgYmFja2dyb3VuZCBzb2xpZC5cbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkdGFibGUtZGFyay1ob3Zlci1iZywgJHRhYmxlLWRhcmstaG92ZXItYmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gLS0tIEhlYWRlciBzb3J0IHN0eWxpbmcgLS0tXG5cbi8vIEJvb3RzdHJhcCB2NC40IHdpbGwgaW5jbHVkZSB0aGlzIHZhcmlhYmxlIGFzIGAkZXNjYXBlZC1jaGFyYWN0ZXJzYFxuLy8gQnV0IGlmIHdlIHdhbnQgdG8gcHJlc2VydmUgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCB2NC4zLCB3ZSBsZWF2ZSB0aGlzIGluXG4kYnYtZXNjYXBlZC1jaGFyYWN0ZXJzOiAoKFwiPFwiLCBcIiUzY1wiKSwgKFwiPlwiLCBcIiUzZVwiKSwgKFwiI1wiLCBcIiUyM1wiKSk7XG5cbi8vIEJvb3RzdHJhcCB2NC40IHdpbGwgaW5jbHVkZSB0aGlzIG1ldGhvZCBhcyBgZXNjYXBlLXN2Z2Bcbi8vIEJ1dCBpZiB3ZSB3YW50IHRvIHByZXNlcnZlIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggdjQuMywgd2UgbGVhdmUgdGhpcyBpblxuLy8gU2VlIGh0dHBzOi8vY29kZXBlbi5pby9rZXZpbndlYmVyL3Blbi9kWFdvUndcbkBmdW5jdGlvbiBidi1lc2NhcGUtc3ZnKCRzdHJpbmcpIHtcbiAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcImRhdGE6aW1hZ2Uvc3ZnK3htbFwiKSB7XG4gICAgQGVhY2ggJGNoYXIsICRlbmNvZGVkIGluICRidi1lc2NhcGVkLWNoYXJhY3RlcnMge1xuICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi50YWJsZS5iLXRhYmxlIHtcbiAgPiB0aGVhZCxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IFthcmlhLXNvcnRdIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRiLXRhYmxlLXNvcnQtaWNvbi1iZy13aWR0aCAkYi10YWJsZS1zb3J0LWljb24tYmctaGVpZ2h0O1xuXG4gICAgICAgICY6bm90KC5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0KSB7XG4gICAgICAgICAgLy8gRGVmYXVsdCBpcyBpY29uIG9uIHRoZSByaWdodFxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nfSAvIDIpIGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZ30gKyAjeyRiLXRhYmxlLXNvcnQtaWNvbi1iZy13aWR0aH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0IHtcbiAgICAgICAgICAvLyBMZWZ0IGFsaWduZWQgc29ydCBpY29uXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZ30gLyAyKSBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZ30gKyAjeyRiLXRhYmxlLXNvcnQtaWNvbi1iZy13aWR0aH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgID4gW2FyaWEtc29ydD1cIm5vbmVcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1ub3Qtc29ydGVkKTtcbiAgICAgIH1cblxuICAgICAgPiBbYXJpYS1zb3J0PVwiYXNjZW5kaW5nXCJdIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctYXNjZW5kaW5nKTtcbiAgICAgIH1cblxuICAgICAgPiBbYXJpYS1zb3J0PVwiZGVzY2VuZGluZ1wiXSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWRlc2NlbmRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNvcnQgaWNvbnMgZm9yIGRhcmsgdGFibGVzLCBoZWFkZXJzLCBmb290ZXJzXG4gICYudGFibGUtZGFyayA+IHRoZWFkID4gdHIsXG4gICYudGFibGUtZGFyayA+IHRmb290ID4gdHIsXG4gID4gLnRoZWFkLWRhcmsgPiB0ciB7XG4gICAgPiBbYXJpYS1zb3J0PVwibm9uZVwiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLW5vdC1zb3J0ZWQpO1xuICAgIH1cblxuICAgID4gW2FyaWEtc29ydD1cImFzY2VuZGluZ1wiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLWFzY2VuZGluZyk7XG4gICAgfVxuXG4gICAgPiBbYXJpYS1zb3J0PVwiZGVzY2VuZGluZ1wiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLWRlc2NlbmRpbmcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNvcnQgaWNvbnMgd2hlbiBoZWFkZXIgY2VsbCBoYXMgYHRhYmxlLWRhcmtgIGNsYXNzXG4gID4gdGhlYWQgPiB0ciA+IC50YWJsZS1kYXJrLFxuICA+IHRmb290ID4gdHIgPiAudGFibGUtZGFyayB7XG4gICAgJlthcmlhLXNvcnQ9XCJub25lXCJdIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstbm90LXNvcnRlZCk7XG4gICAgfVxuXG4gICAgJlthcmlhLXNvcnQ9XCJhc2NlbmRpbmdcIl0ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1hc2NlbmRpbmcpO1xuICAgIH1cblxuICAgICZbYXJpYS1zb3J0PVwiZGVzY2VuZGluZ1wiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLWRlc2NlbmRpbmcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhZGRpbmcgYW5kIHBvc2l0aW9uIGFkanVzdG1lbnQgZm9yIHNtYWxsIHRhYmxlc1xuICAmLnRhYmxlLXNtIHtcbiAgICA+IHRoZWFkLFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0ciA+IFthcmlhLXNvcnRdIHtcbiAgICAgICAgJjpub3QoLmItdGFibGUtc29ydC1pY29uLWxlZnQpIHtcbiAgICAgICAgICAvLyBEZWZhdWx0IGlzIGljb24gb24gdGhlIHJpZ2h0XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmctc219IC8gMikgY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nLXNtfSArICN7JGItdGFibGUtc29ydC1pY29uLWJnLXdpZHRofSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmItdGFibGUtc29ydC1pY29uLWxlZnQge1xuICAgICAgICAgIC8vIExlZnQgYWxpZ25lZCBzb3J0IGljb25cbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nLXNtfSAvIDIpIGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nLXNtfSArICN7JGItdGFibGUtc29ydC1pY29uLWJnLXdpZHRofSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gLS0tIFNlbGVjdGFibGUgcm93cyAtLS1cbi50YWJsZS5iLXRhYmxlIHtcbiAgJi5iLXRhYmxlLXNlbGVjdGFibGU6bm90KC5iLXRhYmxlLXNlbGVjdGFibGUtbm8tY2xpY2spIHtcbiAgICAmID4gdGJvZHkgPiB0ciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJi5iLXRhYmxlLXNlbGVjdGluZyB7XG4gICAgICAvLyBEaXNhYmxlZCB0ZXh0LXNlbGVjdGlvbiB3aGVuIGluIHJhbmdlIG1vZGUgd2hlblxuICAgICAgLy8gYXQgbGVhc3Qgb25lIHJvdyBzZWxlY3RlZFxuICAgICAgJi5iLXRhYmxlLXNlbGVjdC1yYW5nZSA+IHRib2R5ID4gdHIge1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gLS0tIFN0YWNrZWQgdGFibGVzIC0tLVxuQGlmICRidi1lbmFibGUtdGFibGUtc3RhY2tlZCB7XG4gIC50YWJsZS5iLXRhYmxlIHtcbiAgICAmLmItdGFibGUtc3RhY2tlZCB7XG4gICAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgICAgICYjeyRpbmZpeH0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLy8gQ29udmVydCB0byBibG9ja3Mgd2hlbiBzdGFja2VkXG4gICAgICAgICAgICA+IGNhcHRpb24sXG4gICAgICAgICAgICA+IHRib2R5LFxuICAgICAgICAgICAgPiB0Ym9keSA+IHRyLFxuICAgICAgICAgICAgPiB0Ym9keSA+IHRyID4gdGQsXG4gICAgICAgICAgICA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBIaWRlIHdoZW4gc3RhY2tlZFxuICAgICAgICAgICAgPiB0aGVhZCxcbiAgICAgICAgICAgID4gdGZvb3Qge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgID4gdHIuYi10YWJsZS10b3Atcm93LFxuICAgICAgICAgICAgICA+IHRyLmItdGFibGUtYm90dG9tLXJvdyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDYXB0aW9uIHBvc2l0aW9uaW5nXG4gICAgICAgICAgICA+IGNhcHRpb24ge1xuICAgICAgICAgICAgICBjYXB0aW9uLXNpZGU6IHRvcCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IHRib2R5IHtcbiAgICAgICAgICAgICAgPiB0ciB7XG4gICAgICAgICAgICAgICAgLy8gVHVybiBjZWxscyB3aXRoIGxhYmVscyBpbnRvIG1pY3JvLWdyaWRzXG4gICAgICAgICAgICAgICAgPiBbZGF0YS1sYWJlbF0ge1xuICAgICAgICAgICAgICAgICAgLy8gQ2VsbCBoZWFkZXIgbGFiZWwgcHNldWRvIGVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAkYi10YWJsZS1zdGFja2VkLWhlYWRpbmctd2lkdGg7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCBjYWxjKCN7JGItdGFibGUtc3RhY2tlZC1nYXB9IC8gMikgMCAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIC8vIEFkZCBjbGVhcmZpeCBpbi1jYXNlIGZpZWxkIGxhYmVsIHdyYXBzXG4gICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgLy8gQ2VsbCB2YWx1ZSAod2Ugd3JhcCB0aGUgY2VsbCB2YWx1ZSBpbiBhIGRpdiB3aGVuIHN0YWNrZWQpXG4gICAgICAgICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGItdGFibGUtc3RhY2tlZC1oZWFkaW5nLXdpZHRofSk7XG4gICAgICAgICAgICAgICAgICAgIC8vIEFkZCBcImdhcFwiIGJldHdlZW4gXCJjZWxsc1wiXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIGNhbGMoI3skYi10YWJsZS1zdGFja2VkLWdhcH0gLyAyKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIERvbnQgc2hvdyB0aGUgZml4ZWQgdG9wL2JvdHRvbSByb3dzXG4gICAgICAgICAgICAgICAgJi50b3Atcm93LFxuICAgICAgICAgICAgICAgICYuYm90dG9tLXJvdyB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIEdpdmUgdGhlIHRvcCBjZWxsIG9mIGVhY2ggXCJyb3dcIiBhIGhlYXZ5IGJvcmRlclxuICAgICAgICAgICAgICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICgzICogJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gR2l2ZSBhbnkgY2VsbCBhZnRlciBhIHJvd3NwYW4nZWQgY2VsbCBhIGhlYXZ5IHRvcCBib3JkZXJcbiAgICAgICAgICAgICAgICA+IFtyb3dzcGFuXSArIHRkLFxuICAgICAgICAgICAgICAgID4gW3Jvd3NwYW5dICsgdGgge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogKDMgKiAkdGFibGUtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJUaW1lIGN1c3RvbSBTQ1NTXG5cbi5iLXRpbWUge1xuICBtaW4td2lkdGg6IDE1MHB4O1xuXG4gICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0gb3V0cHV0LFxuICAmW2FyaWEtcmVhZG9ubHk9XCJ0cnVlXCJdIG91dHB1dCxcbiAgb3V0cHV0LmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0gb3V0cHV0IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIEBhdC1yb290IHtcbiAgICAvLyBQcmV2ZW50IHRoZSBzcGluYnV0dG9ucyBmcm9tIHJldmVyc2luZyBvcmRlciBpbiBSVEwgbW9kZVxuICAgIC8vIGFzIHRpbWUgaXMgYWx3YXlzIHJlYWQgTFRSXG4gICAgW2Rpcj1cInJ0bFwiXSAmID4gLmQtZmxleDpub3QoLmZsZXgtY29sdW1uKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG5cbiAgLmItdGltZS1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgIG91dHB1dCB7XG4gICAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgfVxuICB9XG5cbiAgLmItdGltZS1mb290ZXIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgfVxuXG4gIC5iLXRpbWUtYW1wbSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuIiwiLy8gLS0tIDxiLXRvYXN0PiBjdXN0b20gU0NTUyAtLS1cblxuLy8gVG9hc3Qgd3JhcHBlciBlbGVtZW50IGNsYXNzIChuZWVkZWQgZm9yIGxpc3QgdHJhbnNpdGlvbiBpbiB0b2FzdGVycylcbi5iLXRvYXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgei1pbmRleDogMTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLnRvYXN0IHtcbiAgICAvLyBBbGxvdyB1cyB0byBvdmVycmlkZSBCb290c3RyYXAncyBkZWZhdWx0IHRvYXN0IG9wYWNpdHlcbiAgICAvLyBBcyB0aGV5IGRvIG5vdCBwcm92aWRlIGl0IGFzIGEgdmFyaWFibGVcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yLCAkYi10b2FzdC1iYWNrZ3JvdW5kLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5iLXRvYXN0LXNvbGlkIHtcbiAgICAudG9hc3Qge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdG9hc3QtYmFja2dyb3VuZC1jb2xvciwgMSk7XG4gICAgfVxuICB9XG5cbiAgLnRvYXN0IHtcbiAgICAvLyBPdmVycmlkZSBkZWZhdWx0IEJvb3RzdHJhcCB2NC54IG9wYWNpdHkgb2YgMFxuICAgIC8vIE5lZWRlZCBmb3IgcmUtdXNhYmxlIGZhZGUgdHJhbnNpdGlvblxuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAmLmZhZGU6bm90KC5zaG93KSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC50b2FzdC1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBOZWVkZWQgd2hlbiB3ZSB1c2UgYSBsaW5rIGFzIHRoZSBib2R5IGVsZW1lbnRcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGItdG9hc3QtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIC8vIEJhc2VkIG9uIGFsZXJ0LXZhcmlhbnQgbWl4aW5cbiAgLnRvYXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGxpZ2h0ZW4oJGJhY2tncm91bmQsIDUlKSwgJGItdG9hc3QtYmFja2dyb3VuZC1vcGFjaXR5KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoJGJvcmRlciwgJGItdG9hc3QtYmFja2dyb3VuZC1vcGFjaXR5KTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLnRvYXN0LWhlYWRlciB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmFja2dyb3VuZCwgJGItdG9hc3QtYmFja2dyb3VuZC1vcGFjaXR5KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoJGJvcmRlciwgJGItdG9hc3QtYmFja2dyb3VuZC1vcGFjaXR5KTtcbiAgICB9XG5cbiAgICAvLyAudG9hc3QtYm9keVtocmVmXSB7XG4gICAgLy8gICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICAvLyB9XG4gIH1cblxuICAmLmItdG9hc3Qtc29saWQge1xuICAgIC50b2FzdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGxpZ2h0ZW4oJGJhY2tncm91bmQsIDUlKSwgMSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFRvYXN0IHZhcmlhbnRzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmItdG9hc3QtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiLXRvYXN0LXZhcmlhbnQoXG4gICAgICB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRiLXRvYXN0LWJnLWxldmVsKSxcbiAgICAgIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGItdG9hc3QtYm9yZGVyLWxldmVsKSxcbiAgICAgIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGItdG9hc3QtY29sb3ItbGV2ZWwpXG4gICAgKTtcbiAgfVxufVxuIiwiLy8gLS0tIDxiLXRvYXN0ZXI+IGN1c3RvbSBTQ1NTIC0tLVxuXG4vLyBCYXNlIHRvYXN0ZXIgc3R5bGluZ1xuLmItdG9hc3RlciB7XG4gIHotaW5kZXg6ICRiLXRvYXN0ZXItemluZGV4O1xuXG4gIC5iLXRvYXN0ZXItc2xvdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJjplbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1aWx0LWluIHRvYXN0ZXIgc3R5bGluZ1xuLy8gIC0gYi10b2FzdGVyLXRvcC1yaWdodFxuLy8gIC0gYi10b2FzdGVyLXRvcC1sZWZ0XG4vLyAgLSBiLXRvYXN0ZXItdG9wLWNlbnRlclxuLy8gIC0gYi10b2FzdGVyLXRvcC1mdWxsXG4vLyAgLSBiLXRvYXN0ZXItYm90dG9tLXJpZ2h0XG4vLyAgLSBiLXRvYXN0ZXItYm90dG9tLWxlZnRcbi8vICAtIGItdG9hc3Rlci1ib3R0b20tY2VudGVyXG4vLyAgLSBiLXRvYXN0ZXItYm90dG9tLWZ1bGxcbi5iLXRvYXN0ZXIge1xuICAmLmItdG9hc3Rlci10b3AtcmlnaHQsXG4gICYuYi10b2FzdGVyLXRvcC1sZWZ0LFxuICAmLmItdG9hc3Rlci10b3AtY2VudGVyLFxuICAmLmItdG9hc3Rlci10b3AtZnVsbCxcbiAgJi5iLXRvYXN0ZXItYm90dG9tLXJpZ2h0LFxuICAmLmItdG9hc3Rlci1ib3R0b20tbGVmdCxcbiAgJi5iLXRvYXN0ZXItYm90dG9tLWNlbnRlcixcbiAgJi5iLXRvYXN0ZXItYm90dG9tLWZ1bGwge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAkYi10b2FzdGVyLW9mZnNldC1sZWZ0O1xuICAgIHJpZ2h0OiAkYi10b2FzdGVyLW9mZnNldC1yaWdodDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAuYi10b2FzdGVyLXNsb3Qge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICAgICAgd2lkdGg6IDEwMCU7IC8qIElFIDExIGZpeCAqL1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAmLmItdG9hc3Rlci10b3AtZnVsbCxcbiAgJi5iLXRvYXN0ZXItYm90dG9tLWZ1bGwge1xuICAgIC5iLXRvYXN0ZXItc2xvdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgLmItdG9hc3QsXG4gICAgICAudG9hc3Qge1xuICAgICAgICAvLyBPdmVycmlkZSBCb290c3RyYXAgdG9hc3QgbWF4LXdpZHRoXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5iLXRvYXN0ZXItdG9wLXJpZ2h0LFxuICAmLmItdG9hc3Rlci10b3AtbGVmdCxcbiAgJi5iLXRvYXN0ZXItdG9wLWNlbnRlcixcbiAgJi5iLXRvYXN0ZXItdG9wLWZ1bGwge1xuICAgIHRvcDogMDtcblxuICAgIC5iLXRvYXN0ZXItc2xvdCB7XG4gICAgICB0b3A6ICRiLXRvYXN0ZXItb2Zmc2V0LXRvcDtcbiAgICB9XG4gIH1cblxuICAmLmItdG9hc3Rlci1ib3R0b20tcmlnaHQsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1sZWZ0LFxuICAmLmItdG9hc3Rlci1ib3R0b20tY2VudGVyLFxuICAmLmItdG9hc3Rlci1ib3R0b20tZnVsbCB7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgLmItdG9hc3Rlci1zbG90IHtcbiAgICAgIGJvdHRvbTogJGItdG9hc3Rlci1vZmZzZXQtYm90dG9tO1xuICAgIH1cbiAgfVxuXG4gICYuYi10b2FzdGVyLXRvcC1yaWdodCxcbiAgJi5iLXRvYXN0ZXItYm90dG9tLXJpZ2h0LFxuICAmLmItdG9hc3Rlci10b3AtY2VudGVyLFxuICAmLmItdG9hc3Rlci1ib3R0b20tY2VudGVyIHtcbiAgICAuYi10b2FzdGVyLXNsb3Qge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJi5iLXRvYXN0ZXItdG9wLWxlZnQsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1sZWZ0LFxuICAmLmItdG9hc3Rlci10b3AtY2VudGVyLFxuICAmLmItdG9hc3Rlci1ib3R0b20tY2VudGVyIHtcbiAgICAuYi10b2FzdGVyLXNsb3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gLS0tIDxiLXRvYXN0PiBjdXN0b20gdHJhbnNpdGlvbiBTQ1NTIC0tLVxuXG4vLyBQb3J0YWxWdWUgYXBwZWFycyB0byBoYXZlIGlzc3VlcyB3aXRoIHRyYW5zaXRpb24gY2xhc3NlcyBvbiBwb3J0YWxlZCBpdGVtc1xuXG4uYi10b2FzdGVyIHtcbiAgJi5iLXRvYXN0ZXItdG9wLXJpZ2h0LFxuICAmLmItdG9hc3Rlci10b3AtbGVmdCxcbiAgJi5iLXRvYXN0ZXItYm90dG9tLXJpZ2h0LFxuICAmLmItdG9hc3Rlci1ib3R0b20tbGVmdCB7XG4gICAgLmItdG9hc3Qge1xuICAgICAgJi5iLXRvYXN0ZXItZW50ZXItYWN0aXZlLFxuICAgICAgJi5iLXRvYXN0ZXItbGVhdmUtYWN0aXZlLFxuICAgICAgJi5iLXRvYXN0ZXItbW92ZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE3NXM7XG4gICAgICB9XG5cbiAgICAgICYuYi10b2FzdGVyLWVudGVyIHtcbiAgICAgIH1cblxuICAgICAgJi5iLXRvYXN0ZXItZW50ZXItdG8sXG4gICAgICAmLmItdG9hc3Rlci1lbnRlci1hY3RpdmUge1xuICAgICAgICAudG9hc3QuZmFkZSB7XG4gICAgICAgICAgLy8gRGVsYXkgdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIHRvYXN0IHVudGlsXG4gICAgICAgICAgLy8gdGhlIG1vdmUgdHJhbnNpdGlvbiBoYXMgY29tcGxldGVkXG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xNzVzO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYi10b2FzdGVyLWVudGVyLXRvIHtcbiAgICAgIH1cblxuICAgICAgJi5iLXRvYXN0ZXItbGVhdmUtYWN0aXZlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE3NXM7XG5cbiAgICAgICAgLnRvYXN0LmZhZGUge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYi10b2FzdGVyLWxlYXZlLXRvIHtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNvbWUgb3ZlcnJpZGVzIHRvIG1ha2UgdG9vbHRpcCB0cmFuc2l0aW9ucyB3b3JrIHdpdGggVnVlIGA8dHJhbnNpdGlvbj5gXG4udG9vbHRpcC5iLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTtcbiAgLy8gTmVlZGVkIGR1ZSB0byBCb290c3RyYXAgdjQuNCByZWJvb3QuY3NzIGNoYW5nZXNcbiAgb3V0bGluZTogMDtcblxuICAmLmZhZGU6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHBvaW50ZXIgZXZlbnRzIHdoZW4gaW4gJ25vbmludGVyYWN0aXZlJyBtb2RlIHRvIGhpZGVcbiAgLy8gdGhlIHRvb2x0aXAgd2hlbiB0aGUgdXNlciBob3ZlcnMgb3ZlciBpdHMgY29udGVudFxuICAmLm5vbmludGVyYWN0aXZlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC5hcnJvdyB7XG4gICAgbWFyZ2luOiAwICR0b29sdGlwLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmLmJzLXRvb2x0aXAtcmlnaHQsXG4gICYuYnMtdG9vbHRpcC1sZWZ0IHtcbiAgICAuYXJyb3cge1xuICAgICAgbWFyZ2luOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzIDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENyZWF0ZSBjdXN0b20gdmFyaWFudHMgZm9yIHRvb2x0aXBzXG5AaWYgJGJ2LWVuYWJsZS10b29sdGlwLXZhcmlhbnRzIHtcbiAgQGVhY2ggJHZhcmlhbnQsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAudG9vbHRpcC5iLXRvb2x0aXAtI3skdmFyaWFudH0ge1xuICAgICAgJHRpcC1iZy1jb2xvcjogdGhlbWUtY29sb3ItbGV2ZWwoJHZhcmlhbnQsICRiLXRvb2x0aXAtYmctbGV2ZWwpO1xuICAgICAgJHRpcC10ZXh0LWNvbG9yOiBjb2xvci15aXEoJHRpcC1iZy1jb2xvcik7XG5cbiAgICAgICYuYnMtdG9vbHRpcC10b3Age1xuICAgICAgICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRpcC1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXRvb2x0aXAtcmlnaHQge1xuICAgICAgICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdGlwLWJnLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtdG9vbHRpcC1ib3R0b20ge1xuICAgICAgICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRpcC1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXRvb2x0aXAtbGVmdCB7XG4gICAgICAgIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRpcC1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXRvb2x0aXAtYXV0byB7XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgICAgICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudG9vbHRpcC1pbm5lciB7XG4gICAgICAgIGNvbG9yOiAkdGlwLXRleHQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aXAtYmctY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGljb24gc3R5bGluZ1xuLmItaWNvbiB7XG4gICYuYmkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAvLyBUaGUgZm9sbG93aW5nIGlzIHJlcXVpcmVkIHRvIGNvbXBlbnNhdGUgZm9yIGFsaWdubWVudFxuICAgIC8vIGlzc3VlcyB3aXRoIHRoZSBCb290c3RyYXAgSWNvbnMgYWxwaGEgaW1wbGVtZW50YXRpb25cbiAgICB2ZXJ0aWNhbC1hbGlnbjogJGItaWNvbi12ZXJ0aWNhbC1vZmZzZXQ7XG4gIH1cblxuICAmLmItaWNvbi1hbmltYXRpb24tY3lsb24sXG4gICYuYi1pY29uc3RhY2sgLmItaWNvbi1hbmltYXRpb24tY3lsb24gPiBnIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiAkYi1pY29uLWFuaW1hdGlvbi1jeWxvbi1kdXJhdGlvbiBpbmZpbml0ZSBlYXNlLWluLW91dCBhbHRlcm5hdGVcbiAgICAgIGItaWNvbi1hbmltYXRpb24tY3lsb247XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuYi1pY29uLWFuaW1hdGlvbi1jeWxvbi12ZXJ0aWNhbCxcbiAgJi5iLWljb25zdGFjayAuYi1pY29uLWFuaW1hdGlvbi1jeWxvbi12ZXJ0aWNhbCA+IGcge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBhbmltYXRpb246ICRiLWljb24tYW5pbWF0aW9uLWN5bG9uLXZlcnRpY2FsLWR1cmF0aW9uIGluZmluaXRlIGVhc2UtaW4tb3V0IGFsdGVybmF0ZVxuICAgICAgYi1pY29uLWFuaW1hdGlvbi1jeWxvbi12ZXJ0aWNhbDtcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5iLWljb24tYW5pbWF0aW9uLWZhZGUsXG4gICYuYi1pY29uc3RhY2sgLmItaWNvbi1hbmltYXRpb24tZmFkZSA+IGcge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBhbmltYXRpb246ICRiLWljb24tYW5pbWF0aW9uLXRocm9iLWR1cmF0aW9uIGluZmluaXRlIGVhc2UtaW4tb3V0IGFsdGVybmF0ZSBiLWljb24tYW5pbWF0aW9uLWZhZGU7XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuYi1pY29uLWFuaW1hdGlvbi1zcGluLFxuICAmLmItaWNvbnN0YWNrIC5iLWljb24tYW5pbWF0aW9uLXNwaW4gPiBnIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiAkYi1pY29uLWFuaW1hdGlvbi1zcGluLWR1cmF0aW9uIGluZmluaXRlIGxpbmVhciBub3JtYWwgYi1pY29uLWFuaW1hdGlvbi1zcGluO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmItaWNvbi1hbmltYXRpb24tc3Bpbi1yZXZlcnNlLFxuICAmLmItaWNvbnN0YWNrIC5iLWljb24tYW5pbWF0aW9uLXNwaW4tcmV2ZXJzZSA+IGcge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBhbmltYXRpb246ICRiLWljb24tYW5pbWF0aW9uLXNwaW4tcmV2ZXJzZS1kdXJhdGlvbiBpbmZpbml0ZSBsaW5lYXIgcmV2ZXJzZSBiLWljb24tYW5pbWF0aW9uLXNwaW47XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuYi1pY29uLWFuaW1hdGlvbi1zcGluLXB1bHNlLFxuICAmLmItaWNvbnN0YWNrIC5iLWljb24tYW5pbWF0aW9uLXNwaW4tcHVsc2UgPiBnIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiAkYi1pY29uLWFuaW1hdGlvbi1zcGluLXB1bHNlLWR1cmF0aW9uIGluZmluaXRlIHN0ZXBzKDgpIG5vcm1hbCBiLWljb24tYW5pbWF0aW9uLXNwaW47XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuYi1pY29uLWFuaW1hdGlvbi1zcGluLXJldmVyc2UtcHVsc2UsXG4gICYuYi1pY29uc3RhY2sgLmItaWNvbi1hbmltYXRpb24tc3Bpbi1yZXZlcnNlLXB1bHNlID4gZyB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIGFuaW1hdGlvbjogJGItaWNvbi1hbmltYXRpb24tc3Bpbi1yZXZlcnNlLXB1bHNlLWR1cmF0aW9uIGluZmluaXRlIHN0ZXBzKDgpIHJldmVyc2VcbiAgICAgIGItaWNvbi1hbmltYXRpb24tc3BpbjtcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5iLWljb24tYW5pbWF0aW9uLXRocm9iLFxuICAmLmItaWNvbnN0YWNrIC5iLWljb24tYW5pbWF0aW9uLXRocm9iID4gZyB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIGFuaW1hdGlvbjogJGItaWNvbi1hbmltYXRpb24tdGhyb2ItZHVyYXRpb24gaW5maW5pdGUgZWFzZS1pbi1vdXQgYWx0ZXJuYXRlXG4gICAgICBiLWljb24tYW5pbWF0aW9uLXRocm9iO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uIGZvciBzcGlubmluZyBpY29uc1xuQGtleWZyYW1lcyBiLWljb24tYW5pbWF0aW9uLWN5bG9uIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGItaWNvbi1hbmltYXRpb24tY3lsb24tdmVydGljYWwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1JSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNSUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYi1pY29uLWFuaW1hdGlvbi1mYWRlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYi1pY29uLWFuaW1hdGlvbi1zcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBiLWljb24tYW5pbWF0aW9uLXRocm9iIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi8vIE1ha2UgaWNvbnMgc2xpZ2h0bHkgbGFyZ2VyIGluIGJ1dHRvbnMsIG5hdi1saW5rcywgZHJvcGRvd25zLCBhbmQgaW5wdXQtZ3JvdXAtdGV4dFxuLmJ0bixcbi5uYXYtbGluayxcbi5kcm9wZG93bi10b2dnbGUsXG4uZHJvcGRvd24taXRlbSxcbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgLmItaWNvbiB7XG4gICAgJi5iaSB7XG4gICAgICBmb250LXNpemU6IDEyNSU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gICAgfVxuICB9XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLmZpbHRlci1pdGVtIHtcbiAgICAuZmlsdGVyLWl0ZW0tb3B0aW9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJlthY3RpdmVdIHtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KFthY3RpdmVdKSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgIH1cblxuICAgICAgICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci1pdGVtLW9wdGlvbi10ZXh0IHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZmlsdGVyLWl0ZW0tb3B0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICZbYWN0aXZlXSB7XG4gICAgfVxuXG4gICAgJjpub3QoW2FjdGl2ZV0pIHtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgIH1cblxuICAgIFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZmlsdGVyLWl0ZW0tb3B0aW9uLXRleHQge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZmlsdGVyLWl0ZW0tb3B0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICZbYWN0aXZlXSB7XG4gICAgfVxuXG4gICAgJjpub3QoW2FjdGl2ZV0pIHtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgIH1cblxuICAgIFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZmlsdGVyLWl0ZW0tb3B0aW9uLXRleHQge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLmlucHV0LWVycm9yIHtcbiAgICBzbWFsbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8ZGl2PlxuICAgICAgICA8ZGl2PlxuPCEtLVxuICAgICAgICAgICAgPGItY2FyZCBuby1ib2R5PlxuICAgICAgICAgICAgICAgIDxiLXRhYnMgY2FyZD5cbiAgICAgICAgICAgICAgICAgICAgPGItdGFiIHRpdGxlPVwiVGFiIDFcIiBhY3RpdmU+XG4tLT5cbjwhLS1cbiAgICAgICAgICAgICAgICAgICAgICAgIDxiLWZvcm0taW5wdXQgdi1tb2RlbD1cInZhbHVlXCI+PC9iLWZvcm0taW5wdXQ+XG4tLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxiLWlucHV0LWdyb3VwIGNsYXNzPVwibWItMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiLWZvcm0taW5wdXQgdi1tb2RlbD1cInF1ZXJ5XCIgcGxhY2Vob2xkZXI9XCLjgqvjg4bjgrTjg6rjg7zlkI3jgIHjgqvjg4bjgrTjg6rjg7xJRFwiIEBrZXlkb3duLmVudGVyLm5hdGl2ZT1cInNlYXJjaFwiPjwvYi1mb3JtLWlucHV0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiLWlucHV0LWdyb3VwLWFwcGVuZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ItaW5wdXQtZ3JvdXAtYXBwZW5kPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZW1wbGF0ZSAjYXBwZW5kPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yi1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGNsaWNrPVwic2VhcmNoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOaknOe0olxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ItYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ItaW5wdXQtZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGVtcGxhdGUgdi1pZj1cInF1ZXJ5X3Jlc3VsdC5kYXRhICYmIHF1ZXJ5X3Jlc3VsdC5kYXRhLmhpdHMgJiYgcXVlcnlfcmVzdWx0LmRhdGEuaGl0cy5sZW5ndGhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHYtZm9yPVwiKGhpdCwgaW5kZXgpIGluIHF1ZXJ5X3Jlc3VsdC5kYXRhLmhpdHNcIiBjbGFzcz1cInRleHQtbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SXRlbUNhdGVnb3J5UXVlcnlSZXN1bHQgdi1tb2RlbD1cInF1ZXJ5X3Jlc3VsdC5kYXRhLmhpdHNbaW5kZXhdXCIgQGNsaWNrPVwib25DbGlja0l0ZW1DYXRlZ29yeVJlc3VsdFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RlbXBsYXRlPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHYtZm9yPVwiKG9wdGlvbnNfYnlfbGV2ZWwsIGluZGV4KSBpbiBvcHRpb25zXCIgY2xhc3M9XCJtdC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHZ1ZS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cInZhbHVlc1tpbmRleF1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6b3B0aW9ucz1cIm9wdGlvbnNfYnlfbGV2ZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cIihvcHRpb24pID0+IHsgcmV0dXJuIG9wdGlvbi50ZXh0ICsgJyAjJyArIG9wdGlvbi5jYXRlZ29yeV9pZCArICcjJyB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnNpemU9XCJzaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnJlZHVjZT1cInYgPT4gdi5jYXRlZ29yeV9pZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpmaWx0ZXI9XCJmaWx0ZXJPcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5wdXQ9XCJpbnB1dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIidsZXZlbC4nICsgKGluZGV4ICsgMSkgKyAn44Kr44OG44K044Oq44O844KS6YG444G2J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwZW5kLXRvLWJvZHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNhbGN1bGF0ZS1wb3NpdGlvbj1cIndpdGhQb3BwZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC92dWUtc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG48IS0tXG4gICAgICAgICAgICAgICAgICAgIDwvYi10YWI+XG4gICAgICAgICAgICAgICAgICAgIDxiLXRhYiB0aXRsZT1cIlRhYiAyXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvYi10YWI+XG4gICAgICAgICAgICAgICAgPC9iLXRhYnM+XG4gICAgICAgICAgICA8L2ItY2FyZD5cbi0tPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtbGVmdFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1kYW5nZXJcIlxuICAgICAgICAgICAgICAgICAgICB2LWlmPVwidmFsdWVPYmplY3QgJiYgIXZhbHVlT2JqZWN0LmlzX2xlYWZcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIOOCiOOCiuips+e0sOOBqmxlYWbjgqvjg4bjgrTjg6rjg7zjgpLpgbjmip7jgZfjgabjgY/jgaDjgZXjgYTjgIJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IEZ1c2UgZnJvbSAnZnVzZS5qcydcbmltcG9ydCB7IGNyZWF0ZVBvcHBlciB9IGZyb20gJ0Bwb3BwZXJqcy9jb3JlJ1xuaW1wb3J0IEl0ZW1DYXRlZ29yeVF1ZXJ5UmVzdWx0IGZyb20gJ0AvY29tcG9uZW50cy9JdGVtQ2F0ZWdvcnlRdWVyeVJlc3VsdCdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICAgICAgSXRlbUNhdGVnb3J5UXVlcnlSZXN1bHQsXG4gICAgfSxcbiAgICBwcm9wczoge1xuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgdHlwZTogWyBTdHJpbmcsIE51bWJlciBdLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIH0sXG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICdzbScsXG4gICAgICAgIH0sXG4gICAgICAgIHByb3ZpZGVyOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnZWJheScsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsdWVzOiBbXSxcbiAgICAgICAgICAgIG9wdGlvbnM6IFtdLFxuXG4gICAgICAgICAgICBxdWVyeTogJycsXG4gICAgICAgICAgICBxdWVyeV9yZXN1bHQ6IHt9LFxuICAgICAgICB9XG4gICAgfSxcbiAgICBjb21wdXRlZDoge1xuLy8gICAgICAgIGFzeW5jIG9wdGlvbnMoKSB7XG4vLyAgICAgICAgICAgIGxldCBvcHRpb25zID0ge31cbi8vICAgICAgICAgICAgc3dpdGNoICh0aGlzLnByb3ZpZGVyKSB7XG4vLyAgICAgICAgICAgICAgICBjYXNlICdlYmF5Jzpcbi8vICAgICAgICAgICAgICAgICAgICBvcHRpb25zID0ge1xuLy8gICAgICAgICAgICAgICAgICAgICAgICAwOiBbXSxcbi8vICAgICAgICAgICAgICAgICAgICAgICAgMTogW10sXG4vLyAgICAgICAgICAgICAgICAgICAgICAgIDI6IFtdLFxuLy8gICAgICAgICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgICAgICAgICBicmVha1xuLy8gICAgICAgICAgICAgICAgY2FzZSAnYW1hem9uJzpcbi8vICAgICAgICAgICAgICAgICAgICBicmVha1xuLy8gICAgICAgICAgICB9XG4vLyAgICAgICAgfSxcbiAgICAgICAgdmFsdWVPYmplY3QoKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gdGhpcy5vcHRpb25zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLm9wdGlvbnNbaV0ubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMudmFsdWUgPT09IHRoaXMub3B0aW9uc1tpXVtqXS5jYXRlZ29yeV9pZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9uc1tpXVtqXVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGFzeW5jIG1vdW50ZWQoKSB7XG4gICAgICAgIHRoaXMuZmV0Y2godGhpcy52YWx1ZSlcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgc2VhcmNoUmVzZXQoKSB7XG4gICAgICAgICAgICB0aGlzLnF1ZXJ5ID0gJydcbiAgICAgICAgICAgIHRoaXMuJHV0aWxzLmVtcHR5KHRoaXMucXVlcnlfcmVzdWx0KVxuICAgICAgICB9LFxuICAgICAgICBhc3luYyBzZWFyY2goZXZlbnQsIHF1ZXJ5ID0gbnVsbCkge1xuICAgICAgICAgICAgaWYgKHF1ZXJ5KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5xdWVyeSA9IHF1ZXJ5XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCB0aGlzLiRzdG9yZVxuICAgICAgICAgICAgICAgIC5kaXNwYXRjaCgnaXRlbV9jYXRlZ29yeS9zZWFyY2gnLCB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGVyOiB0aGlzLnByb3ZpZGVyLFxuICAgICAgICAgICAgICAgICAgICBxdWVyeTogdGhpcy5xdWVyeSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gW11cbiAgICAgICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICBpZiAocmVzdWx0LmRhdGEgJiYgcmVzdWx0LmRhdGEuaGl0cyAmJiByZXN1bHQuZGF0YS5oaXRzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgIHRoaXMub25DbGlja0l0ZW1DYXRlZ29yeVJlc3VsdChyZXN1bHQuZGF0YS5oaXRzWzBdKVxuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLiR1dGlscy5lbXB0eSh0aGlzLnF1ZXJ5X3Jlc3VsdClcbiAgICAgICAgICAgIHRoaXMuJHV0aWxzLnNldCh0aGlzLnF1ZXJ5X3Jlc3VsdCwgcmVzdWx0KVxuICAgICAgICB9LFxuICAgICAgICBhc3luYyBmZXRjaChjYXRlZ29yeV9pZCkge1xuICAgICAgICAgICAgbGV0IG9wdGlvbnMgPSBhd2FpdCB0aGlzLiRzdG9yZVxuICAgICAgICAgICAgICAgIC5kaXNwYXRjaCgnaXRlbV9jYXRlZ29yeS9vcHRpb25zJywge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlcjogdGhpcy5wcm92aWRlcixcbiAgICAgICAgICAgICAgICAgICAgY2F0ZWdvcnlfaWQ6IGNhdGVnb3J5X2lkLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXVxuICAgICAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgIHRoaXMuJHV0aWxzLmVtcHR5KHRoaXMub3B0aW9ucylcbiAgICAgICAgICAgIHRoaXMuJHV0aWxzLnNldCh0aGlzLm9wdGlvbnMsIG9wdGlvbnMpXG5cbiAgICAgICAgICAgIHRoaXMuJHV0aWxzLmVtcHR5KHRoaXMudmFsdWVzKVxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IG9wdGlvbnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgICAgICAgICBpZiAoaSA9PT0gMCkgeyBicmVhayB9XG4gICAgICAgICAgICAgICAgbGV0IHZhbHVlX25ldyA9IG9wdGlvbnNbaV1bMF0ucGFyZW50X2lkXG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLnZhbHVlcy5pbmNsdWRlcyh2YWx1ZV9uZXcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWVzLnVuc2hpZnQodmFsdWVfbmV3KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLnZhbHVlcy5sZW5ndGggPCBvcHRpb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGxldCBoaXRzID0gb3B0aW9uc1tvcHRpb25zLmxlbmd0aCAtIDFdLmZpbHRlcigodikgPT4geyByZXR1cm4gdi5jYXRlZ29yeV9pZCA9PT0gY2F0ZWdvcnlfaWQgfSlcbiAgICAgICAgICAgICAgICBpZiAoaGl0cy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMucHVzaChjYXRlZ29yeV9pZClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIG9uQ2xpY2tJdGVtQ2F0ZWdvcnlSZXN1bHQoY2F0ZWdvcnkpIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXQoY2F0ZWdvcnkuY2F0ZWdvcnlfaWQpXG4gICAgICAgICAgICB0aGlzLnNlYXJjaFJlc2V0KClcbiAgICAgICAgfSxcbiAgICAgICAgaW5wdXQodmFsdWUpIHtcbiAgICAgICAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMudmFsdWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy52YWx1ZXNbaV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSB0aGlzLnZhbHVlc1tpXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZmV0Y2godmFsdWUpXG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKVxuICAgICAgICB9LFxuXG5cblxuXG5cbiAgICAgICAgZmlsdGVyT3B0aW9uKG9wdGlvbnMsIHNlYXJjaCkge1xuICAgICAgICAgICAgY29uc3QgZnVzZSA9IG5ldyBGdXNlKG9wdGlvbnMsIHtcbiAgICAgICAgICAgICAgICBrZXlzOiBbICdjYXRlZ29yeV9pZCcsICd0ZXh0JywgXSxcbiAgICAgICAgICAgICAgICBzaG91bGRTb3J0OiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgdG9rZW5pemU6IHRydWUsXG4vLyAgICAgICAgICAgICAgICBpZ25vcmVMb2NhdGlvbjogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIGluY2x1ZGVNYXRjaGVzOiB0cnVlLFxuICAgICAgICAgICAgICAgIG1pbk1hdGNoQ2hhckxlbmd0aDogMSxcbiAgICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDAuOSxcbiAgICAgICAgICAgIH0pXG5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICBjb25zdCBkcm9wZG93bkxpc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd1bC52c19fZHJvcGRvd24tbWVudScpXG4gICAgaWYgKGRyb3Bkb3duTGlzdCkge1xuICAgICAgICBjb25zb2xlLmxvZyhkcm9wZG93bkxpc3Quc2Nyb2xsVG9wID0gMClcbiAgICB9XG59ICwgMSlcbiAgICAgICAgICAgIHJldHVybiBzZWFyY2gubGVuZ3RoXG4gICAgICAgICAgICAgICAgPyBmdXNlLnNlYXJjaChzZWFyY2gpLm1hcCgoeyBpdGVtIH0pID0+IGl0ZW0pXG4gICAgICAgICAgICAgICAgOiBmdXNlLmxpc3RcbiAgICAgICAgfSxcbiAgICAgICAgd2l0aFBvcHBlcihkcm9wZG93bkxpc3QsIGNvbXBvbmVudCwgeyB3aWR0aCB9KSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdlIG5lZWQgdG8gZXhwbGljaXRseSBkZWZpbmUgdGhlIGRyb3Bkb3duIHdpZHRoIHNpbmNlXG4gICAgICAgICAgICAgKiBpdCBpcyB1c3VhbGx5IGluaGVyaXRlZCBmcm9tIHRoZSBwYXJlbnQgd2l0aCBDU1MuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS53aWR0aCA9IHdpZHRoXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUuaGVpZ2h0ID0gJzM1MHB4J1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEhlcmUgd2UgcG9zaXRpb24gdGhlIGRyb3Bkb3duTGlzdCByZWxhdGl2ZSB0byB0aGUgJHJlZnMudG9nZ2xlIEVsZW1lbnQuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogVGhlICdvZmZzZXQnIG1vZGlmaWVyIGFsaWducyB0aGUgZHJvcGRvd24gc28gdGhhdCB0aGUgJHJlZnMudG9nZ2xlIGFuZFxuICAgICAgICAgICAgICogdGhlIGRyb3Bkb3duTGlzdCBvdmVybGFwIGJ5IDEgcGl4ZWwuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogVGhlICd0b2dnbGVDbGFzcycgbW9kaWZpZXIgYWRkcyBhICdkcm9wLXVwJyBjbGFzcyB0byB0aGUgVnVlIFNlbGVjdFxuICAgICAgICAgICAgICogd3JhcHBlciBzbyB0aGF0IHdlIGNhbiBzZXQgc29tZSBzdHlsZXMgZm9yIHdoZW4gdGhlIGRyb3Bkb3duIGlzIHBsYWNlZFxuICAgICAgICAgICAgICogYWJvdmUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnN0IHZtID0gdGhpc1xuICAgICAgICAgICAgY29uc3QgcG9wcGVyID0gY3JlYXRlUG9wcGVyKGNvbXBvbmVudC4kcmVmcy50b2dnbGUsIGRyb3Bkb3duTGlzdCwge1xuICAgICAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgbW9kaWZpZXJzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdvZmZzZXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogWzAsIC0xXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd0b2dnbGVDbGFzcycsXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2U6ICd3cml0ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICBmbih7IHN0YXRlIH0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQuJGVsLmNsYXNzTGlzdC50b2dnbGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkcm9wLXVwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUucGxhY2VtZW50ID09PSAndG9wJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVG8gcHJldmVudCBtZW1vcnkgbGVha3MgUG9wcGVyIG5lZWRzIHRvIGJlIGRlc3Ryb3llZC5cbiAgICAgICAgICAgICAqIElmIHlvdSByZXR1cm4gZnVuY3Rpb24sIGl0IHdpbGwgYmUgY2FsbGVkIGp1c3QgYmVmb3JlIGRyb3Bkb3duIGlzIHJlbW92ZWQgZnJvbSBET00uXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBwb3BwZXIuZGVzdHJveSgpXG4gICAgICAgIH0sXG4gICAgfSxcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG4udi1zZWxlY3QuZHJvcC11cC52cy0tb3BlbiAudnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSg2MCwgNjAsIDYwLCAwLjI2KTtcbn1cblxuW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0ndG9wJ10ge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAtM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuPC9zdHlsZT5cblxuPHN0eWxlPlxuLnZzX19kcm9wZG93bi1tZW51IHtcbiAgICB6LWluZGV4OiAyMDAwO1xufVxuPC9zdHlsZT5cblxuIiwiPHRlbXBsYXRlPlxuICAgIDxkaXY+XG4gICAgICAgIDxiLWNhcmRcbiAgICAgICAgICAgIGNsYXNzPVwibXQtMlwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8Yi1yb3c+XG4gICAgICAgICAgICAgICAgPGItY29sPlxuICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3M9XCJmb250LXdlaWdodC1ib2xkXCI+5b+F6aCIPC9oNj5cbiAgICAgICAgICAgICAgICA8L2ItY29sPlxuICAgICAgICAgICAgPC9iLXJvdz5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICB2LWZvcj1cIih2LCBpbmRleCkgaW4gdmFsdWVcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1sZWZ0IG1iLTJcIlxuICAgICAgICAgICAgICAgIHYtaWY9XCJ2LmFzcGVjdENvbnN0cmFpbnQuYXNwZWN0UmVxdWlyZWRcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB2LmxvY2FsaXplZEFzcGVjdE5hbWUgfX1cbiAgICAgICAgICAgICAgICA8dnVlLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidi52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIDpyZWY9XCJ2LmxvY2FsaXplZEFzcGVjdE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICA6b3B0aW9ucz1cInYuYXNwZWN0VmFsdWVzXCJcbiAgICAgICAgICAgICAgICAgICAgOmdldC1vcHRpb24tbGFiZWw9XCIob3B0aW9uKSA9PiB7IHJldHVybiBvcHRpb24ubG9jYWxpemVkVmFsdWUgfVwiXG4gICAgICAgICAgICAgICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgIDpyZWR1Y2U9XCJvcHRpb24gPT4gb3B0aW9uLmxvY2FsaXplZFZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgOmZpbHRlcj1cImZpbHRlck9wdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIEBpbnB1dD1cImlucHV0XCJcbiAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJydcIlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBhcHBlbmQtdG8tYm9keVxuICAgICAgICAgICAgICAgICAgICA6Y2FsY3VsYXRlLXBvc2l0aW9uPVwid2l0aFBvcHBlclwiXG5cbiAgICAgICAgICAgICAgICAgICAgOm11bHRpcGxlPVwidi5hc3BlY3RDb25zdHJhaW50Lml0ZW1Ub0FzcGVjdENhcmRpbmFsaXR5ID09PSAnTVVMVEknXCJcblxuICAgICAgICAgICAgICAgICAgICA6dGFnZ2FibGU9XCJbICdGUkVFX1RFWFQnLCBdLmluY2x1ZGVzKHYuYXNwZWN0Q29uc3RyYWludC5hc3BlY3RNb2RlKVwiXG4gICAgICAgICAgICAgICAgICAgIDpjcmVhdGUtb3B0aW9uPVwib25DcmVhdGVPcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC92dWUtc2VsZWN0PlxuPCEtLVxuICAgICAgICAgICAgICAgICAgICA6Y3JlYXRlLW9wdGlvbj1cIm9wdGlvbiA9PiAoeyBsb2NhbGl6ZWRWYWx1ZTogb3B0aW9uLCB9KVwiXG4tLT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ItY2FyZD5cblxuICAgICAgICA8Yi1jYXJkXG4gICAgICAgICAgICBjbGFzcz1cIm10LTJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPGItcm93PlxuICAgICAgICAgICAgICAgIDxiLWNvbD5cbiAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwiZm9udC13ZWlnaHQtYm9sZFwiPui/veWKoOaDheWgsSAo5Lu75oSPKTwvaDY+XG4gICAgICAgICAgICAgICAgPC9iLWNvbD5cbjwhLS1cbiAgICAgICAgICAgICAgICA8Yi1jb2wgY29scz1cImF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAgPGItZm9ybS1jaGVja2JveCB2LW1vZGVsPVwiaXNfZW5hYmxlZF9vcHRpb25hbHNcIiBzd2l0Y2ggLz5cbiAgICAgICAgICAgICAgICA8L2ItY29sPlxuLS0+XG4gICAgICAgICAgICA8L2Itcm93PlxuICAgICAgICAgICAgPHRlbXBsYXRlPlxuPCEtLVxuICAgICAgICAgICAgPHRlbXBsYXRlIHYtaWY9XCJpc19lbmFibGVkX29wdGlvbmFsc1wiPlxuLS0+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICB2LWZvcj1cIih2LCBpbmRleCkgaW4gdmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtbGVmdCBtYi0yXCJcbiAgICAgICAgICAgICAgICAgICAgdi1pZj1cIiF2LmFzcGVjdENvbnN0cmFpbnQuYXNwZWN0UmVxdWlyZWRcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IHYubG9jYWxpemVkQXNwZWN0TmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICA8dGVtcGxhdGUgdi1pZj1cInYuYXNwZWN0VmFsdWVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dnVlLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJ2LnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6cmVmPVwidi5sb2NhbGl6ZWRBc3BlY3ROYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6b3B0aW9ucz1cInYuYXNwZWN0VmFsdWVzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cIihvcHRpb24pID0+IHsgcmV0dXJuIG9wdGlvbi5sb2NhbGl6ZWRWYWx1ZSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6c2l6ZT1cInNpemVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpyZWR1Y2U9XCJvcHRpb24gPT4gb3B0aW9uLmxvY2FsaXplZFZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ZmlsdGVyPVwiZmlsdGVyT3B0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5wdXQ9XCJpbnB1dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwZW5kLXRvLWJvZHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Y2FsY3VsYXRlLXBvc2l0aW9uPVwid2l0aFBvcHBlclwiXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6bXVsdGlwbGU9XCJ2LmFzcGVjdENvbnN0cmFpbnQuaXRlbVRvQXNwZWN0Q2FyZGluYWxpdHkgPT09ICdNVUxUSSdcIlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOnRhZ2dhYmxlPVwiWyAnRlJFRV9URVhUJywgXS5pbmNsdWRlcyh2LmFzcGVjdENvbnN0cmFpbnQuYXNwZWN0TW9kZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjcmVhdGUtb3B0aW9uPVwib3B0aW9uID0+ICh7IGxvY2FsaXplZFZhbHVlOiBvcHRpb24sIH0pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3Z1ZS1zZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgIDwvdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDx0ZW1wbGF0ZSB2LWVsc2U+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Yi1mb3JtLWlucHV0IHR5cGU9XCJ0ZXh0XCIgdi1tb2RlbD1cInYudmFsdWVcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8L3RlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZW1wbGF0ZT5cbiAgICAgICAgPC9iLWNhcmQ+XG4gICAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IEZ1c2UgZnJvbSAnZnVzZS5qcydcbmltcG9ydCB7IGNyZWF0ZVBvcHBlciB9IGZyb20gJ0Bwb3BwZXJqcy9jb3JlJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgY29tcG9uZW50czoge1xuICAgIH0sXG4gICAgcHJvcHM6IHtcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICBkZWZhdWx0OiBbXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJ3NtJyxcbiAgICAgICAgfSxcbi8vICAgICAgICBwcm92aWRlcjoge1xuLy8gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4vLyAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbi8vICAgICAgICAgICAgZGVmYXVsdDogJ2ViYXknLFxuLy8gICAgICAgIH0sXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsdWVzOiBbXSxcbiAgICAgICAgICAgIGlzX2VuYWJsZWRfb3B0aW9uYWxzOiBmYWxzZSxcbiAgICAgICAgfVxuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHtcbiAgICB9LFxuICAgIGFzeW5jIG1vdW50ZWQoKSB7XG4gICAgfSxcbiAgICBtZXRob2RzOiB7XG4gICAgICAgIGlucHV0KHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMudmFsdWUpXG4gICAgICAgIH0sXG4gICAgICAgIGdldCgpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSB7fVxuICAgICAgICAgICAgY29uc3QgX3ZhbHVlID0gWyAuLi50aGlzLnZhbHVlIF1cbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgX3ZhbHVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgZGF0YVtfdmFsdWVbaV0ubG9jYWxpemVkQXNwZWN0TmFtZV0gPSBfdmFsdWVbaV0udmFsdWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBkYXRhXG4gICAgICAgIH0sXG4gICAgICAgIHNldChkYXRhKSB7XG4gICAgICAgICAgICBjb25zdCBfdmFsdWUgPSBbIC4uLnRoaXMudmFsdWUgXVxuICAgICAgICAgICAgbGV0IG9wdGlvbmFsID0gZmFsc2VcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgX3ZhbHVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZGF0YV92YWx1ZSA9IGRhdGFbX3ZhbHVlW2ldLmxvY2FsaXplZEFzcGVjdE5hbWVdXG5cbiAgICAgICAgICAgICAgICBpZiAoZGF0YV92YWx1ZSkge1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnZhbHVlW2ldLmFzcGVjdFZhbHVlc1xuLy8gICAgICAgICAgICAgICAgICAgICAgICAmJiB0aGlzLnZhbHVlW2ldLmFzcGVjdENvbnN0cmFpbnQuaXRlbVRvQXNwZWN0Q2FyZGluYWxpdHkgPT09ICdNVUxUSSdcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YV92YWx1ZXMgPSBkYXRhX3ZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoZGF0YV92YWx1ZXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YV92YWx1ZXMgPSBbIGRhdGFfdmFsdWVzIF1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2dWVTZWxlY3QgPSB0aGlzLiRyZWZzW192YWx1ZVtpXS5sb2NhbGl6ZWRBc3BlY3ROYW1lXVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZ1ZVNlbGVjdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZ1ZVNlbGVjdCA9IHZ1ZVNlbGVjdFswXVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBkYXRhX3ZhbHVlcy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZ1ZVNlbGVjdC5zZWxlY3QodGhpcy5vbkNyZWF0ZU9wdGlvbihkYXRhX3ZhbHVlc1tqXSkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdnVlU2VsZWN0Lm9uQWZ0ZXJTZWxlY3QoKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4kdXRpbHMuc2V0KHRoaXMudmFsdWVbaV0sIHsgdmFsdWU6IGRhdGFfdmFsdWUsIH0pXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLnZhbHVlW2ldLmFzcGVjdENvbnN0cmFpbnQuYXNwZWN0UmVxdWlyZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsID0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdGlvbmFsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc19lbmFibGVkX29wdGlvbmFscyA9IHRydWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcblxuXG5cblxuICAgICAgICBvbkNyZWF0ZU9wdGlvbihvcHRpb24sIGEsIGIsIGMpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgbG9jYWxpemVkVmFsdWU6IG9wdGlvblxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuXG4gICAgICAgIGZpbHRlck9wdGlvbihvcHRpb25zLCBzZWFyY2gpIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1c2UgPSBuZXcgRnVzZShvcHRpb25zLCB7XG4gICAgICAgICAgICAgICAga2V5czogWyAnbG9jYWxpemVkVmFsdWUnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG48L3N0eWxlPlxuXG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8dnVlLXNlbGVjdFxuICAgICAgICA6dmFsdWU9XCJ2YWx1ZVwiXG4gICAgICAgIDpvcHRpb25zPVwidXNlcnMgfHwgW11cIlxuICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cIihvcHRpb24pID0+IHsgcmV0dXJuIG9wdGlvbi5wcm9maWxlID8gKG9wdGlvbi5pZCArICc6ICcgKyBvcHRpb24ubmlja25hbWUpIDogJycgfVwiXG4gICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgIDpyZWR1Y2U9XCJ2ID0+IHYuaWRcIlxuICAgICAgICA6ZmlsdGVyPVwiZmlsdGVyXCJcbiAgICAgICAgQGlucHV0PVwiaW5wdXRcIlxuICAgICAgICBAc2VhcmNoPVwiZmV0Y2hPcHRpb25zXCJcblxuICAgICAgICBhcHBlbmQtdG8tYm9keVxuICAgICAgICA6Y2FsY3VsYXRlLXBvc2l0aW9uPVwid2l0aFBvcHBlclwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwi44Ki44Kr44Km44Oz44OI44KS6YG45oqe44GX44Gm44GP44Gg44GV44GEXCJcbiAgICAgICAgPlxuICAgIDwvdnVlLXNlbGVjdD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSAndnVleCdcbmltcG9ydCBGdXNlIGZyb20gJ2Z1c2UuanMnXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICB9LFxuICAgIHByb3BzOiB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiBudWxsLFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnc20nLFxuICAgICAgICB9LFxuICAgICAgICBtZToge1xuICAgICAgICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHVzZXJzOiBbXSxcbiAgICAgICAgfVxuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgLi4ubWFwR2V0dGVycyhbXG4gICAgICAgIF0pLFxuICAgIH0sXG4gICAgYXN5bmMgbW91bnRlZCgpIHtcbiAgICAgICAgdGhpcy5mZXRjaE9wdGlvbnMoKVxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBmZXRjaE9wdGlvbnMoc2VhcmNoLCBsb2FkaW5nKSB7XG4gICAgICAgICAgICB0aGlzLnVzZXJzLnNwbGljZSgwKVxuICAgICAgICAgICAgdGhpcy4kc3RvcmVcbiAgICAgICAgICAgICAgICAuZGlzcGF0Y2goJ3VzZXIvaW5kZXgnLCB7XG4vLyAgICAgICAgICAgICAgICAgICAgbGV2ZWw6IDIwMCxcbiAgICAgICAgICAgICAgICAgICAgZ3JvdXA6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIFNJTEVOVDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5tZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy51c2Vycy5wdXNoKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuJHN0b3JlLnN0YXRlLmF1dGgudXNlclxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLmRhdGEuZGF0YS5oaXRzLmZvckVhY2goKGhpdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGVuZ3RoID0gdGhpcy51c2Vycy5maWx0ZXIoKHVzZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXNlci5pZCA9PT0gaGl0LmlkXG4gICAgICAgICAgICAgICAgICAgICAgICB9KS5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXNlcnMucHVzaChoaXQpXG4gICAgICAgICAgICAgICAgICAgIH0pXG4vLyAgICAgICAgICAgICAgICAgICAgdGhpcy51c2Vycy5wdXNoKC4uLnJlc3BvbnNlLmRhdGEuZGF0YS5oaXRzKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH0sXG4gICAgICAgIGZpbHRlcihvcHRpb25zLCBzZWFyY2gpIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1c2UgPSBuZXcgRnVzZShvcHRpb25zLCB7XG4gICAgICAgICAgICAgICAga2V5czogWyAnaWQnLCAnbmlja25hbWUnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgfSxcblxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG4udnNfX3NlYXJjaCB7XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG59XG48L3N0eWxlPlxuXG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4ub3JkZXItcHJvdmlkZXIge1xuICAgIG1heC13aWR0aDogOGVtO1xufVxuIiwiPHRlbXBsYXRlPlxuICAgIDx2dWUtc2VsZWN0XG4gICAgICAgIDp2YWx1ZT1cInZhbHVlXCJcbiAgICAgICAgOm9wdGlvbnM9XCIkc3RvcmUuc3RhdGUuYXBwLmRhdGEuY291bnRyaWVzIHx8IFtdXCJcbiAgICAgICAgOmdldC1vcHRpb24tbGFiZWw9XCIob3B0aW9uKSA9PiB7IHJldHVybiBvcHRpb24udmFsdWUgKyAnOiAnICsgb3B0aW9uLnRleHQgfVwiXG4gICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgIDpyZWR1Y2U9XCJyZWR1Y2VcIlxuICAgICAgICA6ZmlsdGVyPVwiZmlsdGVyQ291bnRyeVwiXG4gICAgICAgIDptdWx0aXBsZT1cIm11bHRpcGxlXCJcbiAgICAgICAgQGlucHV0PVwiaW5wdXRcIlxuXG4gICAgICAgIGFwcGVuZC10by1ib2R5XG4gICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgPlxuICAgIDwvdnVlLXNlbGVjdD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgRnVzZSBmcm9tICdmdXNlLmpzJ1xuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjb21wb25lbnRzOiB7XG4gICAgfSxcbiAgICBwcm9wczoge1xuICAgICAgICByZWR1Y2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdCh2KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHYudGV4dFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHR5cGU6IFsgU3RyaW5nLCBBcnJheSwgXSxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnc20nLFxuICAgICAgICB9LFxuICAgICAgICBtdWx0aXBsZToge1xuICAgICAgICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHt9XG4gICAgfSxcbiAgICBjb21wdXRlZDoge30sXG4gICAgYXN5bmMgbW91bnRlZCgpIHt9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgZmlsdGVyQ291bnRyeShvcHRpb25zLCBzZWFyY2gpIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1c2UgPSBuZXcgRnVzZShvcHRpb25zLCB7XG4gICAgICAgICAgICAgICAga2V5czogWyAndmFsdWUnLCAndGV4dCcsIF0sXG4gICAgICAgICAgICAgICAgc2hvdWxkU29ydDogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIHRva2VuaXplOiB0cnVlLFxuLy8gICAgICAgICAgICAgICAgaWdub3JlTG9jYXRpb246IHRydWUsXG5cbiAgICAgICAgICAgICAgICBpbmNsdWRlTWF0Y2hlczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBtaW5NYXRjaENoYXJMZW5ndGg6IDEsXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAwLjksXG4gICAgICAgICAgICB9KVxuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgY29uc3QgZHJvcGRvd25MaXN0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigndWwudnNfX2Ryb3Bkb3duLW1lbnUnKVxuICAgIGlmIChkcm9wZG93bkxpc3QpIHtcbiAgICAgICAgY29uc29sZS5sb2coZHJvcGRvd25MaXN0LnNjcm9sbFRvcCA9IDApXG4gICAgfVxufSAsIDEpXG4gICAgICAgICAgICByZXR1cm4gc2VhcmNoLmxlbmd0aFxuICAgICAgICAgICAgICAgID8gZnVzZS5zZWFyY2goc2VhcmNoKS5tYXAoKHsgaXRlbSB9KSA9PiBpdGVtKVxuICAgICAgICAgICAgICAgIDogZnVzZS5saXN0XG4gICAgICAgIH0sXG4gICAgICAgIGlucHV0KHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKVxuICAgICAgICB9LFxuXG4gICAgICAgIHdpdGhQb3BwZXIoZHJvcGRvd25MaXN0LCBjb21wb25lbnQsIHsgd2lkdGggfSkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXZSBuZWVkIHRvIGV4cGxpY2l0bHkgZGVmaW5lIHRoZSBkcm9wZG93biB3aWR0aCBzaW5jZVxuICAgICAgICAgICAgICogaXQgaXMgdXN1YWxseSBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50IHdpdGggQ1NTLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUud2lkdGggPSB3aWR0aFxuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLmhlaWdodCA9ICczNTBweCdcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBIZXJlIHdlIHBvc2l0aW9uIHRoZSBkcm9wZG93bkxpc3QgcmVsYXRpdmUgdG8gdGhlICRyZWZzLnRvZ2dsZSBFbGVtZW50LlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAnb2Zmc2V0JyBtb2RpZmllciBhbGlnbnMgdGhlIGRyb3Bkb3duIHNvIHRoYXQgdGhlICRyZWZzLnRvZ2dsZSBhbmRcbiAgICAgICAgICAgICAqIHRoZSBkcm9wZG93bkxpc3Qgb3ZlcmxhcCBieSAxIHBpeGVsLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAndG9nZ2xlQ2xhc3MnIG1vZGlmaWVyIGFkZHMgYSAnZHJvcC11cCcgY2xhc3MgdG8gdGhlIFZ1ZSBTZWxlY3RcbiAgICAgICAgICAgICAqIHdyYXBwZXIgc28gdGhhdCB3ZSBjYW4gc2V0IHNvbWUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBpcyBwbGFjZWRcbiAgICAgICAgICAgICAqIGFib3ZlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB2bSA9IHRoaXNcbiAgICAgICAgICAgIGNvbnN0IHBvcHBlciA9IGNyZWF0ZVBvcHBlcihjb21wb25lbnQuJHJlZnMudG9nZ2xlLCBkcm9wZG93bkxpc3QsIHtcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG1vZGlmaWVyczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAtMV0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndG9nZ2xlQ2xhc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlOiAnd3JpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm4oeyBzdGF0ZSB9KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50LiRlbC5jbGFzc0xpc3QudG9nZ2xlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZHJvcC11cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnBsYWNlbWVudCA9PT0gJ3RvcCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRvIHByZXZlbnQgbWVtb3J5IGxlYWtzIFBvcHBlciBuZWVkcyB0byBiZSBkZXN0cm95ZWQuXG4gICAgICAgICAgICAgKiBJZiB5b3UgcmV0dXJuIGZ1bmN0aW9uLCBpdCB3aWxsIGJlIGNhbGxlZCBqdXN0IGJlZm9yZSBkcm9wZG93biBpcyByZW1vdmVkIGZyb20gRE9NLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gcG9wcGVyLmRlc3Ryb3koKVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLnYtc2VsZWN0LmRyb3AtdXAudnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoNjAsIDYwLCA2MCwgMC4yNik7XG59XG5cbltkYXRhLXBvcHBlci1wbGFjZW1lbnQ9J3RvcCddIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgLTNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbjwvc3R5bGU+XG5cbjxzdHlsZT5cbi52c19fZHJvcGRvd24tbWVudSB7XG4gICAgei1pbmRleDogMjAwMDtcbn1cbjwvc3R5bGU+XG5cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IHRib2R5ID4gdHIge1xuICAgICYgPiB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICAmID4gdGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAmID4gZGl2ID4gLmV4YW1wbGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8dnVlLXNlbGVjdFxuICAgICAgICA6dmFsdWU9XCJ2YWx1ZVwiXG4gICAgICAgIDpvcHRpb25zPVwib3B0aW9ucygpXCJcbiAgICAgICAgOmdldC1vcHRpb24tbGFiZWw9XCIob3B0aW9uKSA9PiB7IHJldHVybiBvcHRpb24ubmFtZSB9XCJcbiAgICAgICAgOnNpemU9XCJzaXplXCJcbiAgICAgICAgOnJlZHVjZT1cInYgPT4gdlwiXG4gICAgICAgIDpmaWx0ZXI9XCJmaWx0ZXJPcHRpb25cIlxuICAgICAgICA6c2VsZWN0YWJsZT1cIihvcHRpb24pID0+IHsgcmV0dXJuICFvcHRpb24uaGVhZGVyIH1cIlxuICAgICAgICBAaW5wdXQ9XCJpbnB1dFwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwi5omL5YuV5YWl5YqbXCJcblxuICAgICAgICBhcHBlbmQtdG8tYm9keVxuICAgICAgICA6Y2FsY3VsYXRlLXBvc2l0aW9uPVwid2l0aFBvcHBlclwiXG4gICAgICAgID5cbiAgICAgICAgPHRlbXBsYXRlICNvcHRpb249XCJ7IHR5cGUsIGlkLCBuYW1lLCBoZWFkZXIsIH1cIj5cbiAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJoZWFkZXJcIj57eyBoZWFkZXIgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiB2LWVsc2UtaWY9XCJ0eXBlID09PSAnaXRlbSdcIj57eyBuYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gdi1lbHNlIGNsYXNzPVwibXMtM1wiPnt7IG5hbWUgfX08L3NwYW4+XG4gICAgICAgIDwvdGVtcGxhdGU+XG4gICAgPC92dWUtc2VsZWN0PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBGdXNlIGZyb20gJ2Z1c2UuanMnXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICB9LFxuICAgIHByb3BzOiB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICB0eXBlOiBPYmplY3QsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0KCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnc20nLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICBpdGVtOiAn5YaF5a6554mpJyxcbiAgICAgICAgICAgICAgICBoc2NvZGU6ICdIU+OCs+ODvOODiS/ljp/nlKPlm70nLFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSxcbiAgICBjb21wdXRlZDoge30sXG4gICAgYXN5bmMgbW91bnRlZCgpIHt9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgb3B0aW9ucygpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSBbXVxuICAgICAgICAgICAgLy8gaXRlbVxuICAgICAgICAgICAgb3B0aW9ucy5wdXNoKC4uLnRoaXMuJHN0b3JlLnN0YXRlLmFwcC5kYXRhLnNoaXBwaW5nX2l0ZW1zLm1hcCgodikgPT4ge1xuICAgICAgICAgICAgICAgIHYudHlwZSA9ICdpdGVtJ1xuICAgICAgICAgICAgICAgIHJldHVybiB2XG4gICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIC8vIGhzY29kZVxuICAgICAgICAgICAgb3B0aW9ucy5wdXNoKC4uLnRoaXMuJHN0b3JlLnN0YXRlLmFwcC5kYXRhLnNoaXBwaW5nX2hzY29kZXMubWFwKCh2KSA9PiB7XG4gICAgICAgICAgICAgICAgdi50eXBlID0gJ2hzY29kZSdcbiAgICAgICAgICAgICAgICByZXR1cm4gdlxuICAgICAgICAgICAgfSkpXG5cbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnNfZmluYWwgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWRkSGVhZGVyKG9wdGlvbnNfZmluYWwubWFwKCh2KSA9PiB7XG4gICAgICAgICAgICAgICAgdi5pZCA9IHYudHlwZSArICcuJyArIHYuaWRcbiAgICAgICAgICAgICAgICByZXR1cm4gdlxuICAgICAgICAgICAgfSkpXG4gICAgICAgIH0sXG4gICAgICAgIGFkZEhlYWRlcihvcHRpb25zKSB7XG4gICAgICAgICAgICBjb25zdCBwb2ludHMgPSBbXVxuICAgICAgICAgICAgaWYgKG9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHBvaW50cy5wdXNoKDApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMTsgaSA8IG9wdGlvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpZiAob3B0aW9uc1tpIC0gMV0udHlwZSAhPT0gb3B0aW9uc1tpXS50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50cy5wdXNoKGkpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IHBvaW50cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgICAgICAgICAgIG9wdGlvbnMuc3BsaWNlKHBvaW50c1tpXSwgMCwgeyBoZWFkZXI6IHRoaXMuaGVhZGVyc1tvcHRpb25zW3BvaW50c1tpXV0udHlwZV0sIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gb3B0aW9uc1xuICAgICAgICB9LFxuICAgICAgICBmaWx0ZXJPcHRpb24ob3B0aW9ucywgc2VhcmNoKSB7XG4gICAgICAgICAgICBjb25zdCBmdXNlID0gbmV3IEZ1c2Uob3B0aW9ucywge1xuICAgICAgICAgICAgICAgIGtleXM6IFsgJ25hbWUnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbi8vc2V0VGltZW91dCgoKSA9PiB7XG4vLyAgICBjb25zdCBkcm9wZG93bkxpc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd1bC52c19fZHJvcGRvd24tbWVudScpXG4vLyAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4vLyAgICAgICAgY29uc29sZS5sb2coZHJvcGRvd25MaXN0LnNjcm9sbFRvcCA9IDApXG4vLyAgICB9XG4vL30gLCAxKVxuICAgICAgICAgICAgY29uc3QgcmV0ID0gc2VhcmNoLmxlbmd0aFxuICAgICAgICAgICAgICAgID8gZnVzZS5zZWFyY2goc2VhcmNoKS5tYXAoKHsgaXRlbSB9KSA9PiBpdGVtKVxuICAgICAgICAgICAgICAgIDogZnVzZS5saXN0XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5hZGRIZWFkZXIocmV0KVxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgfSxcblxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG48L3N0eWxlPlxuXG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc2hpcHBpbmctYWRkcmVzcy10aCB7XG4gICAgd2lkdGg6MC4xJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8dnVlLXNlbGVjdFxuICAgICAgICA6dmFsdWU9XCJ2YWx1ZVwiXG4gICAgICAgIDpvcHRpb25zPVwiJHN0b3JlLnN0YXRlLmFwcC5kYXRhLmN1cnJlbmNpZXMgfHwgW11cIlxuICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cIihvcHRpb24pID0+IHsgcmV0dXJuIG9wdGlvbi52YWx1ZSArICc6ICcgKyBvcHRpb24udGV4dCB9XCJcbiAgICAgICAgOnNpemU9XCJzaXplXCJcbiAgICAgICAgOnJlZHVjZT1cInYgPT4gdi52YWx1ZVwiXG4gICAgICAgIDpmaWx0ZXI9XCJmaWx0ZXJDdXJyZW5jeVwiXG4gICAgICAgIEBpbnB1dD1cImlucHV0XCJcblxuICAgICAgICBhcHBlbmQtdG8tYm9keVxuICAgICAgICA6Y2FsY3VsYXRlLXBvc2l0aW9uPVwid2l0aFBvcHBlclwiXG4gICAgICAgID5cbiAgICA8L3Z1ZS1zZWxlY3Q+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IEZ1c2UgZnJvbSAnZnVzZS5qcydcbmltcG9ydCB7IGNyZWF0ZVBvcHBlciB9IGZyb20gJ0Bwb3BwZXJqcy9jb3JlJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgY29tcG9uZW50czoge1xuICAgIH0sXG4gICAgcHJvcHM6IHtcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnc20nLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHt9XG4gICAgfSxcbiAgICBjb21wdXRlZDoge30sXG4gICAgYXN5bmMgbW91bnRlZCgpIHt9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgZmlsdGVyQ3VycmVuY3kob3B0aW9ucywgc2VhcmNoKSB7XG4gICAgICAgICAgICBjb25zdCBmdXNlID0gbmV3IEZ1c2Uob3B0aW9ucywge1xuICAgICAgICAgICAgICAgIGtleXM6IFsgJ3ZhbHVlJywgJ3RleHQnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgfSxcblxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG48L3N0eWxlPlxuXG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4kaW5zdXJhbmNlX3RhYmxlX2NvbHVtbl9jb2xvcnM6IChcbiAgICBzeXN0ZW06ICNmZGZkZmQsXG4gICAgc3lzdGVtX3VwZGF0ZWRfYXQ6ICMxMTExMTEsXG4gICAgcHJvZmlsZTogIzc3Nzc3NyxcbiAgICBmcm9tOiAjZWZlZmVmLFxuICAgIHRvOiAjZDllYWQzLFxuICAgIHNoaXBwaW5nOiAjZDlkOWQ5LFxuKTtcbiRpbnN1cmFuY2VfdGFibGVfY29sdW1uX2NvdW50czogKFxuICAgIHN5c3RlbTogNyxcbiAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMSxcbiAgICBwcm9maWxlOiA1LFxuICAgIGZyb206IDUsXG4gICAgdG86IDEwLFxuICAgIHNoaXBwaW5nOiAxNCxcbik7XG4gICAgXG5AbWl4aW4gaW5zdXJhbmNlVGFibGVUaE1peGluKCRjb2x1bW5fY291bnRzLCAkY29sdW1uX2NvbG9ycykge1xuICAgICRpbmRleDogMjtcbiAgICBAZWFjaCAka2V5LCAkY291bnQgaW4gJGNvbHVtbl9jb3VudHMge1xuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb3VudCB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgjeyRpICsgJGluZGV4fSl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sdW1uX2NvbG9ycywgJGtleSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAkaW5kZXg6ICRpbmRleCArICRjb3VudDtcbiAgICB9XG59XG5cbi5pbnN1cmFuY2UtdGFibGUge1xuICAgIC5oYW5kc29udGFibGUge1xuICAgICAgICAmW21vZGU9XCJyZWFkXCJdLFxuICAgICAgICAmW21vZGU9XCJ1cGRhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGluc3VyYW5jZV90YWJsZV9jb2x1bW5fY291bnRzOiBtYXAtbWVyZ2UoJGluc3VyYW5jZV90YWJsZV9jb2x1bW5fY291bnRzLCAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtX3VwZGF0ZWRfYXQ6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZmlsZTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaW5zdXJhbmNlVGFibGVUaE1peGluKCRpbnN1cmFuY2VfdGFibGVfY29sdW1uX2NvdW50cywgJGluc3VyYW5jZV90YWJsZV9jb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW21vZGU9XCJjcmVhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGluc3VyYW5jZV90YWJsZV9jb2x1bW5fY291bnRzOiBtYXAtbWVyZ2UoJGluc3VyYW5jZV90YWJsZV9jb2x1bW5fY291bnRzLCAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGluc3VyYW5jZVRhYmxlVGhNaXhpbigkaW5zdXJhbmNlX3RhYmxlX2NvbHVtbl9jb3VudHMsICRpbnN1cmFuY2VfdGFibGVfY29sdW1uX2NvbG9ycyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgJlttb2RlPVwicmVhZFwiXSB7XG4gICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpLnJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AZWFjaCAkYXV0aF9sZXZlbCwgJGNvdW50IGluICRhdXRoX2xldmVscyB7XG4gICAgJGF1dGhfbGV2ZWxfdGhyZXNob2xkOiAyMDA7XG4gICAgQGlmICRhdXRoX2xldmVsID49ICRhdXRoX2xldmVsX3RocmVzaG9sZCB7XG4gICAgICAgIFthdXRoX2xldmVsPVwiI3skYXV0aF9sZXZlbH1cIl0ge1xuICAgICAgICAgICAgLmluc3VyYW5jZS10YWJsZSB7XG4gICAgICAgICAgICAgICAgLmhhbmRzb250YWJsZSB7XG4gICAgICAgICAgICAgICAgICAgICZbbW9kZT1cImNyZWF0ZVwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzeXN0ZW06IFsgdXNlcl9pZCBdLmxlbmd0aCA9PT0gMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGluc3VyYW5jZV90YWJsZV9jb2x1bW5fY291bnRzOiBtYXAtbWVyZ2UoJGluc3VyYW5jZV90YWJsZV9jb2x1bW5fY291bnRzLCAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtOiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGluc3VyYW5jZVRhYmxlVGhNaXhpbigkaW5zdXJhbmNlX3RhYmxlX2NvbHVtbl9jb3VudHMsICRpbnN1cmFuY2VfdGFibGVfY29sdW1uX2NvbG9ycyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8dGVtcGxhdGU+XG4gICAgPHZ1ZS1zZWxlY3RcbiAgICAgICAgOnZhbHVlPVwidmFsdWVcIlxuICAgICAgICA6b3B0aW9ucz1cIiRzdG9yZS5zdGF0ZS5hcHAuZGF0YS5wcmVmZWN0dXJlcyB8fCBbXVwiXG4gICAgICAgIDpnZXQtb3B0aW9uLWxhYmVsPVwiKG9wdGlvbikgPT4geyByZXR1cm4gb3B0aW9uLnZhbHVlIH1cIlxuICAgICAgICA6c2l6ZT1cInNpemVcIlxuICAgICAgICA6cmVkdWNlPVwidiA9PiB2LnZhbHVlXCJcbiAgICAgICAgOmZpbHRlcj1cImZpbHRlclByZWZlY3R1cmVcIlxuICAgICAgICBAaW5wdXQ9XCJpbnB1dFwiXG5cbiAgICAgICAgYXBwZW5kLXRvLWJvZHlcbiAgICAgICAgOmNhbGN1bGF0ZS1wb3NpdGlvbj1cIndpdGhQb3BwZXJcIlxuICAgICAgICA+XG4gICAgPC92dWUtc2VsZWN0PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBGdXNlIGZyb20gJ2Z1c2UuanMnXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICB9LFxuICAgIHByb3BzOiB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJ3NtJyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRhdGEoKSB7XG4gICAgICAgIHJldHVybiB7fVxuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHt9LFxuICAgIGFzeW5jIG1vdW50ZWQoKSB7fSxcbiAgICBtZXRob2RzOiB7XG4gICAgICAgIGZpbHRlclByZWZlY3R1cmUob3B0aW9ucywgc2VhcmNoKSB7XG4gICAgICAgICAgICBjb25zdCBmdXNlID0gbmV3IEZ1c2Uob3B0aW9ucywge1xuICAgICAgICAgICAgICAgIGtleXM6IFsgJ3ZhbHVlJywgJ3RleHQnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgfSxcblxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG48L3N0eWxlPlxuXG4iLCI8dGVtcGxhdGU+XG4gICAgPHZ1ZS1zZWxlY3RcbiAgICAgICAgOnZhbHVlPVwidmFsdWVcIlxuICAgICAgICA6b3B0aW9ucz1cImxlYWRlcnMgfHwgW11cIlxuICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cIihvcHRpb24pID0+IHsgcmV0dXJuIG9wdGlvbi5wcm9maWxlID8gKG9wdGlvbi5wcm9maWxlLnNhaXNvbl9jdXN0b21lcl9udW1iZXIgKyAnOiAnICsgb3B0aW9uLnByb2ZpbGUucHJvZmlsZV9jb21wYW55KSA6ICcnIH1cIlxuICAgICAgICA6c2l6ZT1cInNpemVcIlxuICAgICAgICA6cmVkdWNlPVwidiA9PiB2LmlkXCJcbiAgICAgICAgOmZpbHRlcj1cImZpbHRlckNvdW50cnlcIlxuICAgICAgICBAaW5wdXQ9XCJpbnB1dFwiXG4gICAgICAgIEBzZWFyY2g9XCJmZXRjaE9wdGlvbnNcIlxuXG4gICAgICAgIGFwcGVuZC10by1ib2R5XG4gICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgPlxuICAgIDwvdnVlLXNlbGVjdD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgRnVzZSBmcm9tICdmdXNlLmpzJ1xuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjb21wb25lbnRzOiB7XG4gICAgfSxcbiAgICBwcm9wczoge1xuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgdHlwZTogTnVtYmVyLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogbnVsbCxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJ3NtJyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRhdGEoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBsZWFkZXJzOiBbXSxcbiAgICAgICAgfVxuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHt9LFxuICAgIGFzeW5jIG1vdW50ZWQoKSB7XG4gICAgICAgIHRoaXMuZmV0Y2hPcHRpb25zKClcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgZmV0Y2hPcHRpb25zKHNlYXJjaCwgbG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy5sZWFkZXJzLnNwbGljZSgwKVxuICAgICAgICAgICAgdGhpcy4kc3RvcmVcbiAgICAgICAgICAgICAgICAuZGlzcGF0Y2goJ3VzZXIvaW5kZXgnLCB7XG4gICAgICAgICAgICAgICAgICAgIGxldmVsOiAyMDAsXG4gICAgICAgICAgICAgICAgICAgIFNJTEVOVDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxlYWRlcnMucHVzaCguLi5yZXNwb25zZS5kYXRhLmRhdGEuaGl0cylcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBmaWx0ZXJDb3VudHJ5KG9wdGlvbnMsIHNlYXJjaCkge1xuICAgICAgICAgICAgY29uc3QgZnVzZSA9IG5ldyBGdXNlKG9wdGlvbnMsIHtcbiAgICAgICAgICAgICAgICBrZXlzOiBbICdwcm9maWxlLnByb2ZpbGVfY29tcGFueScsICdwcm9maWxlLnNhaXNvbl9jdXN0b21lcl9udW1iZXInLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgfSxcblxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG48L3N0eWxlPlxuXG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pbnZlbnRvcnktaW5mbyB7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5zdG9yZS1pbmZvIHtcbiAgICBidXR0b24ge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG59XG4iLCI8dGVtcGxhdGU+XG4gICAgPHZ1ZS1zZWxlY3RcbiAgICAgICAgOnZhbHVlPVwidmFsdWVcIlxuICAgICAgICA6b3B0aW9ucz1cIm9wdGlvbnMgfHwgW11cIlxuICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cImdldE9wdGlvbkxhYmVsXCJcbiAgICAgICAgOnNpemU9XCJzaXplXCJcbiAgICAgICAgOnJlZHVjZT1cInJlZHVjZVwiXG4gICAgICAgIDpmaWx0ZXI9XCJmaWx0ZXJPcHRpb25cIlxuICAgICAgICBAaW5wdXQ9XCJpbnB1dFwiXG5cbiAgICAgICAgYXBwZW5kLXRvLWJvZHlcbiAgICAgICAgOmNhbGN1bGF0ZS1wb3NpdGlvbj1cIndpdGhQb3BwZXJcIlxuICAgICAgICA+XG4gICAgPC92dWUtc2VsZWN0PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBGdXNlIGZyb20gJ2Z1c2UuanMnXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICB9LFxuICAgIHByb3BzOiB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICB0eXBlOiBbIFN0cmluZywgQm9vbGVhbiBdLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIH0sXG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICdzbScsXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGtleXM6IHtcbiAgICAgICAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gWyAndGV4dCcsIF1cbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlZHVjZToge1xuICAgICAgICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAodikgPT4geyByZXR1cm4gdi52YWx1ZSB9LFxuICAgICAgICB9LFxuICAgICAgICBnZXRPcHRpb25MYWJlbDoge1xuICAgICAgICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAob3B0aW9uKSA9PiB7IHJldHVybiBvcHRpb24udGV4dCB9LFxuLy8gICAgICAgICAgICBkZWZhdWx0OiAob3B0aW9uKSA9PiB7IHJldHVybiBvcHRpb24udmFsdWUgKyAnOiAnICsgb3B0aW9uLnRleHQgfSxcbiAgICAgICAgfSxcbiAgICAgICAgZHJvcGRvd25MaXN0SGVpZ2h0OiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnMzUwcHgnLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHt9XG4gICAgfSxcbiAgICBjb21wdXRlZDoge30sXG4gICAgYXN5bmMgbW91bnRlZCgpIHt9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgZmlsdGVyT3B0aW9uKG9wdGlvbnMsIHNlYXJjaCkge1xuICAgICAgICAgICAgY29uc3QgZnVzZSA9IG5ldyBGdXNlKG9wdGlvbnMsIHtcbiAgICAgICAgICAgICAgICBrZXlzOiB0aGlzLmtleXMsXG4vLyAgICAgICAgICAgICAgICBrZXlzOiBbICd2YWx1ZScsICd0ZXh0JywgXSxcbiAgICAgICAgICAgICAgICBzaG91bGRTb3J0OiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgdG9rZW5pemU6IHRydWUsXG4vLyAgICAgICAgICAgICAgICBpZ25vcmVMb2NhdGlvbjogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIGluY2x1ZGVNYXRjaGVzOiB0cnVlLFxuICAgICAgICAgICAgICAgIG1pbk1hdGNoQ2hhckxlbmd0aDogMSxcbiAgICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDAuOSxcbiAgICAgICAgICAgIH0pXG5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICBjb25zdCBkcm9wZG93bkxpc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd1bC52c19fZHJvcGRvd24tbWVudScpXG4gICAgaWYgKGRyb3Bkb3duTGlzdCkge1xuICAgICAgICBjb25zb2xlLmxvZyhkcm9wZG93bkxpc3Quc2Nyb2xsVG9wID0gMClcbiAgICB9XG59ICwgMSlcbiAgICAgICAgICAgIHJldHVybiBzZWFyY2gubGVuZ3RoXG4gICAgICAgICAgICAgICAgPyBmdXNlLnNlYXJjaChzZWFyY2gpLm1hcCgoeyBpdGVtIH0pID0+IGl0ZW0pXG4gICAgICAgICAgICAgICAgOiBmdXNlLmxpc3RcbiAgICAgICAgfSxcbiAgICAgICAgaW5wdXQodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdmFsdWUpXG4gICAgICAgIH0sXG5cbiAgICAgICAgd2l0aFBvcHBlcihkcm9wZG93bkxpc3QsIGNvbXBvbmVudCwgeyB3aWR0aCB9KSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdlIG5lZWQgdG8gZXhwbGljaXRseSBkZWZpbmUgdGhlIGRyb3Bkb3duIHdpZHRoIHNpbmNlXG4gICAgICAgICAgICAgKiBpdCBpcyB1c3VhbGx5IGluaGVyaXRlZCBmcm9tIHRoZSBwYXJlbnQgd2l0aCBDU1MuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS53aWR0aCA9IHdpZHRoXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUuaGVpZ2h0ID0gdGhpcy5kcm9wZG93bkxpc3RIZWlnaHRcbi8vICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLmhlaWdodCA9ICcxMDBweCdcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBIZXJlIHdlIHBvc2l0aW9uIHRoZSBkcm9wZG93bkxpc3QgcmVsYXRpdmUgdG8gdGhlICRyZWZzLnRvZ2dsZSBFbGVtZW50LlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAnb2Zmc2V0JyBtb2RpZmllciBhbGlnbnMgdGhlIGRyb3Bkb3duIHNvIHRoYXQgdGhlICRyZWZzLnRvZ2dsZSBhbmRcbiAgICAgICAgICAgICAqIHRoZSBkcm9wZG93bkxpc3Qgb3ZlcmxhcCBieSAxIHBpeGVsLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAndG9nZ2xlQ2xhc3MnIG1vZGlmaWVyIGFkZHMgYSAnZHJvcC11cCcgY2xhc3MgdG8gdGhlIFZ1ZSBTZWxlY3RcbiAgICAgICAgICAgICAqIHdyYXBwZXIgc28gdGhhdCB3ZSBjYW4gc2V0IHNvbWUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBpcyBwbGFjZWRcbiAgICAgICAgICAgICAqIGFib3ZlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB2bSA9IHRoaXNcbiAgICAgICAgICAgIGNvbnN0IHBvcHBlciA9IGNyZWF0ZVBvcHBlcihjb21wb25lbnQuJHJlZnMudG9nZ2xlLCBkcm9wZG93bkxpc3QsIHtcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG1vZGlmaWVyczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAtMV0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndG9nZ2xlQ2xhc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlOiAnd3JpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm4oeyBzdGF0ZSB9KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50LiRlbC5jbGFzc0xpc3QudG9nZ2xlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZHJvcC11cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnBsYWNlbWVudCA9PT0gJ3RvcCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRvIHByZXZlbnQgbWVtb3J5IGxlYWtzIFBvcHBlciBuZWVkcyB0byBiZSBkZXN0cm95ZWQuXG4gICAgICAgICAgICAgKiBJZiB5b3UgcmV0dXJuIGZ1bmN0aW9uLCBpdCB3aWxsIGJlIGNhbGxlZCBqdXN0IGJlZm9yZSBkcm9wZG93biBpcyByZW1vdmVkIGZyb20gRE9NLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gcG9wcGVyLmRlc3Ryb3koKVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLnYtc2VsZWN0LmRyb3AtdXAudnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoNjAsIDYwLCA2MCwgMC4yNik7XG59XG5cbltkYXRhLXBvcHBlci1wbGFjZW1lbnQ9J3RvcCddIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgLTNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbjwvc3R5bGU+XG5cbjxzdHlsZT5cbi52c19fZHJvcGRvd24tbWVudSB7XG4gICAgei1pbmRleDogMjAwMDtcbn1cbjwvc3R5bGU+XG5cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8ZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImZpbGUtZHJvcC1hcmVhIGJvcmRlciByb3VuZGVkIHAtNCB0ZXh0LWNlbnRlciBtYi0zXCJcbiAgICAgICAgICAgIEBkcmFnZW50ZXI9XCJkcmFnRW50ZXJcIiBcbiAgICAgICAgICAgIEBkcmFnbGVhdmU9XCJkcmFnTGVhdmVcIlxuICAgICAgICAgICAgQGRyYWdvdmVyLnByZXZlbnRcbiAgICAgICAgICAgIEBkcm9wLnByZXZlbnQ9XCJkcm9wRmlsZVwiXG4gICAgICAgICAgICA6Y2xhc3M9XCJ7ICdmaWxlLWRyb3AtZW50ZXInOiBpc0VudGVyIH1cIlxuICAgICAgICAgICAgQGNsaWNrPVwiJHJlZnMuZmlsZS5jbGljaygpXCJcbiAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlxuICAgICAgICAgICAgICAgIOODieODqeODg+OCsOOCouODs+ODieODieODreODg+ODlzxicj5cbiAgICAgICAgICAgICAgICBvcjxicj5cbiAgICAgICAgICAgICAgICDjgqvjg6Hjg6kv6YG45oqeXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxpbnB1dCByZWY9XCJmaWxlXCIgdHlwZT1cImZpbGVcIiBtdWx0aXBsZSBhY2NlcHQ9XCJpbWFnZS8qXCIgY2xhc3M9XCJkLW5vbmVcIiBAY2hhbmdlPVwiY2FwdHVyZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIFxuICAgICAgICA8Yi1yb3c+XG4gICAgICAgICAgICA8Yi1jb2xcbiAgICAgICAgICAgICAgICB2LWZvcj1cIihiYXNlNjQsIGluZGV4KSBpbiBiYXNlNjRzXCJcbiAgICAgICAgICAgICAgICBjb2xzPVwiMlwiXG4gICAgICAgICAgICAgICAgOmtleT1cImluZGV4XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtcmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cInRleHQtZGFuZ2VyXCIgQGNsaWNrPVwiYmFzZTY0cy5zcGxpY2UoaW5kZXgsIDEpXCI+5YmK6ZmkPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcXVhcmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyA6c3JjPVwiYmFzZTY0XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cInRleHQtZGFya1wiIEBjbGljaz1cIihpbmRleCA+IDApID8gKCR1dGlscy5zd2FwKGJhc2U2NHMsIGluZGV4IC0gMSwgaW5kZXgpKSA6IG51bGxcIj7il4DliY3jgbg8L2E+XG4gICAgICAgICAgICAgICAgICAgICZlbXNwO1xuICAgICAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwidGV4dC1kYXJrXCIgQGNsaWNrPVwiKGluZGV4IDwgYmFzZTY0cy5sZW5ndGggLSAxKSA/ICgkdXRpbHMuc3dhcChiYXNlNjRzLCBpbmRleCArIDEsIGluZGV4KSkgOiBudWxsXCI+5b6M44G44pa2PC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9iLWNvbD5cbiAgICAgICAgPC9iLXJvdz5cbiAgICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG48c3R5bGU+XG4uc3F1YXJlIHtcbiAgICBhc3BlY3QtcmF0aW86IDEgLyAxOyAvKiDmraPmlrnlvaIgKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvKiDnlLvlg4/jgYzjga/jgb/lh7rjgZXjgarjgYTjgojjgYbjgasgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc3F1YXJlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyAvKiDjg4jjg6rjg5/jg7PjgrDjgZfjgabmnqDjgYTjgaPjgbHjgYTjgavooajnpLogKi9cbn1cbjwvc3R5bGU+XG48c2NyaXB0PlxuZXhwb3J0IGRlZmF1bHQge1xuICAgIHByb3BzOiBbXG4gICAgICAgICd2YWx1ZSdcbiAgICBdLFxuICAgIGRhdGEoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpc0VudGVyOiBmYWxzZSxcbiAgICAgICAgICAgIGJhc2U2NHM6IFtdLFxuICAgICAgICB9XG4gICAgfSxcbiAgICB3YXRjaDoge1xuICAgICAgICBiYXNlNjRzOiB7XG4gICAgICAgICAgICBoYW5kbGVyKCkge1xuICAgICAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5iYXNlNjRzKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRlZXA6IHRydWVcbiAgICAgICAgfVxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBkcmFnRW50ZXIoKSB7XG4gICAgICAgICAgICB0aGlzLmlzRW50ZXIgPSB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIGRyYWdMZWF2ZSgpIHtcbiAgICAgICAgICAgIHRoaXMuaXNFbnRlciA9IGZhbHNlXG4gICAgICAgIH0sXG4gICAgICAgIGRyb3BGaWxlKCkge1xuICAgICAgICAgICAgdGhpcy5wcm9jZXNzRmlsZUxpc3QoZXZlbnQuZGF0YVRyYW5zZmVyLmZpbGVzKVxuICAgICAgICAgICAgdGhpcy5pc0VudGVyID0gZmFsc2VcbiAgICAgICAgfSxcbiAgICAgICAgY2FwdHVyZSgpIHtcbmNvbnNvbGUubG9nKGV2ZW50KVxuICAgICAgICAgICAgdGhpcy5wcm9jZXNzRmlsZUxpc3QoZXZlbnQudGFyZ2V0LmZpbGVzKVxuICAgICAgICAgICAgdGhpcy4kcmVmcy5maWxlLnZhbHVlID0gJydcbiAgICAgICAgfSxcbiAgICAgICAgYXN5bmMgcHJvY2Vzc0ZpbGVMaXN0KGZpbGVMaXN0KSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlcyA9IFsgLi4uZmlsZUxpc3QgXVxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBmaWxlc1tpXVxuICAgICAgICAgICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKClcbiAgICAgICAgICAgICAgICBpZiAoZmlsZSkge1xuICAgICAgICAgICAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKVxuICAgICAgICAgICAgICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHJlYWRlci5vbmxvYWQgPSAoKSA9PiByZXNvbHZlKCkpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFzZTY0cy5wdXNoKHJlYWRlci5yZXN1bHQpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cbjxzdHlsZT5cbi5maWxlLWRyb3AtYXJlYSB7XG4gICAgYm9yZGVyLXN0eWxlOiBkb3R0ZWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItd2lkdGg6IDVweCAhaW1wb3J0YW50O1xufVxuLmZpbGUtZHJvcC1lbnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiBwb3dkZXJibHVlICFpbXBvcnRhbnQ7XG59XG48L3N0eWxlPlxuIiwiPHRlbXBsYXRlPlxuICAgIDx2dWUtc2VsZWN0XG4gICAgICAgIDp2YWx1ZT1cInZhbHVlXCJcbiAgICAgICAgOm9wdGlvbnM9XCJvcHRpb25zXCJcbiAgICAgICAgOmdldC1vcHRpb24tbGFiZWw9XCIob3B0aW9uKSA9PiB7IHJldHVybiBvcHRpb24udmFsdWUgKyAnOiAnICsgb3B0aW9uLnRleHQgfVwiXG4gICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgIDpyZWR1Y2U9XCJyZWR1Y2VcIlxuICAgICAgICA6ZmlsdGVyPVwiZmlsdGVyQ291bnRyeVwiXG4gICAgICAgIDptdWx0aXBsZT1cIm11bHRpcGxlXCJcbiAgICAgICAgQGlucHV0PVwiaW5wdXRcIlxuXG4gICAgICAgIGFwcGVuZC10by1ib2R5XG4gICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgPlxuICAgIDwvdnVlLXNlbGVjdD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgRnVzZSBmcm9tICdmdXNlLmpzJ1xuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjb21wb25lbnRzOiB7XG4gICAgfSxcbiAgICBwcm9wczoge1xuICAgICAgICByZWR1Y2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdCh2KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHYudGV4dFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHR5cGU6IFsgU3RyaW5nLCBBcnJheSwgXSxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnc20nLFxuICAgICAgICB9LFxuICAgICAgICBtdWx0aXBsZToge1xuICAgICAgICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICBleGNsdWRlOiB7XG4gICAgICAgICAgICB0eXBlOiBBcnJheSxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQodikge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRhdGEoKSB7XG4gICAgICAgIHJldHVybiB7fVxuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgb3B0aW9ucygpIHtcbiAgICAgICAgICAgIGxldCByZXQgPSB0aGlzLiRzdG9yZS5zdGF0ZS5hcHAuZGF0YS5yZWdpb25zXG4gICAgICAgICAgICAgICAgLmNvbmNhdCh0aGlzLiRzdG9yZS5zdGF0ZS5hcHAuZGF0YS5jb3VudHJpZXMpXG4gICAgICAgICAgICAgICAgLmZpbHRlcigodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXRoaXMuZXhjbHVkZS5pbmNsdWRlcyh2LnZhbHVlKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgfHwgW11cbiAgICAgICAgICAgIHJldHVybiByZXRcbiAgICAgICAgfVxuICAgIH0sXG4gICAgYXN5bmMgbW91bnRlZCgpIHt9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgZmlsdGVyQ291bnRyeShvcHRpb25zLCBzZWFyY2gpIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1c2UgPSBuZXcgRnVzZShvcHRpb25zLCB7XG4gICAgICAgICAgICAgICAga2V5czogWyAndmFsdWUnLCAndGV4dCcsIF0sXG4gICAgICAgICAgICAgICAgc2hvdWxkU29ydDogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIHRva2VuaXplOiB0cnVlLFxuLy8gICAgICAgICAgICAgICAgaWdub3JlTG9jYXRpb246IHRydWUsXG5cbiAgICAgICAgICAgICAgICBpbmNsdWRlTWF0Y2hlczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBtaW5NYXRjaENoYXJMZW5ndGg6IDEsXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAwLjksXG4gICAgICAgICAgICB9KVxuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgY29uc3QgZHJvcGRvd25MaXN0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigndWwudnNfX2Ryb3Bkb3duLW1lbnUnKVxuICAgIGlmIChkcm9wZG93bkxpc3QpIHtcbiAgICAgICAgY29uc29sZS5sb2coZHJvcGRvd25MaXN0LnNjcm9sbFRvcCA9IDApXG4gICAgfVxufSAsIDEpXG4gICAgICAgICAgICByZXR1cm4gc2VhcmNoLmxlbmd0aFxuICAgICAgICAgICAgICAgID8gZnVzZS5zZWFyY2goc2VhcmNoKS5tYXAoKHsgaXRlbSB9KSA9PiBpdGVtKVxuICAgICAgICAgICAgICAgIDogZnVzZS5saXN0XG4gICAgICAgIH0sXG4gICAgICAgIGlucHV0KHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKVxuICAgICAgICB9LFxuXG4gICAgICAgIHdpdGhQb3BwZXIoZHJvcGRvd25MaXN0LCBjb21wb25lbnQsIHsgd2lkdGggfSkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXZSBuZWVkIHRvIGV4cGxpY2l0bHkgZGVmaW5lIHRoZSBkcm9wZG93biB3aWR0aCBzaW5jZVxuICAgICAgICAgICAgICogaXQgaXMgdXN1YWxseSBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50IHdpdGggQ1NTLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUud2lkdGggPSB3aWR0aFxuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLmhlaWdodCA9ICczNTBweCdcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBIZXJlIHdlIHBvc2l0aW9uIHRoZSBkcm9wZG93bkxpc3QgcmVsYXRpdmUgdG8gdGhlICRyZWZzLnRvZ2dsZSBFbGVtZW50LlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAnb2Zmc2V0JyBtb2RpZmllciBhbGlnbnMgdGhlIGRyb3Bkb3duIHNvIHRoYXQgdGhlICRyZWZzLnRvZ2dsZSBhbmRcbiAgICAgICAgICAgICAqIHRoZSBkcm9wZG93bkxpc3Qgb3ZlcmxhcCBieSAxIHBpeGVsLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAndG9nZ2xlQ2xhc3MnIG1vZGlmaWVyIGFkZHMgYSAnZHJvcC11cCcgY2xhc3MgdG8gdGhlIFZ1ZSBTZWxlY3RcbiAgICAgICAgICAgICAqIHdyYXBwZXIgc28gdGhhdCB3ZSBjYW4gc2V0IHNvbWUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBpcyBwbGFjZWRcbiAgICAgICAgICAgICAqIGFib3ZlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB2bSA9IHRoaXNcbiAgICAgICAgICAgIGNvbnN0IHBvcHBlciA9IGNyZWF0ZVBvcHBlcihjb21wb25lbnQuJHJlZnMudG9nZ2xlLCBkcm9wZG93bkxpc3QsIHtcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG1vZGlmaWVyczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAtMV0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndG9nZ2xlQ2xhc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlOiAnd3JpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm4oeyBzdGF0ZSB9KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50LiRlbC5jbGFzc0xpc3QudG9nZ2xlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZHJvcC11cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnBsYWNlbWVudCA9PT0gJ3RvcCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRvIHByZXZlbnQgbWVtb3J5IGxlYWtzIFBvcHBlciBuZWVkcyB0byBiZSBkZXN0cm95ZWQuXG4gICAgICAgICAgICAgKiBJZiB5b3UgcmV0dXJuIGZ1bmN0aW9uLCBpdCB3aWxsIGJlIGNhbGxlZCBqdXN0IGJlZm9yZSBkcm9wZG93biBpcyByZW1vdmVkIGZyb20gRE9NLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gcG9wcGVyLmRlc3Ryb3koKVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLnYtc2VsZWN0LmRyb3AtdXAudnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoNjAsIDYwLCA2MCwgMC4yNik7XG59XG5cbltkYXRhLXBvcHBlci1wbGFjZW1lbnQ9J3RvcCddIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgLTNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbjwvc3R5bGU+XG5cbjxzdHlsZT5cbi52c19fZHJvcGRvd24tbWVudSB7XG4gICAgei1pbmRleDogMjAwMDtcbn1cbjwvc3R5bGU+XG5cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8dnVlLXNlbGVjdFxuICAgICAgICA6dmFsdWU9XCJ2YWx1ZVwiXG4gICAgICAgIDpvcHRpb25zPVwiJHN0b3JlLnN0YXRlLmFwcC5kYXRhLmxpc3RpbmdfaHRtbCB8fCBbXVwiXG4gICAgICAgIDpnZXQtb3B0aW9uLWxhYmVsPVwiKG9wdGlvbikgPT4geyByZXR1cm4gb3B0aW9uLm5hbWUgfVwiXG4gICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgIDpyZWR1Y2U9XCJyZWR1Y2VcIlxuICAgICAgICA6ZmlsdGVyPVwiZmlsdGVyXCJcbiAgICAgICAgQGlucHV0PVwiaW5wdXRcIlxuXG4gICAgICAgIGFwcGVuZC10by1ib2R5XG4gICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgPlxuICAgIDwvdnVlLXNlbGVjdD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgRnVzZSBmcm9tICdmdXNlLmpzJ1xuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjb21wb25lbnRzOiB7XG4gICAgfSxcbiAgICBwcm9wczoge1xuICAgICAgICByZWR1Y2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdCh2KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHYuaWRcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICB0eXBlOiBbIFN0cmluZywgTnVtYmVyLCBdLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIH0sXG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICdzbScsXG4gICAgICAgIH0sXG4gICAgICAgIG11bHRpcGxlOiB7XG4gICAgICAgICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge31cbiAgICB9LFxuICAgIGNvbXB1dGVkOiB7fSxcbiAgICBhc3luYyBtb3VudGVkKCkge30sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBmaWx0ZXIob3B0aW9ucywgc2VhcmNoKSB7XG4gICAgICAgICAgICBjb25zdCBmdXNlID0gbmV3IEZ1c2Uob3B0aW9ucywge1xuICAgICAgICAgICAgICAgIGtleXM6IFsgJ25hbWUnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy4kc3RvcmUuc3RhdGUuYXBwLmRhdGEubGlzdGluZ19odG1sLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuJHN0b3JlLnN0YXRlLmFwcC5kYXRhLmxpc3RpbmdfaHRtbFtpXVxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gaXRlbS5pZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dEh0bWwnLCBpdGVtLmh0bWwpXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuXG4gICAgICAgIHdpdGhQb3BwZXIoZHJvcGRvd25MaXN0LCBjb21wb25lbnQsIHsgd2lkdGggfSkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXZSBuZWVkIHRvIGV4cGxpY2l0bHkgZGVmaW5lIHRoZSBkcm9wZG93biB3aWR0aCBzaW5jZVxuICAgICAgICAgICAgICogaXQgaXMgdXN1YWxseSBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50IHdpdGggQ1NTLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUud2lkdGggPSB3aWR0aFxuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLmhlaWdodCA9ICczNTBweCdcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBIZXJlIHdlIHBvc2l0aW9uIHRoZSBkcm9wZG93bkxpc3QgcmVsYXRpdmUgdG8gdGhlICRyZWZzLnRvZ2dsZSBFbGVtZW50LlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAnb2Zmc2V0JyBtb2RpZmllciBhbGlnbnMgdGhlIGRyb3Bkb3duIHNvIHRoYXQgdGhlICRyZWZzLnRvZ2dsZSBhbmRcbiAgICAgICAgICAgICAqIHRoZSBkcm9wZG93bkxpc3Qgb3ZlcmxhcCBieSAxIHBpeGVsLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAndG9nZ2xlQ2xhc3MnIG1vZGlmaWVyIGFkZHMgYSAnZHJvcC11cCcgY2xhc3MgdG8gdGhlIFZ1ZSBTZWxlY3RcbiAgICAgICAgICAgICAqIHdyYXBwZXIgc28gdGhhdCB3ZSBjYW4gc2V0IHNvbWUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBpcyBwbGFjZWRcbiAgICAgICAgICAgICAqIGFib3ZlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB2bSA9IHRoaXNcbiAgICAgICAgICAgIGNvbnN0IHBvcHBlciA9IGNyZWF0ZVBvcHBlcihjb21wb25lbnQuJHJlZnMudG9nZ2xlLCBkcm9wZG93bkxpc3QsIHtcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG1vZGlmaWVyczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAtMV0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndG9nZ2xlQ2xhc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlOiAnd3JpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm4oeyBzdGF0ZSB9KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50LiRlbC5jbGFzc0xpc3QudG9nZ2xlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZHJvcC11cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnBsYWNlbWVudCA9PT0gJ3RvcCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRvIHByZXZlbnQgbWVtb3J5IGxlYWtzIFBvcHBlciBuZWVkcyB0byBiZSBkZXN0cm95ZWQuXG4gICAgICAgICAgICAgKiBJZiB5b3UgcmV0dXJuIGZ1bmN0aW9uLCBpdCB3aWxsIGJlIGNhbGxlZCBqdXN0IGJlZm9yZSBkcm9wZG93biBpcyByZW1vdmVkIGZyb20gRE9NLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gcG9wcGVyLmRlc3Ryb3koKVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLnYtc2VsZWN0LmRyb3AtdXAudnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoNjAsIDYwLCA2MCwgMC4yNik7XG59XG5cbltkYXRhLXBvcHBlci1wbGFjZW1lbnQ9J3RvcCddIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgLTNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbjwvc3R5bGU+XG5cbjxzdHlsZT5cbi52c19fZHJvcGRvd24tbWVudSB7XG4gICAgei1pbmRleDogMjAwMDtcbn1cbjwvc3R5bGU+XG5cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4kbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvbG9yczogKFxuICAgIHN5c3RlbTogI2ZkZmRmZCxcbiAgICBzeXN0ZW1fdXBkYXRlZF9hdDogIzExMTExMSxcbiAgICB1c2VyOiAjNzc3Nzc3LFxuICAgIGluc3BlY3RvcjogI2VmZWZlZixcbiAgICBkM3BsOiAjZDllYWQzLFxuKTtcbiRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY291bnRzOiAoXG4gICAgc3lzdGVtOiAyLFxuICAgIHN5c3RlbV91cGRhdGVkX2F0OiAxLFxuICAgIHVzZXI6IDUsXG4gICAgaW5zcGVjdG9yOiA1LFxuICAgIGQzcGw6IDE0LFxuKTtcbiAgICBcbkBtaXhpbiBtYXJ1bmFnZVRhYmxlVGhNaXhpbigkY29sdW1uX2NvdW50cywgJGNvbHVtbl9jb2xvcnMpIHtcbiAgICAkaW5kZXg6IDI7XG4gICAgQGVhY2ggJGtleSwgJGNvdW50IGluICRjb2x1bW5fY291bnRzIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY291bnQge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoI3skaSArICRpbmRleH0pe1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbHVtbl9jb2xvcnMsICRrZXkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgJGluZGV4OiAkaW5kZXggKyAkY291bnQ7XG4gICAgfVxufVxuXG4ubWFydW5hZ2UtdGFibGUge1xuICAgIC5oYW5kc29udGFibGUge1xuICAgICAgICAmW21vZGU9XCJyZWFkXCJdLFxuICAgICAgICAmW21vZGU9XCJ1cGRhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHM6IG1hcC1tZXJnZSgkbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvdW50cywgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1hcnVuYWdlVGFibGVUaE1peGluKCRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY291bnRzLCAkbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvbG9ycyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJlttb2RlPVwiY3JlYXRlXCJdIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY291bnRzOiBtYXAtbWVyZ2UoJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHMsIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW06IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtX3VwZGF0ZWRfYXQ6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZmlsZTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFydW5hZ2VUYWJsZVRoTWl4aW4oJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHMsICRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuICAgICAgICAmW21vZGU9XCJyZWFkXCJdIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkucmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBlYWNoICRhdXRoX2xldmVsLCAkY291bnQgaW4gJGF1dGhfbGV2ZWxzIHtcbiAgICAkYXV0aF9sZXZlbF90aHJlc2hvbGQ6IDIwMDtcbiAgICBAaWYgJGF1dGhfbGV2ZWwgPj0gJGF1dGhfbGV2ZWxfdGhyZXNob2xkIHtcbiAgICAgICAgW2F1dGhfbGV2ZWw9XCIjeyRhdXRoX2xldmVsfVwiXSB7XG4gICAgICAgICAgICAubWFydW5hZ2UtdGFibGUge1xuICAgICAgICAgICAgICAgIC5oYW5kc29udGFibGUge1xuICAgICAgICAgICAgICAgICAgICAmW21vZGU9XCJjcmVhdGVcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc3lzdGVtOiBbIHVzZXJfaWQgXS5sZW5ndGggPT09IDFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY291bnRzOiBtYXAtbWVyZ2UoJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHMsIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW06IDIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtX3VwZGF0ZWRfYXQ6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZmlsZTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFydW5hZ2VUYWJsZVRoTWl4aW4oJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHMsICRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8dnVlLXNlbGVjdFxuICAgICAgICA6dmFsdWU9XCJ2YWx1ZVwiXG4gICAgICAgIDpvcHRpb25zPVwiW1xuICAgICAgICAgICAgeyB2YWx1ZTogJ2Zyb20nLCB0ZXh0OifnmbrpgIHkurrjga7nmbvpjLLnlarlj7cnLCB9LFxuICAgICAgICAgICAgeyB2YWx1ZTogJ3RvJywgdGV4dDon5Y+X5Y+W5Lq644Gu55m76Yyy55Wq5Y+3JywgfSxcbiAgICAgICAgICAgIHsgdmFsdWU6ICdlYmF5JywgdGV4dDonZUJheeOBrueZu+mMsueVquWPtycsIH0sXG4gICAgICAgICAgICB7IHZhbHVlOiAnaW9zcycsIHRleHQ6J0lPU1Pjga7nmbvpjLLnlarlj7cnLCB9LFxuICAgICAgICAgICAgeyB2YWx1ZTogJ2diJywgdGV4dDonR0IgVkFU44Gu55m76Yyy55Wq5Y+3JywgfSxcbiAgICAgICAgICAgIHsgdmFsdWU6IG51bGwsIHRleHQ6J+OBquOBlycsIH0sXG4gICAgICAgIF1cIlxuICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cIihvcHRpb24pID0+IHsgcmV0dXJuIG9wdGlvbi50ZXh0IH1cIlxuICAgICAgICA6c2l6ZT1cInNpemVcIlxuICAgICAgICA6cmVkdWNlPVwidiA9PiB2LnZhbHVlXCJcbiAgICAgICAgOmZpbHRlcj1cImZpbHRlck9wdGlvblwiXG4gICAgICAgIEBpbnB1dD1cImlucHV0XCJcblxuICAgICAgICBhcHBlbmQtdG8tYm9keVxuICAgICAgICA6Y2FsY3VsYXRlLXBvc2l0aW9uPVwid2l0aFBvcHBlclwiXG4gICAgICAgID5cbiAgICA8L3Z1ZS1zZWxlY3Q+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IEZ1c2UgZnJvbSAnZnVzZS5qcydcbmltcG9ydCB7IGNyZWF0ZVBvcHBlciB9IGZyb20gJ0Bwb3BwZXJqcy9jb3JlJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgY29tcG9uZW50czoge1xuICAgIH0sXG4gICAgcHJvcHM6IHtcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnc20nLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHt9XG4gICAgfSxcbiAgICBjb21wdXRlZDoge30sXG4gICAgYXN5bmMgbW91bnRlZCgpIHt9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgZmlsdGVyT3B0aW9uKG9wdGlvbnMsIHNlYXJjaCkge1xuICAgICAgICAgICAgY29uc3QgZnVzZSA9IG5ldyBGdXNlKG9wdGlvbnMsIHtcbiAgICAgICAgICAgICAgICBrZXlzOiBbICd2YWx1ZScsICd0ZXh0JywgXSxcbiAgICAgICAgICAgICAgICBzaG91bGRTb3J0OiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgdG9rZW5pemU6IHRydWUsXG4vLyAgICAgICAgICAgICAgICBpZ25vcmVMb2NhdGlvbjogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIGluY2x1ZGVNYXRjaGVzOiB0cnVlLFxuICAgICAgICAgICAgICAgIG1pbk1hdGNoQ2hhckxlbmd0aDogMSxcbiAgICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDAuOSxcbiAgICAgICAgICAgIH0pXG5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICBjb25zdCBkcm9wZG93bkxpc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd1bC52c19fZHJvcGRvd24tbWVudScpXG4gICAgaWYgKGRyb3Bkb3duTGlzdCkge1xuICAgICAgICBjb25zb2xlLmxvZyhkcm9wZG93bkxpc3Quc2Nyb2xsVG9wID0gMClcbiAgICB9XG59ICwgMSlcbiAgICAgICAgICAgIHJldHVybiBzZWFyY2gubGVuZ3RoXG4gICAgICAgICAgICAgICAgPyBmdXNlLnNlYXJjaChzZWFyY2gpLm1hcCgoeyBpdGVtIH0pID0+IGl0ZW0pXG4gICAgICAgICAgICAgICAgOiBmdXNlLmxpc3RcbiAgICAgICAgfSxcbiAgICAgICAgaW5wdXQodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdmFsdWUpXG4gICAgICAgIH0sXG5cbiAgICAgICAgd2l0aFBvcHBlcihkcm9wZG93bkxpc3QsIGNvbXBvbmVudCwgeyB3aWR0aCB9KSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdlIG5lZWQgdG8gZXhwbGljaXRseSBkZWZpbmUgdGhlIGRyb3Bkb3duIHdpZHRoIHNpbmNlXG4gICAgICAgICAgICAgKiBpdCBpcyB1c3VhbGx5IGluaGVyaXRlZCBmcm9tIHRoZSBwYXJlbnQgd2l0aCBDU1MuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS53aWR0aCA9IHdpZHRoXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUuaGVpZ2h0ID0gJzM1MHB4J1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEhlcmUgd2UgcG9zaXRpb24gdGhlIGRyb3Bkb3duTGlzdCByZWxhdGl2ZSB0byB0aGUgJHJlZnMudG9nZ2xlIEVsZW1lbnQuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogVGhlICdvZmZzZXQnIG1vZGlmaWVyIGFsaWducyB0aGUgZHJvcGRvd24gc28gdGhhdCB0aGUgJHJlZnMudG9nZ2xlIGFuZFxuICAgICAgICAgICAgICogdGhlIGRyb3Bkb3duTGlzdCBvdmVybGFwIGJ5IDEgcGl4ZWwuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogVGhlICd0b2dnbGVDbGFzcycgbW9kaWZpZXIgYWRkcyBhICdkcm9wLXVwJyBjbGFzcyB0byB0aGUgVnVlIFNlbGVjdFxuICAgICAgICAgICAgICogd3JhcHBlciBzbyB0aGF0IHdlIGNhbiBzZXQgc29tZSBzdHlsZXMgZm9yIHdoZW4gdGhlIGRyb3Bkb3duIGlzIHBsYWNlZFxuICAgICAgICAgICAgICogYWJvdmUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnN0IHZtID0gdGhpc1xuICAgICAgICAgICAgY29uc3QgcG9wcGVyID0gY3JlYXRlUG9wcGVyKGNvbXBvbmVudC4kcmVmcy50b2dnbGUsIGRyb3Bkb3duTGlzdCwge1xuICAgICAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgbW9kaWZpZXJzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdvZmZzZXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogWzAsIC0xXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd0b2dnbGVDbGFzcycsXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2U6ICd3cml0ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICBmbih7IHN0YXRlIH0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQuJGVsLmNsYXNzTGlzdC50b2dnbGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkcm9wLXVwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUucGxhY2VtZW50ID09PSAndG9wJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVG8gcHJldmVudCBtZW1vcnkgbGVha3MgUG9wcGVyIG5lZWRzIHRvIGJlIGRlc3Ryb3llZC5cbiAgICAgICAgICAgICAqIElmIHlvdSByZXR1cm4gZnVuY3Rpb24sIGl0IHdpbGwgYmUgY2FsbGVkIGp1c3QgYmVmb3JlIGRyb3Bkb3duIGlzIHJlbW92ZWQgZnJvbSBET00uXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBwb3BwZXIuZGVzdHJveSgpXG4gICAgICAgIH0sXG4gICAgfSxcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG4udi1zZWxlY3QuZHJvcC11cC52cy0tb3BlbiAudnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSg2MCwgNjAsIDYwLCAwLjI2KTtcbn1cblxuW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0ndG9wJ10ge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAtM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuPC9zdHlsZT5cblxuPHN0eWxlPlxuLnZzX19kcm9wZG93bi1tZW51IHtcbiAgICB6LWluZGV4OiAyMDAwO1xufVxuPC9zdHlsZT5cblxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaGlwcGluZy1hZGRyZXNzLXRoIHtcbiAgICB3aWR0aDowLjElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCI8dGVtcGxhdGU+XG4gICAgPGRpdj5cbiAgICAgICAgPHZ1ZS1zZWxlY3RcbiAgICAgICAgICAgIDp2YWx1ZT1cIm5hbWVcIlxuICAgICAgICAgICAgOm9wdGlvbnM9XCJvcHRpb25zX2ZpbHRlcmVkXCJcbiAgICAgICAgICAgIDpnZXQtb3B0aW9uLWxhYmVsPVwiKG9wdGlvbikgPT4geyByZXR1cm4gb3B0aW9uLnRleHQgfVwiXG4gICAgICAgICAgICA6c2l6ZT1cInNpemVcIlxuICAgICAgICAgICAgOnJlZHVjZT1cInYgPT4gdi52YWx1ZVwiXG4gICAgICAgICAgICA6ZmlsdGVyPVwiZmlsdGVyT3B0aW9uXCJcbiAgICAgICAgICAgIEBpbnB1dD1cImlucHV0XCJcblxuICAgICAgICAgICAgYXBwZW5kLXRvLWJvZHlcbiAgICAgICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgPC92dWUtc2VsZWN0PlxuXG4gICAgICAgIDxkaXYgdi1pZj1cIm9wdGlvbl9zZWxlY3RlZFwiPlxuICAgICAgICAgICAgPHNwYW4+55m76Yyy55Wq5Y+344Gu55m66KGM5Zu9PC9zcGFuPlxuICAgICAgICAgICAgPHZ1ZS1zZWxlY3RcbiAgICAgICAgICAgICAgICA6dmFsdWU9XCJpc3N1ZXJfY291bnRyeV9jb2RlXCJcbiAgICAgICAgICAgICAgICA6b3B0aW9ucz1cIm9wdGlvbl9zZWxlY3RlZC5pc3N1ZXJfY291bnRyeV9jb2RlXCJcbiAgICAgICAgICAgICAgICA6c2l6ZT1cInNpemVcIlxuICAgICAgICAgICAgICAgIEBpbnB1dD1cImlucHV0X2lzc3Vlcl9jb3VudHJ5X2NvZGVcIlxuXG4gICAgICAgICAgICAgICAgYXBwZW5kLXRvLWJvZHlcbiAgICAgICAgICAgICAgICA6Y2FsY3VsYXRlLXBvc2l0aW9uPVwid2l0aFBvcHBlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC92dWUtc2VsZWN0PlxuXG4gICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJ0ZXh0LXNlY29uZGFyeVwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IHByZTtcIj57eyBvcHRpb25fc2VsZWN0ZWQubm90ZSB9fTwvc21hbGw+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBGdXNlIGZyb20gJ2Z1c2UuanMnXG5pbXBvcnQgeyBjcmVhdGVQb3BwZXIgfSBmcm9tICdAcG9wcGVyanMvY29yZSdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICB9LFxuICAgIHByb3BzOiB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJ3NtJyxcbiAgICAgICAgfSxcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIERFTElNSVRFUjogJ19fXycsXG4gICAgICAgICAgICBuYW1lOiBudWxsLFxuICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogbnVsbCxcbiAgICAgICAgICAgIG9wdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAvLyBmcm9tXG4vLyAgICAgICAgICAgICAgICB7XG4vLyAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAnZnJvbScsXG4vLyAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnTlonLCBdLFxuLy8gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdJUkTnlarlj7cgT3ZlcnNlYXMgUmVnaXN0ZXJlZCBTdXBwbGllcixcbi8vICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuLy8gICAgICAgICAgICAgICAgICAgIG5vdGU6ICc4fjnmoYHjga7mlbDlrZcnLFxuLy8gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdVbml0ZWQgS2luZ2RvbScsXG4vLyAgICAgICAgICAgICAgICB9LFxuLy8gICAgICAgICAgICAgICAge1xuLy8gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2Zyb20nLFxuLy8gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ05PJywgXSxcbi8vICAgICAgICAgICAgICAgICAgICBuYW1lOiAnVk9FQ+eVquWPtyBWQVQgb24gRS1Db21tZXJjZScsXG4vLyAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbi8vICAgICAgICAgICAgICAgICAgICBub3RlOiAnMuOBp+Wni+OBvuOCizfmoYHjga7mlbDlrZcnLFxuLy8gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdOb3J3YXknLFxuLy8gICAgICAgICAgICAgICAgfSxcbi8vICAgICAgICAgICAgICAgIHtcbi8vICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdmcm9tJyxcbi8vICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdBVScsIF0sXG4vLyAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0FVU0lE55Wq5Y+3IEFVU2lkR1NUIFJlZ2lzdHJhdGlvbicsXG4vLyAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbi8vICAgICAgICAgICAgICAgICAgICBub3RlOiAnMTF+MTLmoYHjga7mlbDlrZcnLFxuLy8gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdBdXN0cmFsaWEnLFxuLy8gICAgICAgICAgICAgICAgfSxcbi8vICAgICAgICAgICAgICAgIHtcbi8vICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdmcm9tJyxcbi8vLy8gRVUgbGlzdFxuLy8gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ1RPRE86RVUnLCBdLFxuLy8gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdJT1NT55Wq5Y+3IEltcG9ydCBPbmUtU3RvcC1TaG9wJyxcbi8vICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuLy8gICAgICAgICAgICAgICAgICAgIG5vdGU6ICdJTSsxMOahgeOBruaVsOWtlycsXG4vLyAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0VV5Yqg55uf5Zu9Jyxcbi8vICAgICAgICAgICAgICAgIH0sXG4vLyAgICAgICAgICAgICAgICB7XG4vLyAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAnZnJvbScsXG4vLyAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnR0InLCBdLFxuLy8gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdVS1ZBVOeVquWPtyBHQlZBVCAoZm9yZWlnbikgUmVnaXN0cmF0aW9uJyxcbi8vICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuLy8gICAgICAgICAgICAgICAgICAgIG5vdGU6ICdHQisxMuahgeOBruaVsOWtlycsXG4vLyAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ1VuaXRlZCBLaW5nZG9tJyxcbi8vICAgICAgICAgICAgICAgIH0sXG4vLyAgICAgICAgICAgICAgICB7XG4vLyAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAnZnJvbScsXG4vLyAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnU0cnLCBdLFxuLy8gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdHU1TnmbvpjLLnlarlj7cgU2luZ2Fwb3JlIEdTVCBDb2xsZWN0ZWQnLFxuLy8gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4vLyAgICAgICAgICAgICAgICAgICAgbm90ZTogJzl+MTDmoYHjga7mlbDlrZcnLFxuLy8gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdTaW5nYXBvcmUnLFxuLy8gICAgICAgICAgICAgICAgfSxcbi8vICAgICAgICAgICAgICAgIHtcbi8vICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdmcm9tJyxcbi8vICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdNWScsIF0sXG4vLyAgICAgICAgICAgICAgICAgICAgbmFtZTogJ+eZu+mMsuiyqeWjsuiAhe+8iFJT77yJ55Wq5Y+3IE1hbGF5c2lhIExvdyBWYWx1ZSBSZWdpc3RyYXRpb24gTnVtYmVyJyxcbi8vICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuLy8gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcxMOahgeOBruiLseaVsOWtlycsXG4vLyAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ01hbGF5c2lhJyxcbi8vICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdmcm9tJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnSlAnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAn6Ly45Ye66ICF44Gu5pel5pys44Gu5rOV5Lq655Wq5Y+3JyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnVkFUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogYDzms5Xkurrnlarlj7fjgpLjgYrmjIHjgaHjga7jgYrlrqLmp5g+IFxu5rOV5Lq655Wq5Y+35qSc57Si44K144Kk44OI77yaaHR0cHM6Ly93d3cuaG91amluLWJhbmdvdS5udGEuZ28uanAvXG7jg7sxM+ahgSBcbuODu+aUr+W6l+OCs+ODvOODieOBruOBlOaMh+WumuOBjOOBguOCi+WgtOWQiOOBr+acq+WwvjTmoYHjga7mlK/lupfjgrPjg7zjg4njgpLlkKvjgoAxN+ahgVxuPOazleS6uueVquWPt+OBjOOBquOBhOOBiuWuouanmD4gXG7jg7vnqI7plqLnmbrntabjgrPjg7zjg4njgpLjgYrmjIHjgaHjga7loLTlkIjjgIAxN+ahgSBcbuODu0pBU1RQUk/jgrPjg7zjg4njgpLjgYrmjIHjgaHjga7loLTlkIjjgIAxMuahgWAsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICfjgZnjgbnjgaYnLFxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICAvLyB0b1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAndG8nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiB0aGlzLiRzdG9yZS5zdGF0ZS5hcHAuZGF0YS5jb3VudHJpZXMubWFwKCh2KSA9PiB7IHJldHVybiB2LnZhbHVlIH0pLFxuLy8gVE9ETzrjgojjg7zjgo3jgaPjgbEgbGlzdFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnRU9SSeeVquWPtycsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ0VPUicsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6ICfnmbrooYzlm73jgrPjg7zjg4ky5paH5a2XK+acgOWkpzE15qGB44Gu5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ+ODqOODvOODreODg+ODkScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnSUQnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnTlBXUOeVquWPtycsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1ZBVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcxNeahgeOBruaVsOWtlycsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdJbmRvbmVzaWEnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICd0bycsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ0lEJywgXSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0lE55Wq5Y+3JyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnTklEJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJzE25qGB44Gu5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0luZG9uZXNpYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnSUQnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAn6YGL6Lui5YWN6Kix6Ki855Wq5Y+3JyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnRExJJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJzEz5qGB44Gu5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0luZG9uZXNpYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnSUQnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAn44OR44K544Od44O844OI55Wq5Y+3JyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnUEFTJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJ+OCouODq+ODleOCoeODmeODg+ODiOOBqOaVsOWtlycsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdJbmRvbmVzaWEnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICd0bycsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ0tSJywgXSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ1BDQ0MnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdWQVQnLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiAnOH4xM+ahgS8gUCsxMuahgeOBruaVsOWtlycsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdTb3V0aCBLb3JlYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnQ04nLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAn6Ly45Ye65YWl6ICF55m76Yyy55Wq5Y+377yIQ1Lnlarlj7fvvIknLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdSR1AnLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0NoaW5hJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAndG8nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdDTicsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICfntbHkuIDnpL7kvJrkv6HnlKjjgrPjg7zjg4nvvIhVU0NJ55Wq5Y+377yJJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnRFVOJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJycsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdDaGluYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnQlInLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnQ05QSueVquWPt++8iOazleS6uu+8iScsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ0NOUCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcxN+ahgeOBruaVsOWtlycsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdCcmF6aWwnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICd0bycsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ0JSJywgXSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0NQRueVquWPt++8iOWAi+S6uu+8iScsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ0NOUCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcxNOahgeOBruaVsOWtlycsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdCcmF6aWwnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICd0bycsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ0NMJywgXSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ1ZBVOeVquWPtycsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1ZBVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcnLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnQ2hpbGUnLFxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICAvLyBlYmF5XG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdlYmF5JyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnR0InLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnVUtWQVTnlarlj7cgR0JWQVQgKGZvcmVpZ24pIFJlZ2lzdHJhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6IGDvvIjkvovvvIlHQjM2NTYwODU3Nlxu44Kk44Ku44Oq44K55a6b44GmXG4xMzXjg53jg7Pjg4nku6XkuItgLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnVW5pdGVkIEtpbmdkb20nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdlYmF5JyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnREUnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnSU9TU+eVquWPtyBJbXBvcnQgT25lLVN0b3AtU2hvcCcsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6IGDvvIjkvovvvIlJTTI3NjAwMDA3NDJcbkVV5Yqg55uf5Zu95a6b44GmXG4xNTDjg6bjg7zjg63ku6XkuItgLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnRVXliqDnm5/lm70nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdlYmF5JyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnQVUnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnQVVTIElE55Wq5Y+377yIQUJOI++8iSBBVVNpZCBHU1QgUmVnaXN0cmF0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogYO+8iOS+i++8iTY0NjUyMDE2NjgxXG7jgqrjg7zjgrnjg4jjg6njg6rjgqLlrpvjgaZcbjEsMDAw44Kq44O844K544OI44Op44Oq44Ki44OJ44Or5Lul5LiLYCxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0F1c3RyYWxpYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2ViYXknLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdOWicsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdJUkTnlarlj7cgT3ZlcnNlYXMgUmVnaXN0ZXJlZCBTdXBwbGllcicsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6IGDvvIjkvovvvIkxMjYxMDE2NzjvvIjjg4/jgqTjg5Xjg7PlkKvjgb7jgZrvvIlcbuODi+ODpeODvOOCuOODvOODqeODs+ODieWum+OBplxuMSwwMDDjg4vjg6Xjg7zjgrjjg7zjg6njg7Pjg4njg4njg6vku6XkuItgLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnTmV3IFplYWxhbmQnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdlYmF5JyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnTk8nLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnVk9FQ+eVquWPtyBWQVQgb24gRS1Db21tZXJjZScsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6IGDvvIjkvovvvIkyMDI0OTI2XG7jg47jg6vjgqbjgqfigJXlrpvjgaZcbjMsMDAw44Kv44Ot44O844ON5Lul5LiLYCxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ05vcndheScsXG4gICAgICAgICAgICAgICAgfSxcblxuXG4gICAgICAgICAgICAgICAgLy8gSU9TU1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAnaW9zcycsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IHRoaXMuJHN0b3JlLnN0YXRlLmFwcC5kYXRhLmNvdW50cmllc19ldSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0lPU1Pnlarlj7cgSW1wb3J0IE9uZS1TdG9wLVNob3AnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiBgSU0rMTDmoYHjga7mlbDlrZdcbkVV5Yqg55uf5Zu95a6b44GmXG4xNTDjg6bjg7zjg63ku6XkuItgLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnRVXliqDnm5/lm70nLFxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICAvLyBHQiBWQVRcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2diJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnR0InLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnVUtWQVTnlarlj7cgR0JWQVQgKGZvcmVpZ24pIFJlZ2lzdHJhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6IGBHQis55qGB44Gu5pWw5a2XXG7jgqTjgq7jg6rjgrnlrpvjgaZcbjEzNeODneODs+ODieS7peS4i2AsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdVbml0ZWQgS2luZ2RvbScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH1cbiAgICB9LFxuICAgIGNvbXB1dGVkOiB7XG4gICAgICAgIG9wdGlvbnNfZmlsdGVyZWQoKSB7XG4gICAgICAgICAgICBsZXQgb3B0aW9ucyA9IHRoaXMub3B0aW9uc1xuICAgICAgICAgICAgICAgIC5maWx0ZXIoKHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHYudGFyZ2V0ID09PSB0aGlzLnRhcmdldFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLm1hcCgodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB2LnRleHQgPSB2Lm5hbWUgKyAn77yI5Y+X5Y+W5Zu9OicgKyB2LnRvX2NvdW50cnkgKyAn77yJJ1xuICAgICAgICAgICAgICAgICAgICB2LnZhbHVlID0gdi50YXJnZXQgKyB0aGlzLkRFTElNSVRFUiArIHYudHlwZV9jb2RlICsgdGhpcy5ERUxJTUlURVIgKyB2Lm5hbWVcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgcmV0dXJuIG9wdGlvbnNcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uX3NlbGVjdGVkKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9uc19maWx0ZXJlZFxuICAgICAgICAgICAgICAgIC5maWx0ZXIoKHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHYudmFsdWUgPT09IHRoaXMubmFtZVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLnNoaWZ0KClcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIHdhdGNoOiB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBhc3luYyBoYW5kbGVyICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMucGFyc2VWYWx1ZSh2YWx1ZSlcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBpbW1lZGlhdGU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBhc3luYyBtb3VudGVkKCkge1xuLy8gICAgICAgIHRoaXMuJHdhdGNoKCd2YWx1ZScsICh2YWx1ZV9uZXcsIHZhbHVlX29sZCkgPT4ge1xuLy9jb25zb2xlLmxvZyh2YWx1ZV9vbGQpXG4vL2NvbnNvbGUubG9nKHZhbHVlX25ldylcbi8vICAgICAgICAgICAgdGhpcy5wYXJzZVZhbHVlKHZhbHVlX25ldylcbi8vICAgICAgICB9LCB7XG4vLyAgICAgICAgICAgIGltbWVkaWF0ZTogdHJ1ZSwgLy8g44Kq44OX44K344On44OzXG4vLyAgICAgICAgfSlcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgcGFyc2VWYWx1ZSh2YWx1ZSkge1xuICAgICAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IHZhbHMgPSAodmFsdWUgfHwgJycpLnNwbGl0KHRoaXMuREVMSU1JVEVSKVxuICAgICAgICAgICAgaWYgKHZhbHMubGVuZ3RoID09PSA0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5uYW1lID0gWyB2YWxzWzBdLCB2YWxzWzFdLCB2YWxzWzJdLCBdLmpvaW4odGhpcy5ERUxJTUlURVIpXG4gICAgICAgICAgICAgICAgdGhpcy5pc3N1ZXJfY291bnRyeV9jb2RlID0gdmFsc1szXVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy4kZm9yY2VVcGRhdGUoKTtcbiAgICAgICAgfSxcbiAgICAgICAgc3RyaW5naWZ5VmFsdWUoKSB7XG4gICAgICAgICAgICBsZXQgdmFscyA9ICh0aGlzLm5hbWUgfHwgJycpLnNwbGl0KHRoaXMuREVMSU1JVEVSKVxuICAgICAgICAgICAgaWYgKHZhbHMubGVuZ3RoID09PSAzKSB7XG5jb25zb2xlLmxvZyggWyB2YWxzWzBdLCB2YWxzWzFdLCB2YWxzWzJdLCB0aGlzLmlzc3Vlcl9jb3VudHJ5X2NvZGUsIF0uam9pbih0aGlzLkRFTElNSVRFUikgKVxuICAgICAgICAgICAgICAgIHJldHVybiBbIHZhbHNbMF0sIHZhbHNbMV0sIHZhbHNbMl0sIHRoaXMuaXNzdWVyX2NvdW50cnlfY29kZSwgXS5qb2luKHRoaXMuREVMSU1JVEVSKVxuICAgICAgICAgICAgfVxuXG5jb25zb2xlLmxvZyhcbiAgICAgICAgICAgIFsgJycsJycsJycsJycsIF0uam9pbih0aGlzLkRFTElNSVRFUilcbilcbiAgICAgICAgICAgIHJldHVybiBbICcnLCcnLCcnLCcnLCBdLmpvaW4odGhpcy5ERUxJTUlURVIpXG4gICAgICAgIH0sXG4gICAgICAgIGZpbHRlck9wdGlvbihvcHRpb25zLCBzZWFyY2gpIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1c2UgPSBuZXcgRnVzZShvcHRpb25zLCB7XG4gICAgICAgICAgICAgICAga2V5czogWyAndmFsdWUnLCAndGV4dCcsIF0sXG4gICAgICAgICAgICAgICAgc2hvdWxkU29ydDogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIHRva2VuaXplOiB0cnVlLFxuLy8gICAgICAgICAgICAgICAgaWdub3JlTG9jYXRpb246IHRydWUsXG5cbiAgICAgICAgICAgICAgICBpbmNsdWRlTWF0Y2hlczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBtaW5NYXRjaENoYXJMZW5ndGg6IDEsXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAwLjksXG4gICAgICAgICAgICB9KVxuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgY29uc3QgZHJvcGRvd25MaXN0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigndWwudnNfX2Ryb3Bkb3duLW1lbnUnKVxuICAgIGlmIChkcm9wZG93bkxpc3QpIHtcbiAgICAgICAgY29uc29sZS5sb2coZHJvcGRvd25MaXN0LnNjcm9sbFRvcCA9IDApXG4gICAgfVxufSAsIDEpXG4gICAgICAgICAgICByZXR1cm4gc2VhcmNoLmxlbmd0aFxuICAgICAgICAgICAgICAgID8gZnVzZS5zZWFyY2goc2VhcmNoKS5tYXAoKHsgaXRlbSB9KSA9PiBpdGVtKVxuICAgICAgICAgICAgICAgIDogZnVzZS5saXN0XG4gICAgICAgIH0sXG4gICAgICAgIGlucHV0KHZhbHVlKSB7XG5jb25zb2xlLmxvZygnaW5wdXQnKVxuICAgICAgICAgICAgdGhpcy5uYW1lID0gdmFsdWVcbiAgICAgICAgICAgIHRoaXMuaXNzdWVyX2NvdW50cnlfY29kZSA9IG51bGxcbmNvbnNvbGUubG9nKHZhbHVlKVxuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLnN0cmluZ2lmeVZhbHVlKCkpXG4gICAgICAgIH0sXG4gICAgICAgIGlucHV0X2lzc3Vlcl9jb3VudHJ5X2NvZGUodmFsdWUpIHtcbmNvbnNvbGUubG9nKCdpbnB1dF9pc3N1ZXJfY291bnRyeV9jb2RlJylcbiAgICAgICAgICAgIHRoaXMuaXNzdWVyX2NvdW50cnlfY29kZSA9IHZhbHVlXG5jb25zb2xlLmxvZyh2YWx1ZSlcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5zdHJpbmdpZnlWYWx1ZSgpKVxuLy8gICAgICAgICAgICBpZiAodGhpcy5uYW1lICYmIHRoaXMuaXNzdWVyX2NvdW50cnlfY29kZSkge1xuLy8gICAgICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLm5hbWUgKyB0aGlzLkRFTElNSVRFUiArIHRoaXMuaXNzdWVyX2NvdW50cnlfY29kZSlcbi8vICAgICAgICAgICAgfSBlbHNlIHtcbi8vICAgICAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgbnVsbClcbi8vICAgICAgICAgICAgfVxuICAgICAgICB9LFxuXG4gICAgICAgIHdpdGhQb3BwZXIoZHJvcGRvd25MaXN0LCBjb21wb25lbnQsIHsgd2lkdGggfSkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXZSBuZWVkIHRvIGV4cGxpY2l0bHkgZGVmaW5lIHRoZSBkcm9wZG93biB3aWR0aCBzaW5jZVxuICAgICAgICAgICAgICogaXQgaXMgdXN1YWxseSBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50IHdpdGggQ1NTLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUud2lkdGggPSB3aWR0aFxuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLmhlaWdodCA9ICczNTBweCdcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBIZXJlIHdlIHBvc2l0aW9uIHRoZSBkcm9wZG93bkxpc3QgcmVsYXRpdmUgdG8gdGhlICRyZWZzLnRvZ2dsZSBFbGVtZW50LlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAnb2Zmc2V0JyBtb2RpZmllciBhbGlnbnMgdGhlIGRyb3Bkb3duIHNvIHRoYXQgdGhlICRyZWZzLnRvZ2dsZSBhbmRcbiAgICAgICAgICAgICAqIHRoZSBkcm9wZG93bkxpc3Qgb3ZlcmxhcCBieSAxIHBpeGVsLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAndG9nZ2xlQ2xhc3MnIG1vZGlmaWVyIGFkZHMgYSAnZHJvcC11cCcgY2xhc3MgdG8gdGhlIFZ1ZSBTZWxlY3RcbiAgICAgICAgICAgICAqIHdyYXBwZXIgc28gdGhhdCB3ZSBjYW4gc2V0IHNvbWUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBpcyBwbGFjZWRcbiAgICAgICAgICAgICAqIGFib3ZlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB2bSA9IHRoaXNcbiAgICAgICAgICAgIGNvbnN0IHBvcHBlciA9IGNyZWF0ZVBvcHBlcihjb21wb25lbnQuJHJlZnMudG9nZ2xlLCBkcm9wZG93bkxpc3QsIHtcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG1vZGlmaWVyczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAtMV0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndG9nZ2xlQ2xhc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlOiAnd3JpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm4oeyBzdGF0ZSB9KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50LiRlbC5jbGFzc0xpc3QudG9nZ2xlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZHJvcC11cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnBsYWNlbWVudCA9PT0gJ3RvcCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRvIHByZXZlbnQgbWVtb3J5IGxlYWtzIFBvcHBlciBuZWVkcyB0byBiZSBkZXN0cm95ZWQuXG4gICAgICAgICAgICAgKiBJZiB5b3UgcmV0dXJuIGZ1bmN0aW9uLCBpdCB3aWxsIGJlIGNhbGxlZCBqdXN0IGJlZm9yZSBkcm9wZG93biBpcyByZW1vdmVkIGZyb20gRE9NLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gcG9wcGVyLmRlc3Ryb3koKVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLnYtc2VsZWN0LmRyb3AtdXAudnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoNjAsIDYwLCA2MCwgMC4yNik7XG59XG5cbltkYXRhLXBvcHBlci1wbGFjZW1lbnQ9J3RvcCddIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgLTNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbjwvc3R5bGU+XG5cbjxzdHlsZT5cbi52c19fZHJvcGRvd24tbWVudSB7XG4gICAgei1pbmRleDogMjAwMDtcbn1cbjwvc3R5bGU+XG5cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaGlwcGluZy1hZGRyZXNzLXRoIHtcbiAgICB3aWR0aDowLjElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5vcmRlci1wcm92aWRlciB7XG4gICAgbWF4LXdpZHRoOiA4ZW07XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc2hpcHBpbmctYWRkcmVzcy10aCB7XG4gICAgd2lkdGg6MC4xJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc2hpcHBpbmctYWRkcmVzcy10aCB7XG4gICAgd2lkdGg6MC4xJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaGlwcGluZy1hZGRyZXNzLXRoIHtcbiAgICB3aWR0aDowLjElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5AbWl4aW4gaW5zdXJhbmNlVGFibGVUaE1peGluKCRjb2x1bW5fY291bnRzLCAkY29sdW1uX2NvbG9ycykge1xuICAgICRpbmRleDogMjtcbiAgICBAZWFjaCAka2V5LCAkY291bnQgaW4gJGNvbHVtbl9jb3VudHMge1xuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb3VudCB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgjeyRpICsgJGluZGV4fSl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sdW1uX2NvbG9ycywgJGtleSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAkaW5kZXg6ICRpbmRleCArICRjb3VudDtcbiAgICB9XG59XG5cbi5zaGlwcGluZy10YWJsZSB7XG4gICAgLmhhbmRzb250YWJsZSB7XG4gICAgICAgICRjb2x1bW5fY29sb3JzOiAoXG4gICAgICAgICAgICBzeXN0ZW06ICNmZGZkZmQsXG4gICAgICAgICAgICBjb3VyaWVyOiAjZmRmZGZkLFxuICAgICAgICAgICAgc3lzdGVtX3VwZGF0ZWRfYXQ6ICMxMTExMTEsXG4gICAgICAgICAgICBwcm9maWxlOiAjNzc3Nzc3LFxuICAgICAgICAgICAgZnJvbTogI2VmZWZlZixcbiAgICAgICAgICAgIHRvOiAjZDllYWQzLFxuICAgICAgICAgICAgaW1wb3J0ZXI6ICM5ZGVhZDMsXG4gICAgICAgICAgICBzaGlwcGluZzogI2Q5ZDlkOSxcbiAgICAgICAgKTtcbiAgICAgICAgJGNvbHVtbl9jb3VudHM6IChcbiAgICAgICAgICAgIHN5c3RlbTogNCxcbiAgICAgICAgICAgIGNvdXJpZXI6IDIsXG4gICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMSxcbiAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICBmcm9tOiAxMyxcbiAgICAgICAgICAgIHRvOiAxMyxcbiAgICAgICAgICAgIGltcG9ydGVyOiAxMyxcbiAgICAgICAgICAgIHNoaXBwaW5nOiAxNCxcbiAgICAgICAgKTtcbiAgICBcbiAgICAgICAgJlttb2RlPVwicmVhZFwiXSxcbiAgICAgICAgJlttb2RlPVwidXBkYXRlXCJdIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICRjb2x1bW5fY291bnRzOiBtYXAtbWVyZ2UoJGNvbHVtbl9jb3VudHMsIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9maWxlOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpbnN1cmFuY2VUYWJsZVRoTWl4aW4oJGNvbHVtbl9jb3VudHMsICRjb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW21vZGU9XCJjcmVhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGNvbHVtbl9jb3VudHM6IG1hcC1tZXJnZSgkY29sdW1uX2NvdW50cywgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9maWxlOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpbnN1cmFuY2VUYWJsZVRoTWl4aW4oJGNvbHVtbl9jb3VudHMsICRjb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuICAgICAgICAmW21vZGU9XCJyZWFkXCJdIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkucmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5AbWl4aW4gaW5zdXJhbmNlVGFibGVUaE1peGluKCRjb2x1bW5fY291bnRzLCAkY29sdW1uX2NvbG9ycykge1xuICAgICRpbmRleDogMjtcbiAgICBAZWFjaCAka2V5LCAkY291bnQgaW4gJGNvbHVtbl9jb3VudHMge1xuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb3VudCB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgjeyRpICsgJGluZGV4fSl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sdW1uX2NvbG9ycywgJGtleSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAkaW5kZXg6ICRpbmRleCArICRjb3VudDtcbiAgICB9XG59XG5cbi5zaGlwcGluZy10YWJsZSB7XG4gICAgLmhhbmRzb250YWJsZSB7XG4gICAgICAgICRjb2x1bW5fY29sb3JzOiAoXG4gICAgICAgICAgICBzeXN0ZW06ICNmZGZkZmQsXG4gICAgICAgICAgICBjb3VyaWVyOiAjZmRmZGZkLFxuICAgICAgICAgICAgc3lzdGVtX3VwZGF0ZWRfYXQ6ICMxMTExMTEsXG4gICAgICAgICAgICBwcm9maWxlOiAjNzc3Nzc3LFxuICAgICAgICAgICAgZnJvbTogI2VmZWZlZixcbiAgICAgICAgICAgIHRvOiAjZDllYWQzLFxuICAgICAgICAgICAgaW1wb3J0ZXI6ICM5ZGVhZDMsXG4gICAgICAgICAgICBzaGlwcGluZzogI2Q5ZDlkOSxcbiAgICAgICAgKTtcbiAgICAgICAgJGNvbHVtbl9jb3VudHM6IChcbiAgICAgICAgICAgIHN5c3RlbTogMyxcbiAgICAgICAgICAgIGNvdXJpZXI6IDIsXG4gICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMSxcbiAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICBmcm9tOiAxMyxcbiAgICAgICAgICAgIHRvOiAxMyxcbiAgICAgICAgICAgIGltcG9ydGVyOiAxMyxcbiAgICAgICAgICAgIHNoaXBwaW5nOiAxNCxcbiAgICAgICAgKTtcbiAgICBcbiAgICAgICAgJlttb2RlPVwicmVhZFwiXSxcbiAgICAgICAgJlttb2RlPVwidXBkYXRlXCJdIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICRjb2x1bW5fY291bnRzOiBtYXAtbWVyZ2UoJGNvbHVtbl9jb3VudHMsIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9maWxlOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpbnN1cmFuY2VUYWJsZVRoTWl4aW4oJGNvbHVtbl9jb3VudHMsICRjb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW21vZGU9XCJjcmVhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGNvbHVtbl9jb3VudHM6IG1hcC1tZXJnZSgkY29sdW1uX2NvdW50cywgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9maWxlOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpbnN1cmFuY2VUYWJsZVRoTWl4aW4oJGNvbHVtbl9jb3VudHMsICRjb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuICAgICAgICAmW21vZGU9XCJyZWFkXCJdIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkucmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8dnVlLXNlbGVjdFxuICAgICAgICA6dmFsdWU9XCJ2YWx1ZVwiXG4gICAgICAgIDpvcHRpb25zPVwidXNlcnMgfHwgW11cIlxuICAgICAgICA6Z2V0LW9wdGlvbi1sYWJlbD1cIihvcHRpb24pID0+IHsgcmV0dXJuIG9wdGlvbi5wcm9maWxlID8gKG9wdGlvbi5wcm9maWxlLm1hcnVuYWdlX3VzZXJfaWQgKyAnOiAnICsgb3B0aW9uLm5pY2tuYW1lKSA6ICcnIH1cIlxuICAgICAgICA6c2l6ZT1cInNpemVcIlxuICAgICAgICA6cmVkdWNlPVwidiA9PiB2LnByb2ZpbGUubWFydW5hZ2VfdXNlcl9pZFwiXG4gICAgICAgIDpmaWx0ZXI9XCJmaWx0ZXJcIlxuICAgICAgICBAaW5wdXQ9XCJpbnB1dFwiXG4gICAgICAgIEBzZWFyY2g9XCJmZXRjaE9wdGlvbnNcIlxuXG4gICAgICAgIGFwcGVuZC10by1ib2R5XG4gICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCLjgqLjgqvjgqbjg7Pjg4jjgpLpgbjmip7jgZfjgabjgY/jgaDjgZXjgYRcIlxuICAgICAgICA6Y2xlYXJhYmxlPVwiZmFsc2VcIlxuICAgICAgICA+XG4gICAgPC92dWUtc2VsZWN0PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4J1xuaW1wb3J0IEZ1c2UgZnJvbSAnZnVzZS5qcydcbmltcG9ydCB7IGNyZWF0ZVBvcHBlciB9IGZyb20gJ0Bwb3BwZXJqcy9jb3JlJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgY29tcG9uZW50czoge1xuICAgIH0sXG4gICAgcHJvcHM6IHtcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICdzbScsXG4gICAgICAgIH0sXG4gICAgICAgIG1lOiB7XG4gICAgICAgICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdXNlcnM6IFtdLFxuICAgICAgICB9XG4gICAgfSxcbiAgICBjb21wdXRlZDoge1xuICAgICAgICAuLi5tYXBHZXR0ZXJzKFtcbiAgICAgICAgXSksXG4gICAgfSxcbiAgICBhc3luYyBtb3VudGVkKCkge1xuICAgICAgICB0aGlzLmZldGNoT3B0aW9ucygpXG4gICAgfSxcbiAgICBtZXRob2RzOiB7XG4gICAgICAgIGZldGNoT3B0aW9ucyhzZWFyY2gsIGxvYWRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMudXNlcnMuc3BsaWNlKDApXG4gICAgICAgICAgICB0aGlzLiRzdG9yZVxuICAgICAgICAgICAgICAgIC5kaXNwYXRjaCgndXNlci9pbmRleCcsIHtcbi8vICAgICAgICAgICAgICAgICAgICBsZXZlbDogMjAwLFxuICAgICAgICAgICAgICAgICAgICBncm91cDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgU0lMRU5UOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLm1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnVzZXJzLnB1c2goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4kc3RvcmUuc3RhdGUuYXV0aC51c2VyXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UuZGF0YS5kYXRhLmhpdHMuZm9yRWFjaCgoaGl0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWhpdC5wcm9maWxlLm1hcnVuYWdlX3VzZXJfaWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMudXNlcnMuZmlsdGVyKCh1c2VyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVzZXIuaWQgPT09IGhpdC5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgfSkubGVuZ3RoXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnVzZXJzLnB1c2goaGl0KVxuICAgICAgICAgICAgICAgICAgICB9KVxuLy8gICAgICAgICAgICAgICAgICAgIHRoaXMudXNlcnMucHVzaCguLi5yZXNwb25zZS5kYXRhLmRhdGEuaGl0cylcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBmaWx0ZXIob3B0aW9ucywgc2VhcmNoKSB7XG4gICAgICAgICAgICBjb25zdCBmdXNlID0gbmV3IEZ1c2Uob3B0aW9ucywge1xuICAgICAgICAgICAgICAgIGtleXM6IFsgJ21hcnVuYWdlX3VzZXJfaWQnLCAnbmlja25hbWUnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgfSxcblxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG4udnNfX3NlYXJjaCB7XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG59XG48L3N0eWxlPlxuXG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaGlwcGluZy1hZGRyZXNzLXRoIHtcbiAgICB3aWR0aDowLjElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZGlmZiB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDAwMDtcbn1cbiIsIjx0ZW1wbGF0ZT5cclxuICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cIm1vbnRoLXBpY2tlcl9fY29udGFpbmVyXCJcclxuICAgICAgICA6Y2xhc3M9XCJ7XHJcbiAgICAgICAgICAgIFtgbW9udGgtcGlja2VyLS0ke3ZhcmlhbnR9YF06IHRydWUsXHJcbiAgICAgICAgICAgICd5ZWFyLXBpY2tlcic6IHllYXJPbmx5LFxyXG4gICAgICAgIH1cIlxyXG4gICAgPlxyXG4gICAgICAgIDxkaXYgdi1pZj1cInNob3dZZWFyXCIgY2xhc3M9XCJtb250aC1waWNrZXJfX3llYXJcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgQGNsaWNrPVwiY2hhbmdlWWVhcigtMSlcIj4mbHNhcXVvOzwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8cCB2LWlmPVwiIWVkaXRhYmxlWWVhclwiPlxyXG4gICAgICAgICAgICAgICAge3sgeWVhciB9fVxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgICAgdi1lbHNlXHJcbiAgICAgICAgICAgICAgICB2LW1vZGVsLm51bWJlcj1cInllYXJcIlxyXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgQGNoYW5nZT1cIm9uQ2hhbmdlKClcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBAY2xpY2s9XCJjaGFuZ2VZZWFyKCsxKVwiPiZyc2FxdW87PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiB2LWlmPVwiIXllYXJPbmx5XCIgY2xhc3M9XCJtb250aC1waWNrZXJcIj5cclxuICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgdi1mb3I9XCIobW9udGgsIG1vbnRoSW5kZXgpIGluIG1vbnRoc0J5TGFuZ1wiXHJcbiAgICAgICAgICAgICAgICA6a2V5PVwibW9udGhcIlxyXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwie1xyXG4gICAgICAgICAgICAgICAgICAgIGluYWN0aXZlOiBpc0luYWN0aXZlKG1vbnRoKSxcclxuICAgICAgICAgICAgICAgICAgICBjbGVhcmFibGU6IGNsZWFyYWJsZSxcclxuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGhpZ2hsaWdodEV4YWN0RGF0ZSAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIXJhbmdlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93WWVhciAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudE1vbnRoSW5kZXggPT09IG1vbnRoSW5kZXggJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHllYXIgPT09IHNlbGVjdGVkWWVhcikgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgKCFyYW5nZSAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIXNob3dZZWFyICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50TW9udGhJbmRleCA9PSBtb250aEluZGV4KSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoIWhpZ2hsaWdodEV4YWN0RGF0ZSAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIXJhbmdlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50TW9udGhJbmRleCA9PT0gbW9udGhJbmRleCksXHJcbiAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwibW9udGgtcGlja2VyX19tb250aFwiXHJcbiAgICAgICAgICAgICAgICBAY2xpY2s9XCJzZWxlY3RNb250aChtb250aEluZGV4LCB0cnVlKVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIHt7IG1vbnRoIH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG5pbXBvcnQgbGFuZ3VhZ2VzIGZyb20gJy4vbGFuZ3VhZ2VzJ1xyXG5pbXBvcnQgbW9udGhQaWNrZXIgZnJvbSAnLi9tb250aC1waWNrZXInXHJcblxyXG5leHBvcnQgZGVmYXVsdCB7XHJcbiAgICBuYW1lOiAnTW9udGhQaWNrZXInLFxyXG4gICAgbWl4aW5zOiBbbW9udGhQaWNrZXJdLFxyXG4gICAgZW1pdHM6IFsnY2hhbmdlJywgJ2NsZWFyJywgJ2lucHV0JywgJ2NoYW5nZS15ZWFyJ10sXHJcbiAgICBkYXRhOiAoKSA9PiAoe1xyXG4gICAgICAgIGN1cnJlbnRNb250aEluZGV4OiBudWxsLFxyXG4gICAgICAgIGZpcnN0UmFuZ2VNb250aEluZGV4OiBudWxsLFxyXG4gICAgICAgIHNlY29uZFJhbmdlTW9udGhJbmRleDogbnVsbCxcclxuICAgICAgICB5ZWFyOiBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCksXHJcbiAgICAgICAgc2VsZWN0ZWRZZWFyOiBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCksXHJcbiAgICB9KSxcclxuICAgIGNvbXB1dGVkOiB7XHJcbiAgICAgICAgY3VycmVudE1vbnRoOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRNb250aEluZGV4ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5tb250aHNCeUxhbmdbdGhpcy5jdXJyZW50TW9udGhJbmRleF1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIG51bGxcclxuICAgICAgICB9LFxyXG4gICAgICAgIGZpcnN0UmFuZ2Vtb250aDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5maXJzdFJhbmdlTW9udGhJbmRleCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubW9udGhzQnlMYW5nW3RoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXhdXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiBudWxsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBzZWNvbmRSYW5nZW1vbnRoOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnNlY29uZFJhbmdlTW9udGhJbmRleCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubW9udGhzQnlMYW5nW3RoaXMuc2Vjb25kUmFuZ2VNb250aEluZGV4XVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gbnVsbFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGF0ZTogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICBjb25zdCBtb250aCA9IHRoaXMubW9udGhzQnlMYW5nLmluZGV4T2YodGhpcy5jdXJyZW50TW9udGgpICsgMVxyXG4gICAgICAgICAgICBsZXQgZGF0ZUZyb20gPSBuZXcgRGF0ZShgJHt0aGlzLnllYXJ9LyR7bW9udGh9LzAxYClcclxuICAgICAgICAgICAgbGV0IGRhdGVUbyA9IG5ldyBEYXRlKHRoaXMueWVhciwgbW9udGgsIDEpXHJcblxyXG4gICAgICAgICAgICBjb25zdCBkYXRlUmVzdWx0ID0ge1xyXG4gICAgICAgICAgICAgICAgZnJvbTogZGF0ZUZyb20sXHJcbiAgICAgICAgICAgICAgICB0bzogZGF0ZVRvLFxyXG4gICAgICAgICAgICAgICAgbW9udGg6IHRoaXMubW9udGhzQnlMYW5nW21vbnRoIC0gMV0sXHJcbiAgICAgICAgICAgICAgICBtb250aEluZGV4OiBtb250aCxcclxuICAgICAgICAgICAgICAgIHllYXI6IHRoaXMueWVhcixcclxuICAgICAgICAgICAgICAgIHJhbmdlRnJvbTogbnVsbCxcclxuICAgICAgICAgICAgICAgIHJhbmdlVG86IG51bGwsXHJcbiAgICAgICAgICAgICAgICByYW5nZUZyb21Nb250aDogbnVsbCxcclxuICAgICAgICAgICAgICAgIHJhbmdlVG9Nb250aDogbnVsbCxcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMucmFuZ2UpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG1vbnRoUmFuZ2VGcm9tID1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vbnRoc0J5TGFuZy5pbmRleE9mKHRoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXgpICsgMVxyXG4gICAgICAgICAgICAgICAgY29uc3QgbW9udGhSYW5nZVRvID1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vbnRoc0J5TGFuZy5pbmRleE9mKHRoaXMuc2Vjb25kUmFuZ2VNb250aEluZGV4KSArIDFcclxuXHJcbiAgICAgICAgICAgICAgICBkYXRlRnJvbSA9IG5ldyBEYXRlKGAke3RoaXMueWVhcn0vJHttb250aFJhbmdlRnJvbX0vMDFgKVxyXG4gICAgICAgICAgICAgICAgZGF0ZVRvID0gbmV3IERhdGUoYCR7dGhpcy55ZWFyfS8ke21vbnRoUmFuZ2VUb30vMDFgKVxyXG5cclxuICAgICAgICAgICAgICAgIGRhdGVSZXN1bHQucmFuZ2VGcm9tID0gdGhpcy5maXJzdFJhbmdlTW9udGhJbmRleFxyXG4gICAgICAgICAgICAgICAgZGF0ZVJlc3VsdC5yYW5nZVRvID0gdGhpcy5zZWNvbmRSYW5nZU1vbnRoSW5kZXhcclxuICAgICAgICAgICAgICAgIGRhdGVSZXN1bHQucmFuZ2VGcm9tTW9udGggPVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9udGhzQnlMYW5nW3RoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXhdXHJcbiAgICAgICAgICAgICAgICBkYXRlUmVzdWx0LnJhbmdlVG9Nb250aCA9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb250aHNCeUxhbmdbdGhpcy5zZWNvbmRSYW5nZU1vbnRoSW5kZXhdXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiBkYXRlUmVzdWx0XHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICB3YXRjaDoge1xyXG4gICAgICAgIGRlZmF1bHRNb250aChuZXdWYWwpIHtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGhJbmRleCA9IG5ld1ZhbCAtIDFcclxuICAgICAgICB9LFxyXG4gICAgICAgIGRlZmF1bHRZZWFyKG5ld1ZhbCkge1xyXG4gICAgICAgICAgICB0aGlzLnllYXIgPSBuZXdWYWxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIG1vdW50ZWQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZGVmYXVsdFllYXIpIHtcclxuICAgICAgICAgICAgdGhpcy55ZWFyID0gdGhpcy5kZWZhdWx0WWVhclxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMucmFuZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5zZXREZWZhdWx0TW9udGhSYW5nZSgpXHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZGVmYXVsdE1vbnRoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0TW9udGgodGhpcy5kZWZhdWx0TW9udGggLSAxKVxyXG4gICAgICAgIH0gZWxzZSBpZiAoIXRoaXMubm9EZWZhdWx0KSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0TW9udGgoMClcclxuICAgICAgICB9XHJcbiAgICB9LFxyXG4gICAgbWV0aG9kczoge1xyXG4gICAgICAgIG9uQ2hhbmdlKCkge1xyXG4gICAgICAgICAgICBpZiAoIU51bWJlci5wYXJzZUludCh0aGlzLnllYXIpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnllYXIgPSB0aGlzLmRlZmF1bHRZZWFyIHx8IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2NoYW5nZScsIHRoaXMuZGF0ZSlcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlbGVjdE1vbnRoKGluZGV4LCBpbnB1dCA9IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzSW5hY3RpdmUoaW5kZXgpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMucmFuZ2UpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNlbGVjdE1vbnRoUmFuZ2UoaW5kZXgsIGlucHV0KVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBjb25zdCBpc0FscmVhZHlTZWxlY3RlZCA9IHRoaXMuY3VycmVudE1vbnRoSW5kZXggPT09IGluZGV4XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmNsZWFyYWJsZSAmJiBpc0FscmVhZHlTZWxlY3RlZCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGhJbmRleCA9IG51bGxcclxuICAgICAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2NsZWFyJylcclxuICAgICAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5pc0FscmVhZHlTZWxlY3RlZCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoSW5kZXggPSBpbmRleFxyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKClcclxuXHJcbiAgICAgICAgICAgIGlmIChpbnB1dCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLmRhdGUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlbGVjdE1vbnRoUmFuZ2UoaW5kZXgsIGlucHV0KSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmZpcnN0UmFuZ2VNb250aEluZGV4ID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZpcnN0UmFuZ2VNb250aEluZGV4ID0gaW5kZXhcclxuICAgICAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICB0aGlzLmZpcnN0UmFuZ2VNb250aEluZGV4ICE9PSBudWxsICYmXHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlY29uZFJhbmdlTW9udGhJbmRleCAhPT0gbnVsbFxyXG4gICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXggPSBpbmRleFxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWNvbmRSYW5nZU1vbnRoSW5kZXggPSBudWxsXHJcbiAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKGluZGV4ID49IHRoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXgpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Vjb25kUmFuZ2VNb250aEluZGV4ID0gaW5kZXhcclxuICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2UoKVxyXG5cclxuICAgICAgICAgICAgICAgIGlmIChpbnB1dCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5kYXRlKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXggPSBpbmRleFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgc2V0RGVmYXVsdE1vbnRoUmFuZ2UoKSB7XHJcbiAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVmYXVsdE1vbnRoUmFuZ2UgPT09IG51bGwgfHxcclxuICAgICAgICAgICAgICAgIHRoaXMuZGVmYXVsdE1vbnRoUmFuZ2UubGVuZ3RoICE9PSAyXHJcbiAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IFtmaXJzdFJhbmdlLCBzZWNvbmRSYW5nZV0gPSB0aGlzLmRlZmF1bHRNb250aFJhbmdlXHJcbiAgICAgICAgICAgIGlmIChzZWNvbmRSYW5nZSA8PSBmaXJzdFJhbmdlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5maXJzdFJhbmdlTW9udGhJbmRleCA9IGZpcnN0UmFuZ2VcclxuICAgICAgICAgICAgdGhpcy5zZWNvbmRSYW5nZU1vbnRoSW5kZXggPSBzZWNvbmRSYW5nZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY2hhbmdlWWVhcih2YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLnllYXIgKz0gdmFsdWVcclxuICAgICAgICAgICAgaWYgKHRoaXMuaXNJbmFjdGl2ZSh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKClcclxuICAgICAgICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlLXllYXInLCB0aGlzLnllYXIpXHJcbiAgICAgICAgfSxcclxuICAgICAgICBpc0luYWN0aXZlKG1vbnRoKSB7XHJcbiAgICAgICAgICAgIGxldCBtb250aFZhbHVlID0gbW9udGhcclxuICAgICAgICAgICAgaWYgKHRoaXMubWluRGF0ZSA9PT0gbnVsbCAmJiB0aGlzLm1heERhdGUgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAoTnVtYmVyLmlzSW50ZWdlcihtb250aFZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgbW9udGhWYWx1ZSA9IHRoaXMubW9udGhzQnlMYW5nW21vbnRoVmFsdWVdXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IG1vbnRoS2V5ID0gdGhpcy5tb250aHNCeUxhbmcuaW5kZXhPZihtb250aFZhbHVlKSArIDFcclxuICAgICAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGAke3RoaXMueWVhcn0vJHttb250aEtleX0vMDFgKVxyXG4gICAgICAgICAgICBjb25zdCBpc1ZhbGlkRGF0ZSA9IChkYXRlKSA9PiBkYXRlICE9PSBudWxsICYmIGRhdGUgaW5zdGFuY2VvZiBEYXRlXHJcblxyXG4gICAgICAgICAgICBpZiAoaXNWYWxpZERhdGUodGhpcy5taW5EYXRlKSAmJiBkYXRlIDwgdGhpcy5taW5EYXRlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAoaXNWYWxpZERhdGUodGhpcy5tYXhEYXRlKSAmJiBkYXRlID4gdGhpcy5tYXhEYXRlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxufVxyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZT5cclxuLm1vbnRoLXBpY2tlcl9fY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiA0MDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMSksXHJcbiAgICAgICAgaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19jb250YWluZXIueWVhci1waWNrZXIge1xyXG4gICAgd2lkdGg6IDIwcmVtO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGJveC1zaGFkb3c6IDFweCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIHtcclxuICAgIHBhZGRpbmc6IDAuMnJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2ZjZmM7XHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpLFxyXG4gICAgICAgIGluc2V0IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9feWVhciBwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgIG1hcmdpbjogMXJlbSAwO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIGlucHV0IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMy41cmVtO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9feWVhciBpbnB1dDpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTViMGYyO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIGRpdixcclxuLm1vbnRoLXBpY2tlcl9feWVhciBidXR0b24sXHJcbi5tb250aC1waWNrZXJfX3llYXIgcCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmbGV4OiAxO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIGJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDVyZW07XHJcbiAgICBoZWlnaHQ6IDIuNzVyZW07XHJcbiAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgdG9wOiAwLjVyZW07XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZThlOGU4O1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGNvbG9yOiAjNjg2ODY4O1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIGJ1dHRvbjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDI1KTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9feWVhciBidXR0b246YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNCk7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX3llYXIgYnV0dG9uOmZpcnN0LWNoaWxkIHtcclxuICAgIGxlZnQ6IDEwcHg7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX3llYXIgYnV0dG9uOmxhc3QtY2hpbGQge1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX21vbnRoIHtcclxuICAgIHBhZGRpbmc6IDAuODVyZW0gMC4yNXJlbTtcclxuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMzJSAtIDEwcHgpO1xyXG4gICAgcGFkZGluZzogMC43NXJlbSAwLjI1cmVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNDUsIDI0NSwgMjQ1LCAwLjc1KTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19tb250aDpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiA5NSU7XHJcbiAgICBoZWlnaHQ6IDk1JTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQsXHJcbi5tb250aC1waWNrZXJfX21vbnRoLnNlbGVjdGVkLXJhbmdlLWZpcnN0LFxyXG4ubW9udGgtcGlja2VyX19tb250aC5zZWxlY3RlZC1yYW5nZS1zZWNvbmQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU1YjBmMjtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCAjMzQ5MGQyLCAwcHggMnB4IDVweCByZ2JhKDg1LCAxNzYsIDI0MiwgMC4yKTtcclxuICAgIHRleHQtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQtcmFuZ2UtZmlyc3QsXHJcbi5tb250aC1waWNrZXJfX21vbnRoLnNlbGVjdGVkLXJhbmdlLXNlY29uZCB7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19tb250aC5zZWxlY3RlZC1yYW5nZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViOWUyO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19tb250aC5pbmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xyXG4gICAgY29sb3I6ICM4YThhOGE7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19tb250aC5pbmFjdGl2ZTpob3ZlciB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4vKiBEYXJrIHRocmVtZSAqL1xyXG4ubW9udGgtcGlja2VyLS1kYXJrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZjVmNWY7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9feWVhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmYyZjMwO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX3llYXIgcCxcclxuLm1vbnRoLXBpY2tlci0tZGFyayAubW9udGgtcGlja2VyX195ZWFyIGlucHV0IHtcclxuICAgIGNvbG9yOiAjZWJlYmViO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX3llYXIgaW5wdXQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNWY1ZjtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci0tZGFyayAubW9udGgtcGlja2VyX195ZWFyIGJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTA1MDUwO1xyXG4gICAgY29sb3I6ICNjOWM5Yzk7XHJcbiAgICBib3JkZXItY29sb3I6ICMxZTFlMWU7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9feWVhciBidXR0b246aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX3llYXIgYnV0dG9uOmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9fbW9udGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJmMmYzMDtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNDUsIDI0NSwgMjQ1LCAwLjE1KTtcclxuICAgIGNvbG9yOiAjYzljOWM5O1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX21vbnRoLnNlbGVjdGVkLFxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX21vbnRoLnNlbGVjdGVkLXJhbmdlLWZpcnN0LFxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX21vbnRoLnNlbGVjdGVkLXJhbmdlLXNlY29uZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTA1MDUwO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCAjNTA1MDUwLCAwcHggMnB4IDVweCAjNTA1MDUwO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3JkZXItY29sb3I6ICMxZDFiMWI7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQtcmFuZ2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYzNjM2MztcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci0tZGFyayAubW9udGgtcGlja2VyX19tb250aDpob3ZlciB7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX21vbnRoLmluYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjNmM2Y7XHJcbiAgICBjb2xvcjogIzhhOGE4YTtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5tb250aC1waWNrZXJfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuPC9zdHlsZT5cclxuIiwiPHRlbXBsYXRlPlxyXG4gICAgPGRpdiB2LWNsaWNrLW91dHNpZGU9XCJoaWRlXCIgY2xhc3M9XCJtb250aC1waWNrZXItaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgIHYtbW9kZWw9XCJzZWxlY3RlZERhdGVcIlxyXG4gICAgICAgICAgICBjbGFzcz1cIm1vbnRoLXBpY2tlci1pbnB1dFwiXHJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICByZWFkb25seVxyXG4gICAgICAgICAgICBAY2xpY2s9XCJzaG93TW9udGhQaWNrZXIoKVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8bW9udGgtcGlja2VyXHJcbiAgICAgICAgICAgIHYtc2hvdz1cIm1vbnRoUGlja2VyVmlzaWJsZVwiXHJcbiAgICAgICAgICAgIDpkZWZhdWx0LXllYXI9XCJkZWZhdWx0WWVhclwiXHJcbiAgICAgICAgICAgIDpkZWZhdWx0LW1vbnRoPVwiZGVmYXVsdE1vbnRoXCJcclxuICAgICAgICAgICAgOmxhbmc9XCJsYW5nXCJcclxuICAgICAgICAgICAgOm1vbnRocz1cIm1vbnRoc1wiXHJcbiAgICAgICAgICAgIDpuby1kZWZhdWx0PVwibm9EZWZhdWx0XCJcclxuICAgICAgICAgICAgOnNob3cteWVhcj1cInNob3dZZWFyXCJcclxuICAgICAgICAgICAgOmhpZ2hsaWdodC1leGFjdC1kYXRlPVwiaGlnaGxpZ2h0RXhhY3REYXRlXCJcclxuICAgICAgICAgICAgOmNsZWFyYWJsZT1cImNsZWFyYWJsZVwiXHJcbiAgICAgICAgICAgIDp2YXJpYW50PVwidmFyaWFudFwiXHJcbiAgICAgICAgICAgIDplZGl0YWJsZS15ZWFyPVwiZWRpdGFibGVZZWFyXCJcclxuICAgICAgICAgICAgOm1heC1kYXRlPVwibWF4RGF0ZVwiXHJcbiAgICAgICAgICAgIDptaW4tZGF0ZT1cIm1pbkRhdGVcIlxyXG4gICAgICAgICAgICA6eWVhci1vbmx5PVwieWVhck9ubHlcIlxyXG4gICAgICAgICAgICA6cmFuZ2U9XCJyYW5nZVwiXHJcbiAgICAgICAgICAgIEBpbnB1dD1cInBvcHVsYXRlSW5wdXRcIlxyXG4gICAgICAgICAgICBAY2hhbmdlPVwidXBkYXRlRGF0ZVwiXHJcbiAgICAgICAgLz5cclxuICAgIDwvZGl2PlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHNjcmlwdD5cclxuaW1wb3J0IE1vbnRoUGlja2VyIGZyb20gJy4vTW9udGhQaWNrZXIudnVlJ1xyXG5pbXBvcnQgbW9udGhQaWNrZXIgZnJvbSAnLi9tb250aC1waWNrZXInXHJcblxyXG5leHBvcnQgZGVmYXVsdCB7XHJcbiAgICBuYW1lOiAnTW9udGhQaWNrZXJJbnB1dCcsXHJcbiAgICBkaXJlY3RpdmVzOiB7XHJcbiAgICAgICAgY2xpY2tPdXRzaWRlOiB7XHJcbiAgICAgICAgICAgIGJpbmQ6IGZ1bmN0aW9uIChlbCwgYmluZGluZywgdm5vZGUpIHtcclxuICAgICAgICAgICAgICAgIGVsLmV2ZW50ID0gZnVuY3Rpb24gKGV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCEoZWwgPT09IGV2ZW50LnRhcmdldCB8fCBlbC5jb250YWlucyhldmVudC50YXJnZXQpKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2bm9kZS5jb250ZXh0W2JpbmRpbmcuZXhwcmVzc2lvbl0oZXZlbnQpXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGVsLmV2ZW50KVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB1bmJpbmQ6IGZ1bmN0aW9uIChlbCkge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGVsLmV2ZW50KVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBiZWZvcmVNb3VudDogKGVsLCBiaW5kaW5nKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBlbC5jbGlja091dHNpZGVFdmVudCA9IChldmVudCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghKGVsID09IGV2ZW50LnRhcmdldCB8fCBlbC5jb250YWlucyhldmVudC50YXJnZXQpKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiaW5kaW5nLnZhbHVlKClcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGVsLmNsaWNrT3V0c2lkZUV2ZW50KVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB1bm1vdW50ZWQ6IChlbCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBlbC5jbGlja091dHNpZGVFdmVudClcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIGNvbXBvbmVudHM6IHtcclxuICAgICAgICBNb250aFBpY2tlcixcclxuICAgIH0sXHJcbiAgICBtaXhpbnM6IFttb250aFBpY2tlcl0sXHJcbiAgICBwcm9wczoge1xyXG4gICAgICAgIHBsYWNlaG9sZGVyOiB7XHJcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgICAgICAgZGVmYXVsdDogbnVsbCxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIGVtaXRzOiBbJ2NoYW5nZScsICdpbnB1dCddLFxyXG4gICAgZGF0YSgpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBtb250aFBpY2tlclZpc2libGU6IGZhbHNlLFxyXG4gICAgICAgICAgICBzZWxlY3RlZERhdGU6IG51bGwsXHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuICAgIHdhdGNoOiB7XHJcbiAgICAgICAgZGVmYXVsdFllYXI6IHtcclxuICAgICAgICAgICAgaW1tZWRpYXRlOiB0cnVlLFxyXG4gICAgICAgICAgICBoYW5kbGVyKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXZhbHVlIHx8ICF0aGlzLmlucHV0UHJlRmlsbGVkKSByZXR1cm5cclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdGhpcy5kYXRlRm9ybWF0XHJcbiAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoJyVuJywgdGhpcy5tb250aHNCeUxhbmdbdGhpcy5kZWZhdWx0TW9udGggLSAxXSlcclxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgnJVknLCB2YWx1ZSlcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIGRlZmF1bHRNb250aDoge1xyXG4gICAgICAgICAgICBpbW1lZGlhdGU6IHRydWUsXHJcbiAgICAgICAgICAgIGhhbmRsZXIodmFsdWUpIHtcclxuICAgICAgICAgICAgICAgIGlmICghdmFsdWUgfHwgIXRoaXMuaW5wdXRQcmVGaWxsZWQpIHJldHVyblxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLmRhdGVGb3JtYXRcclxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgnJW4nLCB0aGlzLm1vbnRoc0J5TGFuZ1t2YWx1ZSAtIDFdKVxyXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKCclWScsIHRoaXMuZGVmYXVsdFllYXIpXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICBtZXRob2RzOiB7XHJcbiAgICAgICAgcG9wdWxhdGVJbnB1dChkYXRlKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnJhbmdlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IGAke2RhdGUucmFuZ2VGcm9tTW9udGh9IC0gJHtkYXRlLnJhbmdlVG9Nb250aH0sICR7ZGF0ZS55ZWFyfWBcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdGhpcy5kYXRlRm9ybWF0XHJcbiAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoJyVuJywgZGF0ZS5tb250aClcclxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgnJVknLCBkYXRlLnllYXIpXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMubW9udGhQaWNrZXJWaXNpYmxlID0gZmFsc2VcclxuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCBkYXRlKVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgc2hvd01vbnRoUGlja2VyKCkge1xyXG4gICAgICAgICAgICB0aGlzLm1vbnRoUGlja2VyVmlzaWJsZSA9ICF0aGlzLm1vbnRoUGlja2VyVmlzaWJsZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgaGlkZSgpIHtcclxuICAgICAgICAgICAgdGhpcy5tb250aFBpY2tlclZpc2libGUgPSBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdXBkYXRlRGF0ZShkYXRlKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnJhbmdlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IGAke2RhdGUucmFuZ2VGcm9tTW9udGh9IC0gJHtkYXRlLnJhbmdlVG9Nb250aH0sICR7ZGF0ZS55ZWFyfWBcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdGhpcy5kYXRlRm9ybWF0XHJcbiAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoJyVuJywgZGF0ZS5tb250aClcclxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgnJVknLCBkYXRlLnllYXIpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgZGF0ZSlcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxufVxyXG48L3NjcmlwdD5cclxuPHN0eWxlIHNjb3BlZD5cclxuLm1vbnRoLXBpY2tlci1pbnB1dC1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDE4MHB4O1xyXG4gICAgbWluLXdpZHRoOiAxNDBweDtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci1pbnB1dCB7XHJcbiAgICBwYWRkaW5nOiAxZW0gMS41ZW07XHJcbiAgICBmb250LXNpemU6IDAuODVlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItaW5wdXQ6Zm9jdXMge1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9fY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMy41ZW07XHJcbn1cclxuPC9zdHlsZT5cclxuIiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJhdXRoLW1hc2sgcG9zaXRpb24tZml4ZWQgdnctMTAwIHZoLTEwMFwiPlxuICAgICAgICA8Yi1yb3cgbm8tZ3V0dGVycyBjbGFzcz1cImp1c3RpZnktY29udGVudC1jZW50ZXIgdnctMTAwIHZoLTEwMFwiPlxuICAgICAgICAgICAgPGItY29sIHNtPVwiNlwiIGNsYXNzPVwicHgtNSBhbGlnbi1zZWxmLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxmb3JtXG4gICAgICAgICAgICAgICAgICAgIEBzdWJtaXQucHJldmVudD1cInJlYWR5XCJcbiAgICAgICAgICAgICAgICAgICAgdi1pZj1cInJlc3BvbnNlLnN0YXR1cyAhPSAyMDBcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxiLWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Yi1mb3JtLWlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdi1tb2RlbD1cImZvcm0uZW1haWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj1cImZvcm1FbWFpbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImVtYWlsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInlvdXJAZW1haWwuY29tXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYi1mb3JtLWlucHV0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0LWVycm9yIDplcnJvcnM9XCJlcnJvci5lbWFpbFwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvYi1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgICAgICAgICA8Yi1idXR0b24gYmxvY2sgY2xhc3M9XCJidG4tdGhlbWVcIiBAY2xpY2s9XCJyZWFkeVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAg44Ot44Kw44Kk44OzXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGVtcGxhdGUgdi1pZj1cImNvbmZpZy5BUFBfRU5BQkxFX1JFR0lTVEVSXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIOeZu+mMslxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9iLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgICAgICAgICAgPGZvcm1cbiAgICAgICAgICAgICAgICAgICAgQHN1Ym1pdC5wcmV2ZW50PVwibG9naW5cIlxuICAgICAgICAgICAgICAgICAgICB2LWlmPVwicmVzcG9uc2Uuc3RhdHVzID09IDIwMFwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGItZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPuODoeODvOODq+OBp+WxiuOBhOOBn+iqjeiovOOCs+ODvOODiTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxiLWZvcm0taW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwiZm9ybS5vbmV0aW1lX3Bhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9XCJmb3JtT25ldGltZVBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCIxMjM0NTZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlucHV0PVwibG9naW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYi1mb3JtLWlucHV0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0LWVycm9yIDplcnJvcnM9XCJlcnJvci5vbmV0aW1lX3Bhc3N3b3JkXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9iLWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgIDxiLWxpbmsgQGNsaWNrPVwic3RlcDFcIj7lho3pgIHkv6E8L2ItbGluaz5cbiAgICAgICAgICAgICAgICA8L2Zvcm0+XG5cbiAgICAgICAgICAgICAgICA8cFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtY2VudGVyIG15LTVcIlxuICAgICAgICAgICAgICAgICAgICB2LWlmPVwiISBjb25maWcuQVBQX0VOQUJMRV9SRUdJU1RFUlwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAg44G+44Gg55m76Yyy44GX44Gm44GE44Gq44GE5aC05ZCI44CBPGEgaHJlZj1cIi9cIj7jgZPjgaHjgok8L2E+44GL44KJ55Sz6L6844GE44Gf44Gg44GR44G+44GZ44CCXG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9iLWNvbD5cbiAgICAgICAgPC9iLXJvdz5cbiAgICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSAndnVleCdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICB9LFxuICAgIGNvbXB1dGVkOiB7XG4gICAgICAgIC4uLm1hcEdldHRlcnMoW1xuICAgICAgICAgICAgJ2F1dGhfdG9rZW4nLFxuICAgICAgICAgICAgJ3RyYW5zJyxcbiAgICAgICAgICAgICdjb25maWcnLFxuICAgICAgICBdKVxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGZvcm06IHtcbiAgICAgICAgICAgICAgICBlbWFpbDogbnVsbCxcbiAgICAgICAgICAgICAgICBvbmV0aW1lX3Bhc3N3b3JkOiBudWxsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlc3BvbnNlOiB7fSxcbiAgICAgICAgICAgIGVycm9yOiB7fSxcbiAgICAgICAgfVxuICAgIH0sXG4gICAgbW91bnRlZCgpIHtcbiAgICAgICAgdGhpcy5zdGVwMSgpXG4gICAgfSxcbiAgICBtZXRob2RzOiB7XG4gICAgICAgIHJlYWR5ICgpIHtcbiAgICAgICAgICAgIHRoaXMucmVzcG9uc2UgPSBPYmplY3QuYXNzaWduKHt9KVxuICAgICAgICAgICAgdGhpcy4kc3RvcmVcbiAgICAgICAgICAgICAgICAuZGlzcGF0Y2goJ2F1dGgvcmVhZHknLCBPYmplY3QuYXNzaWduKHRoaXMuZm9ybSwgeyBvbmV0aW1lX3Bhc3N3b3JkX3R5cGU6ICdsb2dpbicsIH0pKVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3BvbnNlID0gT2JqZWN0LmFzc2lnbih7fSwgcmVzcG9uc2UpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RlcDIoKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9yID0gZXJyb3JcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBsb2dpbiAoKSB7XG4gICAgICAgICAgICBpZiAoKHRoaXMuZm9ybS5vbmV0aW1lX3Bhc3N3b3JkIHx8ICcnKS5sZW5ndGggIT0gNikge1xuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy4kc3RvcmVcbiAgICAgICAgICAgICAgICAuZGlzcGF0Y2goJ2F1dGgvbG9naW4nLCB0aGlzLmZvcm0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RlcDEoKVxuICAgICAgICAgICAgICAgICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnYXBwL2RhdGEnKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9yID0gZXJyb3JcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBzdGVwMSAoKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0uZW1haWwgPSBudWxsXG4gICAgICAgICAgICB0aGlzLmZvcm0ub25ldGltZV9wYXNzd29yZCA9IG51bGxcblxuICAgICAgICAgICAgdGhpcy5yZXNwb25zZSA9IE9iamVjdC5hc3NpZ24oe30pXG4gICAgICAgICAgICB0aGlzLmVycm9yID0gT2JqZWN0LmFzc2lnbih7fSlcblxuICAgICAgICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuJHJlZnMuZm9ybUVtYWlsLmZvY3VzKClcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0sXG4gICAgICAgIHN0ZXAyICgpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5vbmV0aW1lX3Bhc3N3b3JkID0gbnVsbFxuXG4gICAgICAgICAgICB0aGlzLmVycm9yID0gT2JqZWN0LmFzc2lnbih7fSlcblxuICAgICAgICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuJHJlZnMuZm9ybU9uZXRpbWVQYXNzd29yZC5mb2N1cygpXG4gICAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLmF1dGgtbWFzayB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbjwvc3R5bGU+XG4iLCI8dGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImxvYWQtbWFzayBwb3NpdGlvbi1maXhlZCB2dy0xMDAgdmgtMTAwXCI+XG4gICAgICAgIDxiLXJvdyBuby1ndXR0ZXJzIGNsYXNzPVwianVzdGlmeS1jb250ZW50LWNlbnRlciB2dy0xMDAgdmgtMTAwXCI+XG4gICAgICAgICAgICA8Yi1jb2wgc209XCI2XCIgY2xhc3M9XCJweC01IGFsaWduLXNlbGYtY2VudGVyIHRleHQtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGItaW1nIHNyYz1cIi9pbWFnZXMvbG9hZC5naWZcIj48L2ItaW1nPlxuICAgICAgICAgICAgPC9iLWNvbD5cbiAgICAgICAgPC9iLXJvdz5cbiAgICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSAndnVleCdcblxuZXhwb3J0IGRlZmF1bHQge1xuICAgIGNvbXBvbmVudHM6IHtcbiAgICB9LFxuICAgIGNvbXB1dGVkOiB7XG4gICAgICAgIC4uLm1hcEdldHRlcnMoW1xuICAgICAgICBdKVxuICAgIH0sXG4gICAgZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgbW91bnRlZCgpIHtcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi5sb2FkLW1hc2sge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAzMDAwO1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjUpO1xufVxuPC9zdHlsZT5cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4ubm90aWZpY2F0aW9uLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDFlbTtcbi8vICAgIHdpZHRoOiA1MCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB6LWluZGV4OiAyMDAwO1xufVxuLm5vdGlmaWNhdGlvbi13cmFwcGVyIC5hbGVydCB7XG4vLyAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMXJlbTtcbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/