@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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2FwcC5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBOzs7OztFQ0tFO0FDTEY7RUFHSSxlQUFjO0VBQWQsaUJBQWM7RUFBZCxpQkFBYztFQUFkLGVBQWM7RUFBZCxjQUFjO0VBQWQsaUJBQWM7RUFBZCxpQkFBYztFQUFkLGdCQUFjO0VBQWQsZUFBYztFQUFkLGVBQWM7RUFBZCxhQUFjO0VBQWQsZUFBYztFQUFkLG9CQUFjO0VBSWQsa0JBQWM7RUFBZCxvQkFBYztFQUFkLGtCQUFjO0VBQWQsZUFBYztFQUFkLGtCQUFjO0VBQWQsaUJBQWM7RUFBZCxnQkFBYztFQUFkLGVBQWM7RUFJZCxrQkFBaUM7RUFBakMsc0JBQWlDO0VBQWpDLHNCQUFpQztFQUFqQyxzQkFBaUM7RUFBakMsdUJBQWlDO0VBS25DLGtPQUF5QjtFQUN6Qiw2R0FBd0I7QURrQjFCOztBRWpCQTs7O0VBR0Usc0JBQXNCO0FGb0J4Qjs7QUVqQkE7RUFDRSx1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLDhCQUE4QjtFQUM5Qiw2Q0NYYTtBSCtCZjs7QUVkQTtFQUNFLGNBQWM7QUZpQmhCOztBRVBBO0VBQ0UsU0FBUztFQUNULHFOQ3FPb087RUNySmhPLGVBdENZO0VGeENoQixnQkM4TytCO0VEN08vQixnQkNrUCtCO0VEalAvQixjQ25DZ0I7RURvQ2hCLGdCQUFnQjtFQUNoQixzQkM5Q2E7QUh3RGY7O0FBRUE7RUVDRSxxQkFBcUI7QUZDdkI7O0FFUUE7RUFDRSx1QkFBdUI7RUFDdkIsU0FBUztFQUNULGlCQUFpQjtBRkxuQjs7QUVrQkE7RUFDRSxhQUFhO0VBQ2IscUJDZ051QztBSC9OekM7O0FFc0JBO0VBQ0UsYUFBYTtFQUNiLG1CQ29GOEI7QUh2R2hDOztBRThCQTs7RUFFRSwwQkFBMEI7RUFDMUIseUNBQWlDO0VBQWpDLGlDQUFpQztFQUNqQyxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNDQUE4QjtFQUE5Qiw4QkFBOEI7QUYzQmhDOztBRThCQTtFQUNFLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsb0JBQW9CO0FGM0J0Qjs7QUU4QkE7OztFQUdFLGFBQWE7RUFDYixtQkFBbUI7QUYzQnJCOztBRThCQTs7OztFQUlFLGdCQUFnQjtBRjNCbEI7O0FFOEJBO0VBQ0UsZ0JDaUorQjtBSDVLakM7O0FFOEJBO0VBQ0Usb0JBQW9CO0VBQ3BCLGNBQWM7QUYzQmhCOztBRThCQTtFQUNFLGdCQUFnQjtBRjNCbEI7O0FFOEJBOztFQUVFLG1CQ29Ja0M7QUgvSnBDOztBRThCQTtFRXhGSSxjQUFXO0FKOERmOztBRW1DQTs7RUFFRSxrQkFBa0I7RUVuR2hCLGNBQVc7RUZxR2IsY0FBYztFQUNkLHdCQUF3QjtBRmhDMUI7O0FFbUNBO0VBQU0sY0FBYztBRi9CcEI7O0FFZ0NBO0VBQU0sVUFBVTtBRjVCaEI7O0FFbUNBO0VBQ0UsY0N2SmU7RUR3SmYscUJDWDRDO0VEWTVDLDZCQUE2QjtBRmhDL0I7O0FLaEpFO0VIbUxFLGNDZDhEO0VEZTlELDBCQ2QrQztBSGpCbkQ7O0FFd0NBO0VBQ0UsY0FBYztFQUNkLHFCQUFxQjtBRnJDdkI7O0FLMUpFO0VIa01FLGNBQWM7RUFDZCxxQkFBcUI7QUZwQ3pCOztBRTZDQTs7OztFQUlFLGlHQ3lEZ0g7RUM3TTlHLGNBQVc7QUoyR2Y7O0FFNkNBO0VBRUUsYUFBYTtFQUViLG1CQUFtQjtFQUVuQixjQUFjO0VBR2QsNkJBQTZCO0FGL0MvQjs7QUV1REE7RUFFRSxnQkFBZ0I7QUZyRGxCOztBRTZEQTtFQUNFLHNCQUFzQjtFQUN0QixrQkFBa0I7QUYxRHBCOztBRTZEQTtFQUdFLGdCQUFnQjtFQUNoQixzQkFBc0I7QUY1RHhCOztBRW9FQTtFQUNFLHlCQUF5QjtBRmpFM0I7O0FFb0VBO0VBQ0Usb0JDNkVrQztFRDVFbEMsdUJDNEVrQztFRDNFbEMsY0N0UWdCO0VEdVFoQixnQkFBZ0I7RUFDaEIsb0JBQW9CO0FGakV0Qjs7QUV3RUE7RUFFRSxtQkFBbUI7RUFDbkIsZ0NBQWdDO0FGdEVsQzs7QUU4RUE7RUFFRSxxQkFBcUI7RUFDckIscUJDMkoyQztBSHZPN0M7O0FFa0ZBO0VBRUUsZ0JBQWdCO0FGaEZsQjs7QUV3RkE7RUFDRSxVQUFVO0FGckZaOztBRXdGQTs7Ozs7RUFLRSxTQUFTO0VBQ1Qsb0JBQW9CO0VFNVBsQixrQkFBVztFRjhQYixvQkFBb0I7QUZyRnRCOztBRXdGQTs7RUFFRSxpQkFBaUI7QUZyRm5COztBRXdGQTs7RUFFRSxvQkFBb0I7QUZyRnRCOztBQUVBO0VFMEZFLGVBQWU7QUZ4RmpCOztBRThGQTtFQUNFLGlCQUFpQjtBRjNGbkI7O0FFa0dBOzs7O0VBSUUsMEJBQTBCO0FGL0Y1Qjs7QUVvR0U7Ozs7RUFLSSxlQUFlO0FGbEdyQjs7QUV3R0E7Ozs7RUFJRSxVQUFVO0VBQ1Ysa0JBQWtCO0FGckdwQjs7QUV3R0E7O0VBRUUsc0JBQXNCO0VBQ3RCLFVBQVU7QUZyR1o7O0FFeUdBO0VBQ0UsY0FBYztFQUVkLGdCQUFnQjtBRnZHbEI7O0FFMEdBO0VBTUUsWUFBWTtFQUVaLFVBQVU7RUFDVixTQUFTO0VBQ1QsU0FBUztBRjdHWDs7QUVrSEE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLGVBQWU7RUFDZixVQUFVO0VBQ1Ysb0JBQW9CO0VFblNoQixpQkF0Q1k7RUYyVWhCLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsbUJBQW1CO0FGL0dyQjs7QUVrSEE7RUFDRSx3QkFBd0I7QUYvRzFCOztBQUVBOztFRW1IRSxZQUFZO0FGaEhkOztBQUVBO0VFc0hFLG9CQUFvQjtFQUNwQix3QkFBd0I7QUZwSDFCOztBQUVBO0VFMEhFLHdCQUF3QjtBRnhIMUI7O0FFZ0lBO0VBQ0UsYUFBYTtFQUNiLDBCQUEwQjtBRjdINUI7O0FFb0lBO0VBQ0UscUJBQXFCO0FGakl2Qjs7QUVvSUE7RUFDRSxrQkFBa0I7RUFDbEIsZUFBZTtBRmpJakI7O0FFb0lBO0VBQ0UsYUFBYTtBRmpJZjs7QUFFQTtFRXFJRSx3QkFBd0I7QUZuSTFCOztBTXpWQTs7RUFFRSxxQkhxU3VDO0VHblN2QyxnQkhxUytCO0VHcFMvQixnQkhxUytCO0FIc0RqQzs7QU12VkE7RUZnSE0saUJBdENZO0FKaVJsQjs7QU0xVkE7RUYrR00sZUF0Q1k7QUpxUmxCOztBTTdWQTtFRjhHTSxrQkF0Q1k7QUp5UmxCOztBTWhXQTtFRjZHTSxpQkF0Q1k7QUo2UmxCOztBTW5XQTtFRjRHTSxrQkF0Q1k7QUppU2xCOztBTXRXQTtFRjJHTSxlQXRDWTtBSnFTbEI7O0FNeFdBO0VGeUdNLGtCQXRDWTtFRWpFaEIsZ0JIdVMrQjtBSG9FakM7O0FNdldBO0VGbUdNLGVBdENZO0VFM0RoQixnQkgwUitCO0VHelIvQixnQkhpUitCO0FIeUZqQzs7QU14V0E7RUY4Rk0saUJBdENZO0VFdERoQixnQkhzUitCO0VHclIvQixnQkg0UStCO0FIK0ZqQzs7QU16V0E7RUZ5Rk0saUJBdENZO0VFakRoQixnQkhrUitCO0VHalIvQixnQkh1UStCO0FIcUdqQzs7QU0xV0E7RUZvRk0saUJBdENZO0VFNUNoQixnQkg4UStCO0VHN1EvQixnQkhrUStCO0FIMkdqQzs7QUVoVkE7RUlwQkUsZ0JIZ0ZXO0VHL0VYLG1CSCtFVztFRzlFWCxTQUFTO0VBQ1Qsd0NIekNhO0FIaVpmOztBTWhXQTs7RUZNSSxjQUFXO0VFSGIsZ0JIME4rQjtBSHlJakM7O0FNaFdBOztFQUVFLGNIa1FnQztFR2pRaEMseUJIMFFtQztBSHlGckM7O0FNM1ZBO0VDL0VFLGVBQWU7RUFDZixnQkFBZ0I7QVA4YWxCOztBTTNWQTtFQ3BGRSxlQUFlO0VBQ2YsZ0JBQWdCO0FQbWJsQjs7QU03VkE7RUFDRSxxQkFBcUI7QU5nV3ZCOztBTWpXQTtFQUlJLG9CSG9QK0I7QUg2R25DOztBTXZWQTtFRmpDSSxjQUFXO0VFbUNiLHlCQUF5QjtBTjBWM0I7O0FNdFZBO0VBQ0UsbUJIdUJXO0VDUlAsa0JBdENZO0FKaVhsQjs7QU10VkE7RUFDRSxjQUFjO0VGN0NaLGNBQVc7RUUrQ2IsY0gxR2dCO0FIbWNsQjs7QU01VkE7RUFNSSxxQkFBcUI7QU4wVnpCOztBUTdjQTtFQ0lFLGVBQWU7RUFHZixZQUFZO0FUMmNkOztBUTVjQTtFQUNFLGdCTG1nQ3dDO0VLbGdDeEMsc0JMUmE7RUtTYix5QkxOZ0I7RU9RZCxzQlA2TmdDO0VNcE9sQyxlQUFlO0VBR2YsWUFBWTtBVG9kZDs7QVF0Y0E7RUFFRSxxQkFBcUI7QVJ3Y3ZCOztBUXJjQTtFQUNFLHFCQUEwQjtFQUMxQixjQUFjO0FSd2NoQjs7QVFyY0E7RUprQ0ksY0FBVztFSWhDYixjTDNCZ0I7QUhtZWxCOztBVy9lQTtFUHVFSSxnQkFBVztFT3JFYixjUm1DZTtFUWxDZixxQkFBcUI7QVhrZnZCOztBVy9lRTtFQUNFLGNBQWM7QVhrZmxCOztBVzdlQTtFQUNFLHNCUnVsQ3VDO0VDN2hDckMsZ0JBQVc7RU94RGIsV1JUYTtFUVViLHlCUkRnQjtFT0VkLHFCUCtOK0I7QUhpUm5DOztBV3JmQTtFQVNJLFVBQVU7RVBrRFYsZUFBVztFT2hEWCxnQlJ3UTZCO0FId09qQzs7QUV4U0E7RVNqTUUsY0FBYztFUHlDWixnQkFBVztFT3ZDYixjUmpCZ0I7QUg4ZmxCOztBV2hmQTtFUDBDSSxrQkFBVztFT2xDWCxjQUFjO0VBQ2Qsa0JBQWtCO0FYNmV0Qjs7QVd4ZUE7RUFDRSxpQlI4akN1QztFUTdqQ3ZDLGtCQUFrQjtBWDJlcEI7O0FZbmhCRTs7Ozs7O0VDREEsV0FBVztFQUNYLG1CQUEwQjtFQUMxQixrQkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBYjZoQm5COztBYzFlSTtFRnpDRTtJQUNFLGdCVCtMRztFSHdWVDtBQUNGOztBY2hmSTtFRnpDRTtJQUNFLGdCVGdNRztFSDZWVDtBQUNGOztBY3RmSTtFRnpDRTtJQUNFLGdCVGlNRztFSGtXVDtBQUNGOztBYzVmSTtFRnpDRTtJQUNFLGlCVGtNSTtFSHVXVjtBQUNGOztBWTlnQkU7RUNuQ0EsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBMEI7RUFDMUIsa0JBQXlCO0FicWpCM0I7O0FZL2dCRTtFQUNFLGVBQWU7RUFDZixjQUFjO0Faa2hCbEI7O0FZcGhCRTs7RUFNSSxnQkFBZ0I7RUFDaEIsZUFBZTtBWm1oQnJCOztBZXprQkU7Ozs7OztFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsbUJBQTBCO0VBQzFCLGtCQUF5QjtBZmlsQjdCOztBZTNqQk07RUFDRSxhQUFhO0VBQ2IsWUFBWTtFQUNaLGVBQWU7QWY4akJ2Qjs7QWV6akJVO0VGd0JOLGNBQXVCO0VBQ3ZCLGVBQXdCO0FicWlCNUI7O0FlOWpCVTtFRndCTixhQUF1QjtFQUN2QixjQUF3QjtBYjBpQjVCOztBZW5rQlU7RUZ3Qk4sb0JBQXVCO0VBQ3ZCLHFCQUF3QjtBYitpQjVCOztBZXhrQlU7RUZ3Qk4sYUFBdUI7RUFDdkIsY0FBd0I7QWJvakI1Qjs7QWU3a0JVO0VGd0JOLGFBQXVCO0VBQ3ZCLGNBQXdCO0FieWpCNUI7O0FlbGxCVTtFRndCTixvQkFBdUI7RUFDdkIscUJBQXdCO0FiOGpCNUI7O0FlamxCTTtFRkNKLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZUFBZTtBYm9sQmpCOztBZWpsQlU7RUZiUixtQkFBc0M7RUFJdEMsb0JBQXVDO0FiK2xCekM7O0FldGxCVTtFRmJSLG9CQUFzQztFQUl0QyxxQkFBdUM7QWJvbUJ6Qzs7QWUzbEJVO0VGYlIsYUFBc0M7RUFJdEMsY0FBdUM7QWJ5bUJ6Qzs7QWVobUJVO0VGYlIsb0JBQXNDO0VBSXRDLHFCQUF1QztBYjhtQnpDOztBZXJtQlU7RUZiUixvQkFBc0M7RUFJdEMscUJBQXVDO0FibW5CekM7O0FlMW1CVTtFRmJSLGFBQXNDO0VBSXRDLGNBQXVDO0Fid25CekM7O0FlL21CVTtFRmJSLG9CQUFzQztFQUl0QyxxQkFBdUM7QWI2bkJ6Qzs7QWVwbkJVO0VGYlIsb0JBQXNDO0VBSXRDLHFCQUF1QztBYmtvQnpDOztBZXpuQlU7RUZiUixhQUFzQztFQUl0QyxjQUF1QztBYnVvQnpDOztBZTluQlU7RUZiUixvQkFBc0M7RUFJdEMscUJBQXVDO0FiNG9CekM7O0Flbm9CVTtFRmJSLG9CQUFzQztFQUl0QyxxQkFBdUM7QWJpcEJ6Qzs7QWV4b0JVO0VGYlIsY0FBc0M7RUFJdEMsZUFBdUM7QWJzcEJ6Qzs7QWV2b0JNO0VBQXdCLFNBQVM7QWYyb0J2Qzs7QWV6b0JNO0VBQXVCLFNabUtHO0FIMGVoQzs7QWUxb0JRO0VBQXdCLFFBRFo7QWYrb0JwQjs7QWU5b0JRO0VBQXdCLFFBRFo7QWZtcEJwQjs7QWVscEJRO0VBQXdCLFFBRFo7QWZ1cEJwQjs7QWV0cEJRO0VBQXdCLFFBRFo7QWYycEJwQjs7QWUxcEJRO0VBQXdCLFFBRFo7QWYrcEJwQjs7QWU5cEJRO0VBQXdCLFFBRFo7QWZtcUJwQjs7QWVscUJRO0VBQXdCLFFBRFo7QWZ1cUJwQjs7QWV0cUJRO0VBQXdCLFFBRFo7QWYycUJwQjs7QWUxcUJRO0VBQXdCLFFBRFo7QWYrcUJwQjs7QWU5cUJRO0VBQXdCLFFBRFo7QWZtckJwQjs7QWVsckJRO0VBQXdCLFNBRFo7QWZ1ckJwQjs7QWV0ckJRO0VBQXdCLFNBRFo7QWYyckJwQjs7QWUxckJRO0VBQXdCLFNBRFo7QWYrckJwQjs7QWV2ckJZO0VGaEJWLHNCQUE4QztBYjJzQmhEOztBZTNyQlk7RUZoQlYsdUJBQThDO0FiK3NCaEQ7O0FlL3JCWTtFRmhCVixnQkFBOEM7QWJtdEJoRDs7QWVuc0JZO0VGaEJWLHVCQUE4QztBYnV0QmhEOztBZXZzQlk7RUZoQlYsdUJBQThDO0FiMnRCaEQ7O0FlM3NCWTtFRmhCVixnQkFBOEM7QWIrdEJoRDs7QWUvc0JZO0VGaEJWLHVCQUE4QztBYm11QmhEOztBZW50Qlk7RUZoQlYsdUJBQThDO0FidXVCaEQ7O0FldnRCWTtFRmhCVixnQkFBOEM7QWIydUJoRDs7QWUzdEJZO0VGaEJWLHVCQUE4QztBYit1QmhEOztBZS90Qlk7RUZoQlYsdUJBQThDO0FibXZCaEQ7O0FjOXVCSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFZjZ3QnJCO0VleHdCUTtJRndCTixjQUF1QjtJQUN2QixlQUF3QjtFYm12QjFCO0VlNXdCUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnV2QjFCO0VlaHhCUTtJRndCTixvQkFBdUI7SUFDdkIscUJBQXdCO0ViMnZCMUI7RWVweEJRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0ViK3ZCMUI7RWV4eEJRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VibXdCMUI7RWU1eEJRO0lGd0JOLG9CQUF1QjtJQUN2QixxQkFBd0I7RWJ1d0IxQjtFZTF4Qkk7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWI0eEJmO0VlenhCUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RWJzeUJ2QztFZTd4QlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViMHlCdkM7RWVqeUJRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWI4eUJ2QztFZXJ5QlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0Via3pCdkM7RWV6eUJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnN6QnZDO0VlN3lCUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0ViMHpCdkM7RWVqekJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYjh6QnZDO0VlcnpCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJrMEJ2QztFZXp6QlE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYnMwQnZDO0VlN3pCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWIwMEJ2QztFZWowQlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViODBCdkM7RWVyMEJRO0lGYlIsY0FBc0M7SUFJdEMsZUFBdUM7RWJrMUJ2QztFZW4wQkk7SUFBd0IsU0FBUztFZnMwQnJDO0VlcDBCSTtJQUF1QixTWm1LRztFSG9xQjlCO0VlcDBCTTtJQUF3QixRQURaO0VmdzBCbEI7RWV2MEJNO0lBQXdCLFFBRFo7RWYyMEJsQjtFZTEwQk07SUFBd0IsUUFEWjtFZjgwQmxCO0VlNzBCTTtJQUF3QixRQURaO0VmaTFCbEI7RWVoMUJNO0lBQXdCLFFBRFo7RWZvMUJsQjtFZW4xQk07SUFBd0IsUUFEWjtFZnUxQmxCO0VldDFCTTtJQUF3QixRQURaO0VmMDFCbEI7RWV6MUJNO0lBQXdCLFFBRFo7RWY2MUJsQjtFZTUxQk07SUFBd0IsUUFEWjtFZmcyQmxCO0VlLzFCTTtJQUF3QixRQURaO0VmbTJCbEI7RWVsMkJNO0lBQXdCLFNBRFo7RWZzMkJsQjtFZXIyQk07SUFBd0IsU0FEWjtFZnkyQmxCO0VleDJCTTtJQUF3QixTQURaO0VmNDJCbEI7RWVwMkJVO0lGaEJWLGNBQTRCO0VidTNCNUI7RWV2MkJVO0lGaEJWLHNCQUE4QztFYjAzQjlDO0VlMTJCVTtJRmhCVix1QkFBOEM7RWI2M0I5QztFZTcyQlU7SUZoQlYsZ0JBQThDO0ViZzRCOUM7RWVoM0JVO0lGaEJWLHVCQUE4QztFYm00QjlDO0VlbjNCVTtJRmhCVix1QkFBOEM7RWJzNEI5QztFZXQzQlU7SUZoQlYsZ0JBQThDO0VieTRCOUM7RWV6M0JVO0lGaEJWLHVCQUE4QztFYjQ0QjlDO0VlNTNCVTtJRmhCVix1QkFBOEM7RWIrNEI5QztFZS8zQlU7SUZoQlYsZ0JBQThDO0ViazVCOUM7RWVsNEJVO0lGaEJWLHVCQUE4QztFYnE1QjlDO0VlcjRCVTtJRmhCVix1QkFBOEM7RWJ3NUI5QztBQUNGOztBY3A1Qkk7RUMzQkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RWZtN0JyQjtFZTk2QlE7SUZ3Qk4sY0FBdUI7SUFDdkIsZUFBd0I7RWJ5NUIxQjtFZWw3QlE7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RWI2NUIxQjtFZXQ3QlE7SUZ3Qk4sb0JBQXVCO0lBQ3ZCLHFCQUF3QjtFYmk2QjFCO0VlMTdCUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnE2QjFCO0VlOTdCUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnk2QjFCO0VlbDhCUTtJRndCTixvQkFBdUI7SUFDdkIscUJBQXdCO0ViNjZCMUI7RWVoOEJJO0lGQ0osY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0ViazhCZjtFZS83QlE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0ViNDhCdkM7RWVuOEJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYmc5QnZDO0VldjhCUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0VibzlCdkM7RWUzOEJRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnc5QnZDO0VlLzhCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWI0OUJ2QztFZW45QlE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYmcrQnZDO0VldjlCUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJvK0J2QztFZTM5QlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0VidytCdkM7RWUvOUJRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWI0K0J2QztFZW4rQlE7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViZy9CdkM7RWV2K0JRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYm8vQnZDO0VlMytCUTtJRmJSLGNBQXNDO0lBSXRDLGVBQXVDO0Vidy9CdkM7RWV6K0JJO0lBQXdCLFNBQVM7RWY0K0JyQztFZTErQkk7SUFBdUIsU1ptS0c7RUgwMEI5QjtFZTErQk07SUFBd0IsUUFEWjtFZjgrQmxCO0VlNytCTTtJQUF3QixRQURaO0VmaS9CbEI7RWVoL0JNO0lBQXdCLFFBRFo7RWZvL0JsQjtFZW4vQk07SUFBd0IsUUFEWjtFZnUvQmxCO0VldC9CTTtJQUF3QixRQURaO0VmMC9CbEI7RWV6L0JNO0lBQXdCLFFBRFo7RWY2L0JsQjtFZTUvQk07SUFBd0IsUUFEWjtFZmdnQ2xCO0VlLy9CTTtJQUF3QixRQURaO0VmbWdDbEI7RWVsZ0NNO0lBQXdCLFFBRFo7RWZzZ0NsQjtFZXJnQ007SUFBd0IsUUFEWjtFZnlnQ2xCO0VleGdDTTtJQUF3QixTQURaO0VmNGdDbEI7RWUzZ0NNO0lBQXdCLFNBRFo7RWYrZ0NsQjtFZTlnQ007SUFBd0IsU0FEWjtFZmtoQ2xCO0VlMWdDVTtJRmhCVixjQUE0QjtFYjZoQzVCO0VlN2dDVTtJRmhCVixzQkFBOEM7RWJnaUM5QztFZWhoQ1U7SUZoQlYsdUJBQThDO0VibWlDOUM7RWVuaENVO0lGaEJWLGdCQUE4QztFYnNpQzlDO0VldGhDVTtJRmhCVix1QkFBOEM7RWJ5aUM5QztFZXpoQ1U7SUZoQlYsdUJBQThDO0ViNGlDOUM7RWU1aENVO0lGaEJWLGdCQUE4QztFYitpQzlDO0VlL2hDVTtJRmhCVix1QkFBOEM7RWJrakM5QztFZWxpQ1U7SUZoQlYsdUJBQThDO0VicWpDOUM7RWVyaUNVO0lGaEJWLGdCQUE4QztFYndqQzlDO0VleGlDVTtJRmhCVix1QkFBOEM7RWIyakM5QztFZTNpQ1U7SUZoQlYsdUJBQThDO0ViOGpDOUM7QUFDRjs7QWMxakNJO0VDM0JFO0lBQ0UsYUFBYTtJQUNiLFlBQVk7SUFDWixlQUFlO0VmeWxDckI7RWVwbENRO0lGd0JOLGNBQXVCO0lBQ3ZCLGVBQXdCO0ViK2pDMUI7RWV4bENRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VibWtDMUI7RWU1bENRO0lGd0JOLG9CQUF1QjtJQUN2QixxQkFBd0I7RWJ1a0MxQjtFZWhtQ1E7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RWIya0MxQjtFZXBtQ1E7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RWIra0MxQjtFZXhtQ1E7SUZ3Qk4sb0JBQXVCO0lBQ3ZCLHFCQUF3QjtFYm1sQzFCO0VldG1DSTtJRkNKLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFYndtQ2Y7RWVybUNRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFYmtuQ3ZDO0Vlem1DUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJzbkN2QztFZTdtQ1E7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYjBuQ3ZDO0Vlam5DUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWI4bkN2QztFZXJuQ1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0Via29DdkM7RWV6bkNRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWJzb0N2QztFZTduQ1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViMG9DdkM7RWVqb0NRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYjhvQ3ZDO0Vlcm9DUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0Via3BDdkM7RWV6b0NRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnNwQ3ZDO0VlN29DUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWIwcEN2QztFZWpwQ1E7SUZiUixjQUFzQztJQUl0QyxlQUF1QztFYjhwQ3ZDO0VlL29DSTtJQUF3QixTQUFTO0Vma3BDckM7RWVocENJO0lBQXVCLFNabUtHO0VIZy9COUI7RWVocENNO0lBQXdCLFFBRFo7RWZvcENsQjtFZW5wQ007SUFBd0IsUUFEWjtFZnVwQ2xCO0VldHBDTTtJQUF3QixRQURaO0VmMHBDbEI7RWV6cENNO0lBQXdCLFFBRFo7RWY2cENsQjtFZTVwQ007SUFBd0IsUUFEWjtFZmdxQ2xCO0VlL3BDTTtJQUF3QixRQURaO0VmbXFDbEI7RWVscUNNO0lBQXdCLFFBRFo7RWZzcUNsQjtFZXJxQ007SUFBd0IsUUFEWjtFZnlxQ2xCO0VleHFDTTtJQUF3QixRQURaO0VmNHFDbEI7RWUzcUNNO0lBQXdCLFFBRFo7RWYrcUNsQjtFZTlxQ007SUFBd0IsU0FEWjtFZmtyQ2xCO0VlanJDTTtJQUF3QixTQURaO0VmcXJDbEI7RWVwckNNO0lBQXdCLFNBRFo7RWZ3ckNsQjtFZWhyQ1U7SUZoQlYsY0FBNEI7RWJtc0M1QjtFZW5yQ1U7SUZoQlYsc0JBQThDO0Vic3NDOUM7RWV0ckNVO0lGaEJWLHVCQUE4QztFYnlzQzlDO0VlenJDVTtJRmhCVixnQkFBOEM7RWI0c0M5QztFZTVyQ1U7SUZoQlYsdUJBQThDO0ViK3NDOUM7RWUvckNVO0lGaEJWLHVCQUE4QztFYmt0QzlDO0VlbHNDVTtJRmhCVixnQkFBOEM7RWJxdEM5QztFZXJzQ1U7SUZoQlYsdUJBQThDO0Vid3RDOUM7RWV4c0NVO0lGaEJWLHVCQUE4QztFYjJ0QzlDO0VlM3NDVTtJRmhCVixnQkFBOEM7RWI4dEM5QztFZTlzQ1U7SUZoQlYsdUJBQThDO0ViaXVDOUM7RWVqdENVO0lGaEJWLHVCQUE4QztFYm91QzlDO0FBQ0Y7O0FjaHVDSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFZit2Q3JCO0VlMXZDUTtJRndCTixjQUF1QjtJQUN2QixlQUF3QjtFYnF1QzFCO0VlOXZDUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFYnl1QzFCO0VlbHdDUTtJRndCTixvQkFBdUI7SUFDdkIscUJBQXdCO0ViNnVDMUI7RWV0d0NRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0ViaXZDMUI7RWUxd0NRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VicXZDMUI7RWU5d0NRO0lGd0JOLG9CQUF1QjtJQUN2QixxQkFBd0I7RWJ5dkMxQjtFZTV3Q0k7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWI4d0NmO0VlM3dDUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RWJ3eEN2QztFZS93Q1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViNHhDdkM7RWVueENRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RWJneUN2QztFZXZ4Q1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0Vib3lDdkM7RWUzeENRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYnd5Q3ZDO0VlL3hDUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0ViNHlDdkM7RWVueUNRO0lGYlIsb0JBQXNDO0lBSXRDLHFCQUF1QztFYmd6Q3ZDO0VldnlDUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWJvekN2QztFZTN5Q1E7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFYnd6Q3ZDO0VlL3lDUTtJRmJSLG9CQUFzQztJQUl0QyxxQkFBdUM7RWI0ekN2QztFZW56Q1E7SUZiUixvQkFBc0M7SUFJdEMscUJBQXVDO0ViZzBDdkM7RWV2ekNRO0lGYlIsY0FBc0M7SUFJdEMsZUFBdUM7RWJvMEN2QztFZXJ6Q0k7SUFBd0IsU0FBUztFZnd6Q3JDO0VldHpDSTtJQUF1QixTWm1LRztFSHNwQzlCO0VldHpDTTtJQUF3QixRQURaO0VmMHpDbEI7RWV6ekNNO0lBQXdCLFFBRFo7RWY2ekNsQjtFZTV6Q007SUFBd0IsUUFEWjtFZmcwQ2xCO0VlL3pDTTtJQUF3QixRQURaO0VmbTBDbEI7RWVsMENNO0lBQXdCLFFBRFo7RWZzMENsQjtFZXIwQ007SUFBd0IsUUFEWjtFZnkwQ2xCO0VleDBDTTtJQUF3QixRQURaO0VmNDBDbEI7RWUzMENNO0lBQXdCLFFBRFo7RWYrMENsQjtFZTkwQ007SUFBd0IsUUFEWjtFZmsxQ2xCO0VlajFDTTtJQUF3QixRQURaO0VmcTFDbEI7RWVwMUNNO0lBQXdCLFNBRFo7RWZ3MUNsQjtFZXYxQ007SUFBd0IsU0FEWjtFZjIxQ2xCO0VlMTFDTTtJQUF3QixTQURaO0VmODFDbEI7RWV0MUNVO0lGaEJWLGNBQTRCO0VieTJDNUI7RWV6MUNVO0lGaEJWLHNCQUE4QztFYjQyQzlDO0VlNTFDVTtJRmhCVix1QkFBOEM7RWIrMkM5QztFZS8xQ1U7SUZoQlYsZ0JBQThDO0ViazNDOUM7RWVsMkNVO0lGaEJWLHVCQUE4QztFYnEzQzlDO0VlcjJDVTtJRmhCVix1QkFBOEM7RWJ3M0M5QztFZXgyQ1U7SUZoQlYsZ0JBQThDO0ViMjNDOUM7RWUzMkNVO0lGaEJWLHVCQUE4QztFYjgzQzlDO0VlOTJDVTtJRmhCVix1QkFBOEM7RWJpNEM5QztFZWozQ1U7SUZoQlYsZ0JBQThDO0VibzRDOUM7RWVwM0NVO0lGaEJWLHVCQUE4QztFYnU0QzlDO0VldjNDVTtJRmhCVix1QkFBOEM7RWIwNEM5QztBQUNGOztBZ0I5N0NBO0VBQ0UsV0FBVztFQUNYLG1CYmlJVztFYWhJWCxjYlNnQjtBSHc3Q2xCOztBZ0JwOENBOztFQVFJLGdCYmtWZ0M7RWFqVmhDLG1CQUFtQjtFQUNuQiw2QmJKYztBSHE4Q2xCOztBZ0IzOENBO0VBY0ksc0JBQXNCO0VBQ3RCLGdDYlRjO0FIMDhDbEI7O0FnQmg5Q0E7RUFtQkksNkJiYmM7QUg4OENsQjs7QWdCeDdDQTs7RUFHSSxlYjRUK0I7QUg4bkNuQzs7QWdCajdDQTtFQUNFLHlCYm5DZ0I7QUh1OUNsQjs7QWdCcjdDQTs7RUFLSSx5QmJ2Q2M7QUg0OUNsQjs7QWdCMTdDQTs7RUFXTSx3QkFBNEM7QWhCbzdDbEQ7O0FnQi82Q0E7Ozs7RUFLSSxTQUFTO0FoQmk3Q2I7O0FnQno2Q0E7RUFFSSxxQ2IxRFc7QUhxK0NmOztBSzErQ0U7RVcyRUksY2J2RVk7RWF3RVosc0NidkVTO0FIMCtDZjs7QWlCdC9DRTs7O0VBSUkseUJDZ0c0RDtBbEJ3NUNsRTs7QWlCNS9DRTs7OztFQVlNLHFCQ3dGMEQ7QWxCKzVDbEU7O0FLNS9DRTtFWWlCTSx5QkFKc0M7QWpCbS9DOUM7O0FpQnAvQ0U7O0VBU1EseUJBUm9DO0FqQncvQzlDOztBaUI1Z0RFOzs7RUFJSSx5QkNnRzREO0FsQjg2Q2xFOztBaUJsaERFOzs7O0VBWU0scUJDd0YwRDtBbEJxN0NsRTs7QUtsaERFO0VZaUJNLHlCQUpzQztBakJ5Z0Q5Qzs7QWlCMWdERTs7RUFTUSx5QkFSb0M7QWpCOGdEOUM7O0FpQmxpREU7OztFQUlJLHlCQ2dHNEQ7QWxCbzhDbEU7O0FpQnhpREU7Ozs7RUFZTSxxQkN3RjBEO0FsQjI4Q2xFOztBS3hpREU7RVlpQk0seUJBSnNDO0FqQitoRDlDOztBaUJoaURFOztFQVNRLHlCQVJvQztBakJvaUQ5Qzs7QWlCeGpERTs7O0VBSUkseUJDZ0c0RDtBbEIwOUNsRTs7QWlCOWpERTs7OztFQVlNLHFCQ3dGMEQ7QWxCaStDbEU7O0FLOWpERTtFWWlCTSx5QkFKc0M7QWpCcWpEOUM7O0FpQnRqREU7O0VBU1EseUJBUm9DO0FqQjBqRDlDOztBaUI5a0RFOzs7RUFJSSx5QkNnRzREO0FsQmcvQ2xFOztBaUJwbERFOzs7O0VBWU0scUJDd0YwRDtBbEJ1L0NsRTs7QUtwbERFO0VZaUJNLHlCQUpzQztBakIya0Q5Qzs7QWlCNWtERTs7RUFTUSx5QkFSb0M7QWpCZ2xEOUM7O0FpQnBtREU7OztFQUlJLHlCQ2dHNEQ7QWxCc2dEbEU7O0FpQjFtREU7Ozs7RUFZTSxxQkN3RjBEO0FsQjZnRGxFOztBSzFtREU7RVlpQk0seUJBSnNDO0FqQmltRDlDOztBaUJsbURFOztFQVNRLHlCQVJvQztBakJzbUQ5Qzs7QWlCMW5ERTs7O0VBSUkseUJDZ0c0RDtBbEI0aERsRTs7QWlCaG9ERTs7OztFQVlNLHFCQ3dGMEQ7QWxCbWlEbEU7O0FLaG9ERTtFWWlCTSx5QkFKc0M7QWpCdW5EOUM7O0FpQnhuREU7O0VBU1EseUJBUm9DO0FqQjRuRDlDOztBaUJocERFOzs7RUFJSSx5QkNnRzREO0FsQmtqRGxFOztBaUJ0cERFOzs7O0VBWU0scUJDd0YwRDtBbEJ5akRsRTs7QUt0cERFO0VZaUJNLHlCQUpzQztBakI2b0Q5Qzs7QWlCOW9ERTs7RUFTUSx5QkFSb0M7QWpCa3BEOUM7O0FpQnRxREU7OztFQUlJLHNDZFFTO0FIZ3FEZjs7QUtycURFO0VZaUJNLHNDQUpzQztBakI0cEQ5Qzs7QWlCN3BERTs7RUFTUSxzQ0FSb0M7QWpCaXFEOUM7O0FnQjNrREE7RUFHTSxXYjNHUztFYTRHVCx5QmJwR1k7RWFxR1oscUJiZ1FxRDtBSDQwQzNEOztBZ0JqbERBO0VBV00sY2I1R1k7RWE2R1oseUJibEhZO0VhbUhaLHFCYmxIWTtBSDRyRGxCOztBZ0Jya0RBO0VBQ0UsV2IzSGE7RWE0SGIseUJicEhnQjtBSDRyRGxCOztBZ0Ixa0RBOzs7RUFPSSxxQmI0T3VEO0FINjFDM0Q7O0FnQmhsREE7RUFXSSxTQUFTO0FoQnlrRGI7O0FnQnBsREE7RUFnQk0sMkNiMUlTO0FIa3REZjs7QUs3c0RFO0VXNElNLFdiakpPO0Vha0pQLDRDYmxKTztBSHV0RGY7O0FjcnBESTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFaEJ1akR2QztFZ0I1akRHO0lBU0ssU0FBUztFaEJzakRqQjtBQUNGOztBY2pxREk7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RWhCbWtEdkM7RWdCeGtERztJQVNLLFNBQVM7RWhCa2tEakI7QUFDRjs7QWM3cURJO0VFaUdBO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0VoQitrRHZDO0VnQnBsREc7SUFTSyxTQUFTO0VoQjhrRGpCO0FBQ0Y7O0FjenJESTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFaEIybER2QztFZ0JobURHO0lBU0ssU0FBUztFaEIwbERqQjtBQUNGOztBZ0J6bURBO0VBT1EsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsaUNBQWlDO0FoQnNtRHpDOztBZ0JobkRBO0VBY1UsU0FBUztBaEJzbURuQjs7QW1CbnhEQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUNEaUg4RDtFQ2hIOUQseUJoQnlYa0M7RUNwUTlCLGVBdENZO0VlNUVoQixnQmhCa1IrQjtFZ0JqUi9CLGdCaEJzUitCO0VnQnJSL0IsY2hCRGdCO0VnQkVoQixzQmhCVGE7RWdCVWIsNEJBQTRCO0VBQzVCLHlCaEJQZ0I7RU9PZCxzQlA2TmdDO0VpQi9OOUIsd0VqQnVlNEY7QUhrekNsRzs7QW9CcnhETTtFRGROO0lDZVEsZ0JBQWdCO0VwQnl4RHRCO0FBQ0Y7O0FtQnp5REE7RUFzQkksNkJBQTZCO0VBQzdCLFNBQVM7QW5CdXhEYjs7QW1COXlEQTtFQTRCSSxrQkFBa0I7RUFDbEIsMEJoQnJCYztBSDJ5RGxCOztBcUI1eURFO0VBQ0UsY2xCQWM7RWtCQ2Qsc0JsQlJXO0VrQlNYLHFCbEJxZHNFO0VrQnBkdEUsVUFBVTtFQUtSLGdEbEJhVztBSDh4RGpCOztBbUIzekRBO0VBcUNJLGNoQjlCYztFZ0JnQ2QsVUFBVTtBbkJ5eERkOztBbUJoMERBO0VBcUNJLGNoQjlCYztFZ0JnQ2QsVUFBVTtBbkJ5eERkOztBbUJoMERBO0VBcUNJLGNoQjlCYztFZ0JnQ2QsVUFBVTtBbkJ5eERkOztBbUJoMERBO0VBaURJLHlCaEI5Q2M7RWdCZ0RkLFVBQVU7QW5Ca3hEZDs7QW1COXdEQTs7OztFQUtJLHdCQUFnQjtFQUFoQixxQkFBZ0I7RUFBaEIsZ0JBQWdCO0FuQmd4RHBCOztBbUI1d0RBO0VBT0ksY2hCL0RjO0VnQmdFZCxzQmhCdkVXO0FIZzFEZjs7QW1CcHdEQTs7RUFFRSxjQUFjO0VBQ2QsV0FBVztBbkJ1d0RiOztBbUI3dkRBO0VBQ0UsaUNEeUI4RDtFQ3hCOUQsb0NEd0I4RDtFQ3ZCOUQsZ0JBQWdCO0VmM0JkLGtCQUFXO0VlNkJiLGdCaEIrTCtCO0FIaWtEakM7O0FtQjd2REE7RUFDRSwrQkRpQjhEO0VDaEI5RCxrQ0RnQjhEO0VkSzFELGtCQXRDWTtFZW1CaEIsZ0JoQjZIK0I7QUhtb0RqQzs7QW1CN3ZEQTtFQUNFLGdDRFU4RDtFQ1Q5RCxtQ0RTOEQ7RWRLMUQsbUJBdENZO0VlMEJoQixnQmhCdUgrQjtBSHlvRGpDOztBbUJ2dkRBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxtQkFBMkI7RUFDM0IsZ0JBQWdCO0VmRFosZUF0Q1k7RWV5Q2hCLGdCaEJrSytCO0VnQmpLL0IsY2hCbkhnQjtFZ0JvSGhCLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsbUJBQW1DO0FuQjB2RHJDOztBbUJwd0RBO0VBY0ksZ0JBQWdCO0VBQ2hCLGVBQWU7QW5CMHZEbkI7O0FtQjl1REE7RUFDRSxrQ0Q5QjhEO0VDK0I5RCx1QmhCb1BpQztFQzlRN0IsbUJBdENZO0Vla0VoQixnQmhCK0UrQjtFT3hON0IscUJQK04rQjtBSDRwRG5DOztBbUI5dURBO0VBQ0UsZ0NEdEM4RDtFQ3VDOUQsb0JoQmlQZ0M7RUNuUjVCLGtCQXRDWTtFZTBFaEIsZ0JoQnNFK0I7RU92TjdCLHFCUDhOK0I7QUhxcURuQzs7QW1CN3VEQTtFQUdJLFlBQVk7QW5COHVEaEI7O0FtQjF1REE7RUFDRSxZQUFZO0FuQjZ1RGQ7O0FtQnJ1REE7RUFDRSxtQmhCMFUwQztBSDg1QzVDOztBbUJydURBO0VBQ0UsY0FBYztFQUNkLG1CaEIyVDRDO0FINjZDOUM7O0FtQmh1REE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGtCQUEwQztFQUMxQyxpQkFBeUM7QW5CbXVEM0M7O0FtQnZ1REE7O0VBUUksa0JBQTBDO0VBQzFDLGlCQUF5QztBbkJvdUQ3Qzs7QW1CM3REQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QscUJoQmdTNkM7QUg4N0MvQzs7QW1CM3REQTtFQUNFLGtCQUFrQjtFQUNsQixrQmhCNFIyQztFZ0IzUjNDLHFCaEIwUjZDO0FIbzhDL0M7O0FtQmp1REE7O0VBUUksY2hCek5jO0FIdTdEbEI7O0FtQjF0REE7RUFDRSxnQkFBZ0I7QW5CNnREbEI7O0FtQjF0REE7RUFDRSxvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixxQmhCNlE0QztBSGc5QzlDOztBbUJqdURBO0VBUUksZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYix1QmhCd1E0QztFZ0J2UTVDLGNBQWM7QW5CNnREbEI7O0FxQjE2REU7RUFDRSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CbEIwYzBDO0VDamIxQyxjQUFXO0VpQnZCWCxjbEJQYTtBSG83RGpCOztBcUIxNkRFO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJsQm95QnFDO0VrQm55QnJDLGlCQUFpQjtFakJtRWYsbUJBdENZO0VpQjNCZCxnQmxCc082QjtFa0JyTzdCLFdsQnhEVztFa0J5RFgsd0NsQnRCYTtFT3hCYixzQlA2TmdDO0FIK3ZEcEM7O0FxQno2REk7O0VBRUUsU0FBaUM7QXJCNDZEdkM7O0FxQm45REk7Ozs7RUE4Q0UsY0FBYztBckI0NkRwQjs7QXFCMTlESTtFQW9ERSxxQmxCMUNXO0VrQjZDVCxvQ0htQ3dEO0VHbEN4RCxpUkgzQjBFO0VHNEIxRSw0QkFBNEI7RUFDNUIsMkRBQTZEO0VBQzdELGdFSCtCd0Q7QWxCeTREaEU7O0FxQm4rREk7RUErREkscUJsQnJEUztFa0JzRFQsZ0RsQnREUztBSDg5RGpCOztBcUJ4K0RJO0VBeUVJLG9DSGlCd0Q7RUdoQnhELGtGSGdCd0Q7QWxCbTVEaEU7O0FxQjcrREk7RUFpRkUscUJsQnZFVztFa0IwRVQsdUNITXdEO0VHTHhELHVqQkFBOEo7QXJCODVEdEs7O0FxQm4vREk7RUF5RkkscUJsQi9FUztFa0JnRlQsZ0RsQmhGUztBSDgrRGpCOztBcUJ4L0RJO0VBa0dJLGNsQnhGUztBSGsvRGpCOztBcUI1L0RJOzs7RUF1R0ksY0FBYztBckIyNUR0Qjs7QXFCbGdFSTtFQStHSSxjbEJyR1M7QUg0L0RqQjs7QXFCdGdFSTtFQWtITSxxQmxCeEdPO0FIZ2dFakI7O0FxQjFnRUk7RUF3SE0scUJBQWtDO0VDbEp4Qyx5QkRtSitDO0FyQnM1RG5EOztBcUIvZ0VJO0VBK0hNLGdEbEJySE87QUh5Z0VqQjs7QXFCbmhFSTtFQW1JTSxxQmxCekhPO0FINmdFakI7O0FxQnZoRUk7RUE2SUkscUJsQm5JUztBSGloRWpCOztBcUIzaEVJO0VBa0pNLHFCbEJ4SU87RWtCeUlQLGdEbEJ6SU87QUhzaEVqQjs7QXFCcGhFRTtFQUNFLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJsQjBjMEM7RUNqYjFDLGNBQVc7RWlCdkJYLGNsQlZhO0FIaWlFakI7O0FxQnBoRUU7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QmxCb3lCcUM7RWtCbnlCckMsaUJBQWlCO0VqQm1FZixtQkF0Q1k7RWlCM0JkLGdCbEJzTzZCO0VrQnJPN0IsV2xCeERXO0VrQnlEWCx3Q2xCekJhO0VPckJiLHNCUDZOZ0M7QUh5MkRwQzs7QXFCbmhFSTs7RUFFRSxTQUFpQztBckJzaEV2Qzs7QXFCN2pFSTs7OztFQThDRSxjQUFjO0FyQnNoRXBCOztBcUJwa0VJO0VBb0RFLHFCbEI3Q1c7RWtCZ0RULG9DSG1Dd0Q7RUdsQ3hELDRVSDNCMEU7RUc0QjFFLDRCQUE0QjtFQUM1QiwyREFBNkQ7RUFDN0QsZ0VIK0J3RDtBbEJtL0RoRTs7QXFCN2tFSTtFQStESSxxQmxCeERTO0VrQnlEVCxnRGxCekRTO0FIMmtFakI7O0FxQmxsRUk7RUF5RUksb0NIaUJ3RDtFR2hCeEQsa0ZIZ0J3RDtBbEI2L0RoRTs7QXFCdmxFSTtFQWlGRSxxQmxCMUVXO0VrQjZFVCx1Q0hNd0Q7RUdMeEQsa25CQUE4SjtBckJ3Z0V0Szs7QXFCN2xFSTtFQXlGSSxxQmxCbEZTO0VrQm1GVCxnRGxCbkZTO0FIMmxFakI7O0FxQmxtRUk7RUFrR0ksY2xCM0ZTO0FIK2xFakI7O0FxQnRtRUk7OztFQXVHSSxjQUFjO0FyQnFnRXRCOztBcUI1bUVJO0VBK0dJLGNsQnhHUztBSHltRWpCOztBcUJobkVJO0VBa0hNLHFCbEIzR087QUg2bUVqQjs7QXFCcG5FSTtFQXdITSxxQkFBa0M7RUNsSnhDLHlCRG1KK0M7QXJCZ2dFbkQ7O0FxQnpuRUk7RUErSE0sZ0RsQnhITztBSHNuRWpCOztBcUI3bkVJO0VBbUlNLHFCbEI1SE87QUgwbkVqQjs7QXFCam9FSTtFQTZJSSxxQmxCdElTO0FIOG5FakI7O0FxQnJvRUk7RUFrSk0scUJsQjNJTztFa0I0SVAsZ0RsQjVJTztBSG1vRWpCOztBbUJ4NURBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixtQkFBbUI7QW5CMjVEckI7O0FtQjk1REE7RUFTSSxXQUFXO0FuQnk1RGY7O0FjeG5FSTtFS3NOSjtJQWVNLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLGdCQUFnQjtFbkJ3NURwQjtFbUIxNkRGO0lBdUJNLGFBQWE7SUFDYixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixnQkFBZ0I7RW5CczVEcEI7RW1CajdERjtJQWdDTSxxQkFBcUI7SUFDckIsV0FBVztJQUNYLHNCQUFzQjtFbkJvNUQxQjtFbUJ0N0RGO0lBdUNNLHFCQUFxQjtFbkJrNUR6QjtFbUJ6N0RGOztJQTRDTSxXQUFXO0VuQmk1RGY7RW1CNzdERjtJQWtETSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixXQUFXO0lBQ1gsZUFBZTtFbkI4NERuQjtFbUJwOERGO0lBeURNLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsYUFBYTtJQUNiLHFCaEIrS3dDO0lnQjlLeEMsY0FBYztFbkI4NERsQjtFbUIzOERGO0lBaUVNLG1CQUFtQjtJQUNuQix1QkFBdUI7RW5CNjREM0I7RW1CLzhERjtJQXFFTSxnQkFBZ0I7RW5CNjREcEI7QUFDRjs7QXVCL3RFQTtFQUNFLHFCQUFxQjtFQUVyQixnQnBCc1IrQjtFb0JyUi9CLGNwQk1nQjtFb0JMaEIsa0JBQWtCO0VBR2xCLHNCQUFzQjtFQUN0Qix5QkFBaUI7RUFBakIsc0JBQWlCO0VBQWpCLHFCQUFpQjtFQUFqQixpQkFBaUI7RUFDakIsNkJBQTZCO0VBQzdCLDZCQUEyQztFQ3VGM0MseUJyQjJSa0M7RUNwUTlCLGVBdENZO0VvQmlCaEIsZ0JyQjBMK0I7RU9sUjdCLHNCUDZOZ0M7RWlCL045QixxSWpCZ2I2STtBSHF6RG5KOztBb0JqdUVNO0VHZE47SUhlUSxnQkFBZ0I7RXBCcXVFdEI7QUFDRjs7QUsvdUVFO0VrQlVFLGNwQk5jO0VvQk9kLHFCQUFxQjtBdkJ5dUV6Qjs7QXVCMXZFQTtFQXNCSSxVQUFVO0VBQ1YsZ0RwQk1hO0FIa3VFakI7O0F1Qi92RUE7RUE2QkksYXBCaVo2QjtBSHExRGpDOztBdUJud0VBO0VBa0NJLGVBQXNEO0F2QnF1RTFEOztBdUJ2dEVBOztFQUVFLG9CQUFvQjtBdkIwdEV0Qjs7QXVCanRFRTtFQzNEQSxXckJDYTtFbUJEWCx5Qm5CNkJhO0VxQjNCZixxQnJCMkJlO0FIcXZFakI7O0FLNXdFRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F4Qnl4RTdIOztBd0I3d0VFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxnREFBaUY7QXhCMndFdkY7O0F3QnR3RUU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJDYTtFcUJBYixxQnJCQWE7QUh3d0VqQjs7QXdCandFRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXhCNnlFbk47O0F3Qjl2RUk7O0VBS0ksZ0RBQWlGO0F4Qjh2RXpGOztBdUJ0dkVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJPYztFcUJMaEIscUJyQktnQjtBSGd6RWxCOztBS2p6RUU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBeEI4ekU3SDs7QXdCbHpFRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsaURBQWlGO0F4Qmd6RXZGOztBd0IzeUVFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCckJjO0VxQnNCZCxxQnJCdEJjO0FIbTBFbEI7O0F3QnR5RUU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F4QmsxRW5OOztBd0JueUVJOztFQUtJLGlEQUFpRjtBeEJteUV6Rjs7QXVCM3hFRTtFQzNEQSxXckJDYTtFbUJEWCx5Qm5Cb0NhO0VxQmxDZixxQnJCa0NlO0FId3pFakI7O0FLdDFFRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F4Qm0yRTdIOztBd0J2MUVFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCwrQ0FBaUY7QXhCcTFFdkY7O0F3QmgxRUU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJRYTtFcUJQYixxQnJCT2E7QUgyMEVqQjs7QXdCMzBFRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXhCdTNFbk47O0F3QngwRUk7O0VBS0ksK0NBQWlGO0F4QncwRXpGOztBdUJoMEVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJzQ2E7RXFCcENmLHFCckJvQ2U7QUgyMUVqQjs7QUszM0VFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QXhCdzRFN0g7O0F3QjUzRUU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGdEQUFpRjtBeEIwM0V2Rjs7QXdCcjNFRTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQlVhO0VxQlRiLHFCckJTYTtBSDgyRWpCOztBd0JoM0VFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBeEI0NUVuTjs7QXdCNzJFSTs7RUFLSSxnREFBaUY7QXhCNjJFekY7O0F1QnIyRUU7RUMzREEsY3JCVWdCO0VtQlZkLHlCbkJtQ2E7RXFCakNmLHFCckJpQ2U7QUhtNEVqQjs7QUtoNkVFO0VtQkFFLGNyQkljO0VtQlZkLHlCRURvRjtFQVNwRixxQkFUeUg7QXhCNjZFN0g7O0F3Qmo2RUU7RUFFRSxjckJIYztFbUJWZCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGdEQUFpRjtBeEIrNUV2Rjs7QXdCMTVFRTtFQUVFLGNyQmpCYztFcUJrQmQseUJyQk9hO0VxQk5iLHFCckJNYTtBSHM1RWpCOztBd0JyNUVFOztFQUdFLGNyQjdCYztFcUI4QmQseUJBekN1SztFQTZDdksscUJBN0MrTTtBeEJpOEVuTjs7QXdCbDVFSTs7RUFLSSxnREFBaUY7QXhCazVFekY7O0F1QjE0RUU7RUMzREEsV3JCQ2E7RW1CRFgseUJuQmlDYTtFcUIvQmYscUJyQitCZTtBSDA2RWpCOztBS3I4RUU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBeEJrOUU3SDs7QXdCdDhFRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsK0NBQWlGO0F4Qm84RXZGOztBd0IvN0VFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCS2E7RXFCSmIscUJyQklhO0FINjdFakI7O0F3QjE3RUU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F4QnMrRW5OOztBd0J2N0VJOztFQUtJLCtDQUFpRjtBeEJ1N0V6Rjs7QXVCLzZFRTtFQzNEQSxjckJVZ0I7RW1CVmQseUJuQkVjO0VxQkFoQixxQnJCQWdCO0FIOCtFbEI7O0FLMStFRTtFbUJBRSxjckJJYztFbUJWZCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F4QnUvRTdIOztBd0IzK0VFO0VBRUUsY3JCSGM7RW1CVmQseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxpREFBaUY7QXhCeStFdkY7O0F3QnArRUU7RUFFRSxjckJqQmM7RXFCa0JkLHlCckIxQmM7RXFCMkJkLHFCckIzQmM7QUhpZ0ZsQjs7QXdCLzlFRTs7RUFHRSxjckI3QmM7RXFCOEJkLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXhCMmdGbk47O0F3QjU5RUk7O0VBS0ksaURBQWlGO0F4QjQ5RXpGOztBdUJwOUVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJTYztFcUJQaEIscUJyQk9nQjtBSDRnRmxCOztBSy9nRkU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBeEI0aEY3SDs7QXdCaGhGRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsOENBQWlGO0F4QjhnRnZGOztBd0J6Z0ZFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCbkJjO0VxQm9CZCxxQnJCcEJjO0FIK2hGbEI7O0F3QnBnRkU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F4QmdqRm5OOztBd0JqZ0ZJOztFQUtJLDhDQUFpRjtBeEJpZ0Z6Rjs7QXVCbi9FRTtFQ1BBLGNyQjdCZTtFcUI4QmYscUJyQjlCZTtBSDRoRmpCOztBS25qRkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQmxDYTtFcUJtQ2IscUJyQm5DYTtBSGtpRmpCOztBd0I1L0VFO0VBRUUsK0NyQnhDYTtBSHNpRmpCOztBd0IzL0VFO0VBRUUsY3JCN0NhO0VxQjhDYiw2QkFBNkI7QXhCNi9FakM7O0F3QjEvRUU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCckRhO0VxQnNEYixxQnJCdERhO0FIa2pGakI7O0F3QjEvRUk7O0VBS0ksK0NyQjdEUztBSHVqRmpCOztBdUJuaEZFO0VDUEEsY3JCbkRnQjtFcUJvRGhCLHFCckJwRGdCO0FIa2xGbEI7O0FLbmxGRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCeERjO0VxQnlEZCxxQnJCekRjO0FId2xGbEI7O0F3QjVoRkU7RUFFRSxpRHJCOURjO0FINGxGbEI7O0F3QjNoRkU7RUFFRSxjckJuRWM7RXFCb0VkLDZCQUE2QjtBeEI2aEZqQzs7QXdCMWhGRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckIzRWM7RXFCNEVkLHFCckI1RWM7QUh3bUZsQjs7QXdCMWhGSTs7RUFLSSxpRHJCbkZVO0FINm1GbEI7O0F1Qm5qRkU7RUNQQSxjckJ0QmU7RXFCdUJmLHFCckJ2QmU7QUhxbEZqQjs7QUtubkZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckIzQmE7RXFCNEJiLHFCckI1QmE7QUgybEZqQjs7QXdCNWpGRTtFQUVFLCtDckJqQ2E7QUgrbEZqQjs7QXdCM2pGRTtFQUVFLGNyQnRDYTtFcUJ1Q2IsNkJBQTZCO0F4QjZqRmpDOztBd0IxakZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQjlDYTtFcUIrQ2IscUJyQi9DYTtBSDJtRmpCOztBd0IxakZJOztFQUtJLCtDckJ0RFM7QUhnbkZqQjs7QXVCbmxGRTtFQ1BBLGNyQnBCZTtFcUJxQmYscUJyQnJCZTtBSG1uRmpCOztBS25wRkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQnpCYTtFcUIwQmIscUJyQjFCYTtBSHluRmpCOztBd0I1bEZFO0VBRUUsZ0RyQi9CYTtBSDZuRmpCOztBd0IzbEZFO0VBRUUsY3JCcENhO0VxQnFDYiw2QkFBNkI7QXhCNmxGakM7O0F3QjFsRkU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCNUNhO0VxQjZDYixxQnJCN0NhO0FIeW9GakI7O0F3QjFsRkk7O0VBS0ksZ0RyQnBEUztBSDhvRmpCOztBdUJubkZFO0VDUEEsY3JCdkJlO0VxQndCZixxQnJCeEJlO0FIc3BGakI7O0FLbnJGRTtFbUJ3REUsY3JCcERjO0VxQnFEZCx5QnJCNUJhO0VxQjZCYixxQnJCN0JhO0FINHBGakI7O0F3QjVuRkU7RUFFRSwrQ3JCbENhO0FIZ3FGakI7O0F3QjNuRkU7RUFFRSxjckJ2Q2E7RXFCd0NiLDZCQUE2QjtBeEI2bkZqQzs7QXdCMW5GRTs7RUFHRSxjckJ2RWM7RXFCd0VkLHlCckIvQ2E7RXFCZ0RiLHFCckJoRGE7QUg0cUZqQjs7QXdCMW5GSTs7RUFLSSwrQ3JCdkRTO0FIaXJGakI7O0F1Qm5wRkU7RUNQQSxjckJ6QmU7RXFCMEJmLHFCckIxQmU7QUh3ckZqQjs7QUtudEZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckI5QmE7RXFCK0JiLHFCckIvQmE7QUg4ckZqQjs7QXdCNXBGRTtFQUVFLCtDckJwQ2E7QUhrc0ZqQjs7QXdCM3BGRTtFQUVFLGNyQnpDYTtFcUIwQ2IsNkJBQTZCO0F4QjZwRmpDOztBd0IxcEZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQmpEYTtFcUJrRGIscUJyQmxEYTtBSDhzRmpCOztBd0IxcEZJOztFQUtJLCtDckJ6RFM7QUhtdEZqQjs7QXVCbnJGRTtFQ1BBLGNyQnhEZ0I7RXFCeURoQixxQnJCekRnQjtBSHV2RmxCOztBS252RkU7RW1Cd0RFLGNyQnBEYztFcUJxRGQseUJyQjdEYztFcUI4RGQscUJyQjlEYztBSDZ2RmxCOztBd0I1ckZFO0VBRUUsaURyQm5FYztBSGl3RmxCOztBd0IzckZFO0VBRUUsY3JCeEVjO0VxQnlFZCw2QkFBNkI7QXhCNnJGakM7O0F3QjFyRkU7O0VBR0UsY3JCdkVjO0VxQndFZCx5QnJCaEZjO0VxQmlGZCxxQnJCakZjO0FINndGbEI7O0F3QjFyRkk7O0VBS0ksaURyQnhGVTtBSGt4RmxCOztBdUJudEZFO0VDUEEsY3JCakRnQjtFcUJrRGhCLHFCckJsRGdCO0FIZ3hGbEI7O0FLbnhGRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCdERjO0VxQnVEZCxxQnJCdkRjO0FIc3hGbEI7O0F3QjV0RkU7RUFFRSw4Q3JCNURjO0FIMHhGbEI7O0F3QjN0RkU7RUFFRSxjckJqRWM7RXFCa0VkLDZCQUE2QjtBeEI2dEZqQzs7QXdCMXRGRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckJ6RWM7RXFCMEVkLHFCckIxRWM7QUhzeUZsQjs7QXdCMXRGSTs7RUFLSSw4Q3JCakZVO0FIMnlGbEI7O0F1Qnh1RkE7RUFDRSxnQnBCNE0rQjtFb0IzTS9CLGNwQmpEZTtFb0JrRGYscUJwQjJGNEM7QUhncEY5Qzs7QUtwekZFO0VrQjRFRSxjcEJ5RjhEO0VvQnhGOUQsMEJwQnlGK0M7QUhtcEZuRDs7QXVCbnZGQTtFQVlJLDBCcEJvRitDO0FIdXBGbkQ7O0F1QnZ2RkE7RUFpQkksY3BCdEZjO0VvQnVGZCxvQkFBb0I7QXZCMHVGeEI7O0F1Qi90RkE7RUNQRSxvQnJCMFNnQztFQ25SNUIsa0JBdENZO0VvQmlCaEIsZ0JyQitIK0I7RU92TjdCLHFCUDhOK0I7QUhxbUZuQzs7QXVCbHVGQTtFQ1hFLHVCckJxU2lDO0VDOVE3QixtQkF0Q1k7RW9CaUJoQixnQnJCZ0krQjtFT3hON0IscUJQK04rQjtBSDJtRm5DOztBdUJodUZBO0VBQ0UsY0FBYztFQUNkLFdBQVc7QXZCbXVGYjs7QXVCcnVGQTtFQU1JLGtCcEJ1VCtCO0FINDZFbkM7O0F1Qjl0RkE7OztFQUlJLFdBQVc7QXZCZ3VGZjs7QXlCMzJGQTtFTGdCTSxnQ2pCaVAyQztBSDhtRmpEOztBb0IzMUZNO0VLcEJOO0lMcUJRLGdCQUFnQjtFcEIrMUZ0QjtBQUNGOztBeUJyM0ZBO0VBSUksVUFBVTtBekJxM0ZkOztBeUJqM0ZBO0VBRUksYUFBYTtBekJtM0ZqQjs7QXlCLzJGQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsZ0JBQWdCO0VMRFosNkJqQmtQd0M7QUhrb0Y5Qzs7QW9CaDNGTTtFS05OO0lMT1EsZ0JBQWdCO0VwQm8zRnRCO0FBQ0Y7O0EwQno0RkE7Ozs7RUFJRSxrQkFBa0I7QTFCNDRGcEI7O0EwQno0RkE7RUFDRSxtQkFBbUI7QTFCNDRGckI7O0EyQngzRkk7RUFDRSxxQkFBcUI7RUFDckIsb0J4QitOMEM7RXdCOU4xQyx1QnhCNk4wQztFd0I1TjFDLFdBQVc7RUFoQ2YsdUJBQThCO0VBQzlCLHFDQUE0QztFQUM1QyxnQkFBZ0I7RUFDaEIsb0NBQTJDO0EzQjQ1RjdDOztBMkJ2MkZJO0VBQ0UsY0FBYztBM0IwMkZwQjs7QTBCcDVGQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsT0FBTztFQUNQLGF2QndwQnNDO0V1QnZwQnRDLGFBQWE7RUFDYixXQUFXO0VBQ1gsZ0J2Qmd1QnVDO0V1Qi90QnZDLGlCdkJndUJtQztFdUIvdEJuQyxvQkFBNEI7RXRCc0d4QixlQXRDWTtFc0I5RGhCLGN2QlhnQjtFdUJZaEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixzQnZCdkJhO0V1QndCYiw0QkFBNEI7RUFDNUIscUN2QmZhO0VPQ1gsc0JQNk5nQztBSHlzRnBDOztBMEIvNEZJO0VBQ0UsV0FBVztFQUNYLE9BQU87QTFCazVGYjs7QTBCLzRGSTtFQUNFLFFBQVE7RUFDUixVQUFVO0ExQms1RmhCOztBY3Q0Rkk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFMUI2NUZYO0UwQjE1RkU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFMUI0NUZkO0FBQ0Y7O0FjajVGSTtFWW5CQTtJQUNFLFdBQVc7SUFDWCxPQUFPO0UxQnc2Rlg7RTBCcjZGRTtJQUNFLFFBQVE7SUFDUixVQUFVO0UxQnU2RmQ7QUFDRjs7QWM1NUZJO0VZbkJBO0lBQ0UsV0FBVztJQUNYLE9BQU87RTFCbTdGWDtFMEJoN0ZFO0lBQ0UsUUFBUTtJQUNSLFVBQVU7RTFCazdGZDtBQUNGOztBY3Y2Rkk7RVluQkE7SUFDRSxXQUFXO0lBQ1gsT0FBTztFMUI4N0ZYO0UwQjM3RkU7SUFDRSxRQUFRO0lBQ1IsVUFBVTtFMUI2N0ZkO0FBQ0Y7O0EwQnY3RkE7RUFFSSxTQUFTO0VBQ1QsWUFBWTtFQUNaLGFBQWE7RUFDYix1QnZCOHJCdUM7QUgydkUzQzs7QTJCeDlGSTtFQUNFLHFCQUFxQjtFQUNyQixvQnhCK04wQztFd0I5TjFDLHVCeEI2TjBDO0V3QjVOMUMsV0FBVztFQXpCZixhQUFhO0VBQ2IscUNBQTRDO0VBQzVDLDBCQUFpQztFQUNqQyxvQ0FBMkM7QTNCcS9GN0M7O0EyQnY4Rkk7RUFDRSxjQUFjO0EzQjA4RnBCOztBMEJoOEZBO0VBRUksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHFCdkJnckJ1QztBSGt4RTNDOztBMkIvK0ZJO0VBQ0UscUJBQXFCO0VBQ3JCLG9CeEIrTjBDO0V3QjlOMUMsdUJ4QjZOMEM7RXdCNU4xQyxXQUFXO0VBbEJmLG1DQUEwQztFQUMxQyxlQUFlO0VBQ2Ysc0NBQTZDO0VBQzdDLHdCQUErQjtBM0JxZ0dqQzs7QTJCOTlGSTtFQUNFLGNBQWM7QTNCaStGcEI7O0EyQjkvRkk7RURtREUsaUJBQWlCO0ExQis4RnZCOztBMEIxOEZBO0VBRUksTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHNCdkIrcEJ1QztBSDZ5RTNDOztBMkIxZ0dJO0VBQ0UscUJBQXFCO0VBQ3JCLG9CeEIrTjBDO0V3QjlOMUMsdUJ4QjZOMEM7RXdCNU4xQyxXQUFXO0EzQjZnR2pCOztBMkJqaEdJO0VBZ0JJLGFBQWE7QTNCcWdHckI7O0EyQmxnR007RUFDRSxxQkFBcUI7RUFDckIscUJ4QjRNd0M7RXdCM014Qyx1QnhCME13QztFd0J6TXhDLFdBQVc7RUE5QmpCLG1DQUEwQztFQUMxQyx5QkFBZ0M7RUFDaEMsc0NBQTZDO0EzQm9pRy9DOztBMkJuZ0dJO0VBQ0UsY0FBYztBM0JzZ0dwQjs7QTJCaGhHTTtFRGlEQSxpQkFBaUI7QTFCbStGdkI7O0EwQjU5RkE7RUFLSSxXQUFXO0VBQ1gsWUFBWTtBMUIyOUZoQjs7QTBCdDlGQTtFRTlHRSxTQUFTO0VBQ1QsZ0JBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQiw2QnpCQ2dCO0FIdWtHbEI7O0EwQnQ5RkE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLHVCdkJtcEJ3QztFdUJscEJ4QyxXQUFXO0VBQ1gsZ0J2QmdLK0I7RXVCL0ovQixjdkJoSGdCO0V1QmlIaEIsbUJBQW1CO0VBRW5CLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0IsU0FBUztBMUJ3OUZYOztBSzdrR0U7RXFCb0lFLGN2Qm1uQnFEO0V1QmxuQnJELHFCQUFxQjtFSi9JckIseUJuQkdjO0FIMGxHbEI7O0EwQnorRkE7RUFpQ0ksV3ZCcEpXO0V1QnFKWCxxQkFBcUI7RUp0SnJCLHlCbkI2QmE7QUhza0dqQjs7QTBCLytGQTtFQXdDSSxjdkJ0SmM7RXVCdUpkLG9CQUFvQjtFQUNwQiw2QkFBNkI7QTFCMjhGakM7O0EwQm44RkE7RUFDRSxjQUFjO0ExQnM4RmhCOztBMEJsOEZBO0VBQ0UsY0FBYztFQUNkLHNCdkI2bEJ3QztFdUI1bEJ4QyxnQkFBZ0I7RXRCckRaLG1CQXRDWTtFc0I2RmhCLGN2QnpLZ0I7RXVCMEtoQixtQkFBbUI7QTFCcThGckI7O0EwQmo4RkE7RUFDRSxjQUFjO0VBQ2QsdUJ2Qm1sQndDO0V1QmxsQnhDLGN2QjlLZ0I7QUhrbkdsQjs7QTZCL25HQTs7RUFFRSxrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLHNCQUFzQjtBN0Jrb0d4Qjs7QTZCdG9HQTs7RUFPSSxrQkFBa0I7RUFDbEIsY0FBYztBN0Jvb0dsQjs7QUtub0dFOztFd0JJSSxVQUFVO0E3Qm9vR2hCOztBNkJqcEdBOzs7O0VBa0JNLFVBQVU7QTdCc29HaEI7O0E2QmhvR0E7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLDJCQUEyQjtBN0Jtb0c3Qjs7QTZCdG9HQTtFQU1JLFdBQVc7QTdCb29HZjs7QTZCaG9HQTs7RUFJSSxpQjFCbU02QjtBSDg3RmpDOztBNkJyb0dBOztFbkJISSwwQm1CYThCO0VuQlo5Qiw2Qm1CWThCO0E3QmlvR2xDOztBNkIzb0dBOztFbkJXSSx5Qm1CSTZCO0VuQkg3Qiw0Qm1CRzZCO0E3QmtvR2pDOztBNkJsbkdBO0VBQ0Usd0JBQW1DO0VBQ25DLHVCQUFrQztBN0JxbkdwQzs7QTZCdm5HQTs7O0VBT0ksY0FBYztBN0JzbkdsQjs7QTZCbm5HRTtFQUNFLGVBQWU7QTdCc25HbkI7O0E2QmxuR0E7RUFDRSx1QkFBc0M7RUFDdEMsc0JBQXFDO0E3QnFuR3ZDOztBNkJsbkdBO0VBQ0Usc0JBQXNDO0VBQ3RDLHFCQUFxQztBN0Jxbkd2Qzs7QTZCam1HQTtFQUNFLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsdUJBQXVCO0E3Qm9tR3pCOztBNkJ2bUdBOztFQU9JLFdBQVc7QTdCcW1HZjs7QTZCNW1HQTs7RUFZSSxnQjFCa0g2QjtBSG0vRmpDOztBNkJqbkdBOztFbkJyRUksNkJtQnVGK0I7RW5CdEYvQiw0Qm1Cc0YrQjtBN0JxbUduQzs7QTZCdm5HQTs7RW5CbkZJLHlCbUIwRzRCO0VuQnpHNUIsMEJtQnlHNEI7QTdCc21HaEM7O0E2QnJsR0E7O0VBR0ksZ0JBQWdCO0E3QnVsR3BCOztBNkIxbEdBOzs7O0VBT00sa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixvQkFBb0I7QTdCMGxHMUI7O0E4Qm52R0E7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGVBQWU7RUFDZixvQkFBb0I7RUFDcEIsV0FBVztBOUJzdkdiOztBOEIzdkdBOzs7O0VBV0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxTQUFTO0VBQ1QsWUFBWTtFQUNaLGdCQUFnQjtBOUJ1dkdwQjs7QThCdHdHQTs7Ozs7Ozs7Ozs7O0VBb0JNLGlCM0JrTjJCO0FIK2lHakM7O0E4QnJ4R0E7OztFQTRCSSxVQUFVO0E5Qit2R2Q7O0E4QjN4R0E7RUFpQ0ksVUFBVTtBOUI4dkdkOztBOEIveEdBOztFcEIwQ0kseUJvQkptRDtFcEJLbkQsNEJvQkxtRDtBOUIrdkd2RDs7QThCcnlHQTtFQTRDSSxhQUFhO0VBQ2IsbUJBQW1CO0E5QjZ2R3ZCOztBOEIxeUdBOztFcEIwQ0kseUJvQk1zRTtFcEJMdEUsNEJvQktzRTtBOUJnd0cxRTs7QThCaHpHQTs7O0VwQjRCSSwwQm9CMkJnQztFcEIxQmhDLDZCb0IwQmdDO0E5Qmd3R3BDOztBOEJ2ekdBOzs7RXBCNEJJLDBCb0JtQ2dDO0VwQmxDaEMsNkJvQmtDZ0M7QTlCK3ZHcEM7O0E4Qm52R0E7O0VBRUUsYUFBYTtBOUJzdkdmOztBOEJ4dkdBOztFQVFJLGtCQUFrQjtFQUNsQixVQUFVO0E5QnF2R2Q7O0E4Qjl2R0E7O0VBWU0sVUFBVTtBOUJ1dkdoQjs7QThCbndHQTs7Ozs7Ozs7RUFvQkksaUIzQnVJNkI7QUhtbkdqQzs7QThCdHZHQTtFQUF1QixrQjNCbUlVO0FIdW5HakM7O0E4Qnp2R0E7RUFBc0IsaUIzQmtJVztBSDJuR2pDOztBOEJydkdBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix5QjNCOFFrQztFMkI3UWxDLGdCQUFnQjtFMUJTWixlQXRDWTtFMEIrQmhCLGdCM0J1SytCO0UyQnRLL0IsZ0IzQjJLK0I7RTJCMUsvQixjM0I1R2dCO0UyQjZHaEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QjNCcEhnQjtFMkJxSGhCLHlCM0JuSGdCO0VPT2Qsc0JQNk5nQztBSHdvR3BDOztBOEJyd0dBOztFQWtCSSxhQUFhO0E5Qnd2R2pCOztBOEI5dUdBOztFQUVFLGdDWnRCOEQ7QWxCdXdHaEU7O0E4Qjl1R0E7Ozs7OztFQU1FLG9CM0J5UGdDO0VDblI1QixrQkF0Q1k7RTBCa0VoQixnQjNCOEUrQjtFT3ZON0IscUJQOE4rQjtBSDZwR25DOztBOEI5dUdBOztFQUVFLGtDWnZDOEQ7QWxCd3hHaEU7O0E4Qjl1R0E7Ozs7OztFQU1FLHVCM0JtT2lDO0VDOVE3QixtQkF0Q1k7RTBCbUZoQixnQjNCOEQrQjtFT3hON0IscUJQK04rQjtBSDZxR25DOztBOEI5dUdBOztFQUVFLHNCQUEwRTtBOUJpdkc1RTs7QThCdHVHQTs7Ozs7Ozs7RXBCM0pJLDBCb0JtSzRCO0VwQmxLNUIsNkJvQmtLNEI7QTlCMHVHaEM7O0E4QnZ1R0E7Ozs7OztFcEJ4SkkseUJvQjhKMkI7RXBCN0ozQiw0Qm9CNkoyQjtBOUIydUcvQjs7QStCaDdHQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsY0FBYztFQUNkLGtCQUErQztFQUMvQyxvQkFBcUU7RUFDckUsaUNBQW1CO0VBQW5CLG1CQUFtQjtBL0JtN0dyQjs7QStCaDdHQTtFQUNFLG9CQUFvQjtFQUNwQixrQjVCd2YwQztBSDI3RjVDOztBK0JoN0dBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsVzVCb2YwQztFNEJuZjFDLGVBQWtGO0VBQ2xGLFVBQVU7QS9CbTdHWjs7QStCejdHQTtFQVNJLFc1QnpCVztFNEIwQlgscUI1QkVhO0VtQjdCYix5Qm5CNkJhO0FIbTdHakI7O0ErQi83R0E7RUFvQk0sZ0Q1QlJXO0FIdTdHakI7O0ErQm44R0E7RUF5QkkscUI1QnFic0U7QUh5L0YxRTs7QStCdjhHQTtFQTZCSSxXNUI3Q1c7RTRCOENYLHlCNUJpZjhFO0U0QmhmOUUscUI1QmdmOEU7QUg4N0ZsRjs7QStCNzhHQTtFQXVDTSxjNUJqRFk7QUgyOUdsQjs7QStCajlHQTtFQTBDUSx5QjVCeERVO0FIbStHbEI7O0ErQmo2R0E7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBRWhCLG1CQUFtQjtBL0JtNkdyQjs7QStCdjZHQTtFQVNJLGtCQUFrQjtFQUNsQixZQUErRTtFQUMvRSxhQUErRDtFQUMvRCxjQUFjO0VBQ2QsVzVCdWJ3QztFNEJ0YnhDLFk1QnNid0M7RTRCcmJ4QyxvQkFBb0I7RUFDcEIsV0FBVztFQUNYLHNCNUJyRlc7RTRCc0ZYLHlCNUIrSTZCO0FIbXhHakM7O0ErQnA3R0E7RUF3Qkksa0JBQWtCO0VBQ2xCLFlBQStFO0VBQy9FLGFBQStEO0VBQy9ELGNBQWM7RUFDZCxXNUJ3YXdDO0U0QnZheEMsWTVCdWF3QztFNEJ0YXhDLFdBQVc7RUFDWCxtQ0FBZ0U7QS9CZzZHcEU7O0ErQnY1R0E7RXJCakdJLHNCUDZOZ0M7QUgreEdwQzs7QStCMzVHQTtFQU9NLGtPYjdENEU7QWxCcTlHbEY7O0ErQi81R0E7RUFhTSxxQjVCN0ZXO0VtQjdCYix5Qm5CNkJhO0FIby9HakI7O0ErQnA2R0E7RUFrQk0sK0tieEU0RTtBbEI4OUdsRjs7QStCeDZHQTtFVDdHSSx3Q25CNkJhO0FINC9HakI7O0ErQjU2R0E7RVQ3R0ksd0NuQjZCYTtBSGdnSGpCOztBK0I1NEdBO0VBR0ksa0I1QnlaK0M7QUhvL0ZuRDs7QStCaDVHQTtFQVFNLDhLYmxHNEU7QWxCOCtHbEY7O0ErQnA1R0E7RVRqSkksd0NuQjZCYTtBSDRnSGpCOztBK0JoNEdBO0VBQ0UscUJBQTJEO0EvQm00RzdEOztBK0JwNEdBO0VBS00sY0FBcUQ7RUFDckQsYzVCaVkrRTtFNEJoWS9FLG1CQUFtQjtFQUVuQixxQjVCK1g0RTtBSG1nR2xGOztBK0IzNEdBO0VBYU0sd0JibEUwRDtFYW1FMUQsMEJibkUwRDtFYW9FMUQsdUJiaEQwRDtFYWlEMUQsd0JiakQwRDtFYWtEMUQseUI1QnBMWTtFNEJzTFoscUI1QnFYNEU7RWlCdmlCNUUseUlqQnlmK0g7QUgyakdySTs7QW9CaGpITTtFVzJKTjtJWDFKUSxnQkFBZ0I7RXBCb2pIdEI7QUFDRjs7QStCMzVHQTtFQTBCTSxzQjVCbE1TO0U0Qm1NVCw4QkFBNEU7QS9CcTRHbEY7O0ErQmg2R0E7RVR6S0ksd0NuQjZCYTtBSGdqSGpCOztBK0J2M0dBO0VBQ0UscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQ2JyRzhEO0Vhc0c5RCwwQzVCbUtrQztFQ3BROUIsZUF0Q1k7RTJCMEloQixnQjVCNEQrQjtFNEIzRC9CLGdCNUJnRStCO0U0Qi9EL0IsYzVCdk5nQjtFNEJ3TmhCLHNCQUFzQjtFQUN0Qix1TzVCa1crSTtFNEJqVy9JLHlCNUI3TmdCO0VPT2Qsc0JQNk5nQztFNEJKbEMsd0JBQWdCO0VBQWhCLHFCQUFnQjtFQUFoQixnQkFBZ0I7QS9CdzNHbEI7O0ErQnY0R0E7RUFrQkkscUI1QnVQc0U7RTRCdFB0RSxVQUFVO0VBS1IsZ0Q1QmpOVztBSHNrSGpCOztBK0I3NEdBO0VBaUNNLGM1Qi9PWTtFNEJnUFosc0I1QnZQUztBSHVtSGY7O0ErQmw1R0E7RUF3Q0ksWUFBWTtFQUNaLHNCNUI4SGdDO0U0QjdIaEMsc0JBQXNCO0EvQjgyRzFCOztBK0J4NUdBO0VBOENJLGM1QjdQYztFNEI4UGQseUI1QmxRYztBSGduSGxCOztBK0I3NUdBO0VBb0RJLGFBQWE7QS9CNjJHakI7O0ErQmo2R0E7RUF5REksa0JBQWtCO0VBQ2xCLDBCNUJ4UWM7QUhvbkhsQjs7QStCeDJHQTtFQUNFLGtDYmpLOEQ7RWFrSzlELG9CNUJnSGtDO0U0Qi9HbEMsdUI1QitHa0M7RTRCOUdsQyxvQjVCK0dpQztFQzlRN0IsbUJBdENZO0FKaWpIbEI7O0ErQngyR0E7RUFDRSxnQ2J6SzhEO0VhMEs5RCxtQjVCNkdpQztFNEI1R2pDLHNCNUI0R2lDO0U0QjNHakMsa0I1QjRHZ0M7RUNuUjVCLGtCQXRDWTtBSnlqSGxCOztBK0JuMkdBO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsbUNiekw4RDtFYTBMOUQsZ0JBQWdCO0EvQnMyR2xCOztBK0JuMkdBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsbUNiak04RDtFYWtNOUQsU0FBUztFQUNULGdCQUFnQjtFQUNoQixVQUFVO0EvQnMyR1o7O0ErQjcyR0E7RUFVSSxxQjVCb0tzRTtFNEJuS3RFLGdENUIvUmE7QUhzb0hqQjs7QStCbDNHQTs7RUFpQkkseUI1Qi9UYztBSHFxSGxCOztBK0J2M0dBO0VBc0JNLGlCNUIyVFE7QUgwaUdkOztBK0IzM0dBO0VBMkJJLDBCQUEwQjtBL0JvMkc5Qjs7QStCaDJHQTtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxVQUFVO0VBQ1YsbUNibE84RDtFYW1POUQseUI1QnNDa0M7RTRCckNsQyxnQkFBZ0I7RUFFaEIsZ0I1QmpFK0I7RTRCa0UvQixnQjVCN0QrQjtFNEI4RC9CLGM1QnBWZ0I7RTRCcVZoQixzQjVCNVZhO0U0QjZWYix5QjVCelZnQjtFT09kLHNCUDZOZ0M7QUh3OUdwQzs7QStCajNHQTtFQW1CSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsVUFBVTtFQUNWLGNBQWM7RUFDZCw2QmJyUDREO0Vhc1A1RCx5QjVCbUJnQztFNEJsQmhDLGdCNUI3RTZCO0U0QjhFN0IsYzVCcFdjO0U0QnFXZCxpQkFBaUI7RVQ3V2pCLHlCbkJHYztFNEI0V2Qsb0JBQW9CO0VyQm5XcEIsa0NxQm9XZ0Y7QS9CazJHcEY7O0ErQngxR0E7RUFDRSxXQUFXO0VBQ1gsY2IzUTJCO0VhNFEzQixVQUFVO0VBQ1YsNkJBQTZCO0VBQzdCLHdCQUFnQjtFQUFoQixxQkFBZ0I7RUFBaEIsZ0JBQWdCO0EvQjIxR2xCOztBK0JoMkdBO0VBUUksVUFBVTtBL0I0MUdkOztBK0JwMkdBO0VBWThCLGdFNUJ6V2I7QUhxc0hqQjs7QStCeDJHQTtFQWE4QixnRTVCMVdiO0FIeXNIakI7O0ErQjUyR0E7RUFjOEIsZ0U1QjNXYjtBSDZzSGpCOztBK0JoM0dBO0VBa0JJLFNBQVM7QS9CazJHYjs7QStCcDNHQTtFQXNCSSxXNUJtTjZDO0U0QmxON0MsWTVCa042QztFNEJqTjdDLG9CQUF5RTtFVGxaekUseUJuQjZCYTtFNEJ1WGIsUzVCa04wQztFTzFsQjFDLG1CUDJsQjZDO0VpQjdsQjNDLG9IakJ5ZitIO0VpQnpmL0gsNEdqQnlmK0g7RTRCM0dqSSx3QkFBZ0I7RUFBaEIsZ0JBQWdCO0EvQmkyR3BCOztBb0IzdUhNO0VXNFdOO0lYM1dRLHdCQUFnQjtJQUFoQixnQkFBZ0I7RXBCK3VIdEI7QUFDRjs7QStCcjRHQTtFVDFYSSx5Qm5CMm1CMkU7QUh3cEcvRTs7QStCejRHQTtFQXNDSSxXNUI0TG9DO0U0QjNMcEMsYzVCNExxQztFNEIzTHJDLGtCQUFrQjtFQUNsQixlNUIyTHVDO0U0QjFMdkMseUI1QmhhYztFNEJpYWQseUJBQXlCO0VyQnpaekIsbUJQb2xCb0M7QUg2cUd4Qzs7QStCbjVHQTtFQWlESSxXNUJ3TDZDO0U0QnZMN0MsWTVCdUw2QztFbUJubUI3Qyx5Qm5CNkJhO0U0QmlaYixTNUJ3TDBDO0VPMWxCMUMsbUJQMmxCNkM7RWlCN2xCM0MsaUhqQnlmK0g7RWlCemYvSCw0R2pCeWYrSDtFNEJqRmpJLHFCQUFnQjtFQUFoQixnQkFBZ0I7QS9CcTJHcEI7O0FvQnp3SE07RVc0V047SVgzV1EscUJBQWdCO0lBQWhCLGdCQUFnQjtFcEI2d0h0QjtBQUNGOztBK0JuNkdBO0VUMVhJLHlCbkIybUIyRTtBSHNyRy9FOztBK0J2NkdBO0VBZ0VJLFc1QmtLb0M7RTRCaktwQyxjNUJrS3FDO0U0QmpLckMsa0JBQWtCO0VBQ2xCLGU1QmlLdUM7RTRCaEt2Qyx5QjVCMWJjO0U0QjJiZCx5QkFBeUI7RXJCbmJ6QixtQlBvbEJvQztBSDJzR3hDOztBK0JqN0dBO0VBMkVJLFc1QjhKNkM7RTRCN0o3QyxZNUI2SjZDO0U0QjVKN0MsYUFBYTtFQUNiLG9CNUJ0RStCO0U0QnVFL0IsbUI1QnZFK0I7RW1CbFkvQix5Qm5CNkJhO0U0QjhhYixTNUIySjBDO0VPMWxCMUMsbUJQMmxCNkM7RWlCN2xCM0MsZ0hqQnlmK0g7RWlCemYvSCw0R2pCeWYrSDtFNEJwRGpJLGdCQUFnQjtBL0J5MkdwQjs7QW9CMXlITTtFVzRXTjtJWDNXUSxvQkFBZ0I7SUFBaEIsZ0JBQWdCO0VwQjh5SHRCO0FBQ0Y7O0ErQnA4R0E7RVQxWEkseUJuQjJtQjJFO0FIdXRHL0U7O0ErQng4R0E7RUE2RkksVzVCcUlvQztFNEJwSXBDLGM1QnFJcUM7RTRCcElyQyxrQkFBa0I7RUFDbEIsZTVCb0l1QztFNEJuSXZDLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsb0JBQTRDO0EvQisyR2hEOztBK0JsOUdBO0VBd0dJLHlCNUI5ZGM7RU9RZCxtQlBvbEJvQztBSGl2R3hDOztBK0J2OUdBO0VBNkdJLGtCQUFrQjtFQUNsQix5QjVCcGVjO0VPUWQsbUJQb2xCb0M7QUh1dkd4Qzs7QStCNzlHQTtFQW9ITSx5QjVCeGVZO0FIcTFIbEI7O0ErQmorR0E7RUF3SE0sZUFBZTtBL0I2MkdyQjs7QStCcitHQTtFQTRITSx5QjVCaGZZO0FINjFIbEI7O0ErQnorR0E7RUFnSU0sZUFBZTtBL0I2MkdyQjs7QStCNytHQTtFQW9JTSx5QjVCeGZZO0FIcTJIbEI7O0ErQngyR0E7OztFWHpmTSw0R2pCeWYrSDtBSDgyR3JJOztBb0JuMkhNO0VXcWZOOzs7SVhwZlEsZ0JBQWdCO0VwQnkySHRCO0FBQ0Y7O0FnQzEzSEE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FoQzYzSGxCOztBZ0MxM0hBO0VBQ0UsY0FBYztFQUNkLG9CN0J5cUJzQztBSG90R3hDOztBSzUzSEU7RTJCR0UscUJBQXFCO0FoQzYzSHpCOztBZ0NuNEhBO0VBV0ksYzdCWGM7RTZCWWQsb0JBQW9CO0VBQ3BCLGVBQWU7QWhDNDNIbkI7O0FnQ3AzSEE7RUFDRSxnQzdCekJnQjtBSGc1SGxCOztBZ0N4M0hBO0VBSUksbUI3QnNNNkI7RTZCck03Qiw2QkFBZ0Q7RXRCWmhELCtCUG9OZ0M7RU9uTmhDLGdDUG1OZ0M7QUhrckhwQzs7QUtqNUhFO0UyQjJCSSxxQzdCakNZO0FIMjVIbEI7O0FnQ240SEE7RUFhTSxjN0JsQ1k7RTZCbUNaLDZCQUE2QjtFQUM3Qix5QkFBeUI7QWhDMDNIL0I7O0FnQ3o0SEE7O0VBcUJJLGM3QnpDYztFNkIwQ2Qsc0I3QmpEVztFNkJrRFgsa0M3QmxEVztBSDI2SGY7O0FnQ2g1SEE7RUE0QkksZ0I3QjhLNkI7RU9qTjdCLHlCc0JxQzRCO0V0QnBDNUIsMEJzQm9DNEI7QWhDdzNIaEM7O0FnQy8ySEE7RXRCdkRJLHNCUDZOZ0M7QUg2c0hwQzs7QWdDbjNIQTs7RUFPSSxXN0J6RVc7RTZCMEVYLHlCN0I5Q2E7QUgrNUhqQjs7QWdDeDJIQTs7RUFHSSxjQUFjO0VBQ2Qsa0JBQWtCO0FoQzAySHRCOztBZ0N0MkhBOztFQUdJLGFBQWE7RUFDYixZQUFZO0VBQ1osa0JBQWtCO0FoQ3cySHRCOztBZ0MvMUhBO0VBRUksYUFBYTtBaENpMkhqQjs7QWdDbjJIQTtFQUtJLGNBQWM7QWhDazJIbEI7O0FpQ3Q4SEE7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsOEJBQThCO0VBQzlCLG9COUJnSFc7QUh5MUhiOztBaUMvOEhBOztFQVdJLGFBQWE7RUFDYixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLDhCQUE4QjtBakN5OEhsQzs7QWlDcjdIQTtFQUNFLHFCQUFxQjtFQUNyQixzQjlCaXFCK0U7RThCaHFCL0UseUI5QmdxQitFO0U4Qi9wQi9FLGtCOUJnRlc7RUNSUCxrQkF0Q1k7RTZCaENoQixvQkFBb0I7RUFDcEIsbUJBQW1CO0FqQ3c3SHJCOztBS2wrSEU7RTRCNkNFLHFCQUFxQjtBakN5N0h6Qjs7QWlDaDdIQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixnQkFBZ0I7QWpDbTdIbEI7O0FpQ3g3SEE7RUFRSSxnQkFBZ0I7RUFDaEIsZUFBZTtBakNvN0huQjs7QWlDNzdIQTtFQWFJLGdCQUFnQjtFQUNoQixXQUFXO0FqQ283SGY7O0FpQzM2SEE7RUFDRSxxQkFBcUI7RUFDckIsbUI5QndsQnVDO0U4QnZsQnZDLHNCOUJ1bEJ1QztBSHUxR3pDOztBaUNsNkhBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFHWixtQkFBbUI7QWpDbTZIckI7O0FpQy81SEE7RUFDRSx3QjlCbW1Cd0M7RUMxbEJwQyxrQkF0Q1k7RTZCK0JoQixjQUFjO0VBQ2QsNkJBQTZCO0VBQzdCLDZCQUF1QztFdkJ4R3JDLHNCUDZOZ0M7QUg4eUhwQzs7QUs3Z0lFO0U0QjhHRSxxQkFBcUI7QWpDbTZIekI7O0FpQzc1SEE7RUFDRSxxQkFBcUI7RUFDckIsWUFBWTtFQUNaLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLHFDQUFxQztBakNnNkh2Qzs7QWlDNzVIQTtFQUNFLGdCOUIra0JzQztFOEI5a0J0QyxnQkFBZ0I7QWpDZzZIbEI7O0FjdCtISTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDeTVIdkI7QUFDRjs7QWMzL0hJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQys0SGpDO0VpQ3A2SEc7SUF3QkssbUJBQW1CO0VqQys0SDNCO0VpQ3Y2SEc7SUEyQk8sa0JBQWtCO0VqQys0SDVCO0VpQzE2SEc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSHUzR3ZDO0VpQzk2SEc7O0lBc0NLLGlCQUFpQjtFakM0NEh6QjtFaUNsN0hHO0lBcURLLGlCQUFpQjtFakNnNEh6QjtFaUNyN0hHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDNjNIeEI7RWlDejdIRztJQWdFSyxhQUFhO0VqQzQzSHJCO0FBQ0Y7O0FjN2dJSTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDZzhIdkI7QUFDRjs7QWNsaUlJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQ3M3SGpDO0VpQzM4SEc7SUF3QkssbUJBQW1CO0VqQ3M3SDNCO0VpQzk4SEc7SUEyQk8sa0JBQWtCO0VqQ3M3SDVCO0VpQ2o5SEc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSDg1R3ZDO0VpQ3I5SEc7O0lBc0NLLGlCQUFpQjtFakNtN0h6QjtFaUN6OUhHO0lBcURLLGlCQUFpQjtFakN1Nkh6QjtFaUM1OUhHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDbzZIeEI7RWlDaCtIRztJQWdFSyxhQUFhO0VqQ202SHJCO0FBQ0Y7O0FjcGpJSTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDdStIdkI7QUFDRjs7QWN6a0lJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQzY5SGpDO0VpQ2wvSEc7SUF3QkssbUJBQW1CO0VqQzY5SDNCO0VpQ3IvSEc7SUEyQk8sa0JBQWtCO0VqQzY5SDVCO0VpQ3gvSEc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSHE4R3ZDO0VpQzUvSEc7O0lBc0NLLGlCQUFpQjtFakMwOUh6QjtFaUNoZ0lHO0lBcURLLGlCQUFpQjtFakM4OEh6QjtFaUNuZ0lHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDMjhIeEI7RWlDdmdJRztJQWdFSyxhQUFhO0VqQzA4SHJCO0FBQ0Y7O0FjM2xJSTtFbUJnRkM7O0lBR0ssZ0JBQWdCO0lBQ2hCLGVBQWU7RWpDOGdJdkI7QUFDRjs7QWNobklJO0VtQjZGQTtJQW9CSSxxQkFBcUI7SUFDckIsMkJBQTJCO0VqQ29nSWpDO0VpQ3poSUc7SUF3QkssbUJBQW1CO0VqQ29nSTNCO0VpQzVoSUc7SUEyQk8sa0JBQWtCO0VqQ29nSTVCO0VpQy9oSUc7SUErQk8scUI5QndoQjZCO0k4QnZoQjdCLG9COUJ1aEI2QjtFSDQrR3ZDO0VpQ25pSUc7O0lBc0NLLGlCQUFpQjtFakNpZ0l6QjtFaUN2aUlHO0lBcURLLGlCQUFpQjtFakNxL0h6QjtFaUMxaUlHO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RWpDay9IeEI7RWlDOWlJRztJQWdFSyxhQUFhO0VqQ2kvSHJCO0FBQ0Y7O0FpQ3ZqSUE7RUF5QlEscUJBQXFCO0VBQ3JCLDJCQUEyQjtBakNraUluQzs7QWlDNWpJQTs7RUFRVSxnQkFBZ0I7RUFDaEIsZUFBZTtBakN5akl6Qjs7QWlDbGtJQTtFQTZCVSxtQkFBbUI7QWpDeWlJN0I7O0FpQ3RrSUE7RUFnQ1ksa0JBQWtCO0FqQzBpSTlCOztBaUMxa0lBO0VBb0NZLHFCOUJ3aEI2QjtFOEJ2aEI3QixvQjlCdWhCNkI7QUhtaEh6Qzs7QWlDL2tJQTs7RUEyQ1UsaUJBQWlCO0FqQ3lpSTNCOztBaUNwbElBO0VBMERVLGlCQUFpQjtBakM4aEkzQjs7QWlDeGxJQTtFQThEVSx3QkFBd0I7RUFHeEIsZ0JBQWdCO0FqQzRoSTFCOztBaUM3bElBO0VBcUVVLGFBQWE7QWpDNGhJdkI7O0FpQy9nSUE7RUFFSSx5QjlCdk5XO0FId3VJZjs7QUt6dUlFO0U0QjJOSSx5QjlCMU5TO0FINHVJZjs7QWlDdmhJQTtFQVdNLHlCOUJoT1M7QUhndklmOztBS2p2SUU7RTRCb09NLHlCOUJuT087QUhvdklmOztBaUMvaElBO0VBa0JRLHlCOUJ2T087QUh3dklmOztBaUNuaUlBOzs7O0VBMEJNLHlCOUIvT1M7QUgrdklmOztBaUMxaUlBO0VBK0JJLHlCOUJwUFc7RThCcVBYLGdDOUJyUFc7QUhvd0lmOztBaUMvaUlBO0VBb0NJLG1SZjdNOEU7QWxCNHRJbEY7O0FpQ25qSUE7RUF3Q0kseUI5QjdQVztBSDR3SWY7O0FpQ3ZqSUE7RUEwQ00seUI5Qi9QUztBSGd4SWY7O0FLanhJRTtFNEJtUU0seUI5QmxRTztBSG94SWY7O0FpQzNnSUE7RUFFSSxXOUJyUlc7QUhreUlmOztBS3p4SUU7RTRCK1FJLFc5QnhSUztBSHN5SWY7O0FpQ25oSUE7RUFXTSwrQjlCOVJTO0FIMHlJZjs7QUtqeUlFO0U0QndSTSxnQzlCalNPO0FIOHlJZjs7QWlDM2hJQTtFQWtCUSxnQzlCclNPO0FIa3pJZjs7QWlDL2hJQTs7OztFQTBCTSxXOUI3U1M7QUh5eklmOztBaUN0aUlBO0VBK0JJLCtCOUJsVFc7RThCbVRYLHNDOUJuVFc7QUg4eklmOztBaUMzaUlBO0VBb0NJLHlSZmpROEU7QWxCNHdJbEY7O0FpQy9pSUE7RUF3Q0ksK0I5QjNUVztBSHMwSWY7O0FpQ25qSUE7RUEwQ00sVzlCN1RTO0FIMDBJZjs7QUtqMElFO0U0QnVUTSxXOUJoVU87QUg4MElmOztBa0NqMUlBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUVaLHFCQUFxQjtFQUNyQixzQi9CSmE7RStCS2IsMkJBQTJCO0VBQzNCLHNDL0JJYTtFT0NYLHNCUDZOZ0M7QUhrbklwQzs7QWtDNzFJQTtFQWFJLGVBQWU7RUFDZixjQUFjO0FsQ28xSWxCOztBa0NsMklBO0VBa0JJLG1CQUFtQjtFQUNuQixzQkFBc0I7QWxDbzFJMUI7O0FrQ3YySUE7RUFzQk0sbUJBQW1CO0V4QkNyQiwyQ1FtSDREO0VSbEg1RCw0Q1FrSDREO0FsQm11SWhFOztBa0M3MklBO0VBMkJNLHNCQUFzQjtFeEJVeEIsK0NRcUc0RDtFUnBHNUQsOENRb0c0RDtBbEJ5dUloRTs7QWtDbjNJQTs7RUFvQ0ksYUFBYTtBbENvMUlqQjs7QWtDaDFJQTtFQUdFLGNBQWM7RUFHZCxlQUFlO0VBQ2YsZ0IvQjh3QnlDO0FIaWtIM0M7O0FrQzMwSUE7RUFDRSxzQi9Cd3dCd0M7QUhza0gxQzs7QWtDMzBJQTtFQUNFLHFCQUErQjtFQUMvQixnQkFBZ0I7QWxDODBJbEI7O0FrQzMwSUE7RUFDRSxnQkFBZ0I7QWxDODBJbEI7O0FLbjRJRTtFNkIwREUscUJBQXFCO0FsQzYwSXpCOztBa0MvMElBO0VBTUksb0IvQnV2QnVDO0FIc2xIM0M7O0FrQ3IwSUE7RUFDRSx3Qi9COHVCeUM7RStCN3VCekMsZ0JBQWdCO0VBRWhCLHFDL0JyRWE7RStCc0ViLDZDL0J0RWE7QUg2NElmOztBa0M1MElBO0V4QmhFSSwwRHdCd0U4RTtBbEN3MElsRjs7QWtDcDBJQTtFQUNFLHdCL0JrdUJ5QztFK0JodUJ6QyxxQy9CaEZhO0UrQmlGYiwwQy9CakZhO0FIdTVJZjs7QWtDMTBJQTtFeEI1RUksMERRNEg0RDtBbEI4eEloRTs7QWtDOXpJQTtFQUNFLHVCQUFpQztFQUNqQyx1Qi9CZ3RCd0M7RStCL3NCeEMsc0JBQWdDO0VBQ2hDLGdCQUFnQjtBbENpMElsQjs7QWtDOXpJQTtFQUNFLHVCQUFpQztFQUNqQyxzQkFBZ0M7QWxDaTBJbEM7O0FrQzd6SUE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGdCL0Iyc0J5QztFTzF6QnZDLGtDUTRINEQ7QWxCb3pJaEU7O0FrQzd6SUE7OztFQUdFLGNBQWM7RUFDZCxXQUFXO0FsQ2cwSWI7O0FrQzd6SUE7O0V4QmpISSwyQ1FtSDREO0VSbEg1RCw0Q1FrSDREO0FsQmkwSWhFOztBa0M5eklBOztFeEJ4R0ksK0NRcUc0RDtFUnBHNUQsOENRb0c0RDtBbEJ1MEloRTs7QWtDNXpJQTtFQUVJLG1CL0JtckJzRDtBSDJvSDFEOztBYzc1SUk7RW9CNkZKO0lBTUksYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixtQi9CNnFCc0Q7SStCNXFCdEQsa0IvQjRxQnNEO0VIbXBIeEQ7RWtDeDBJRjtJQWFNLFlBQVk7SUFDWixrQi9CdXFCb0Q7SStCdHFCcEQsZ0JBQWdCO0lBQ2hCLGlCL0JxcUJvRDtFSHlwSHhEO0FBQ0Y7O0FrQ3J6SUE7RUFJSSxtQi9CdXBCc0Q7QUg4cEgxRDs7QWNoN0lJO0VvQnVISjtJQVFJLGFBQWE7SUFDYixtQkFBbUI7RWxDc3pJckI7RWtDL3pJRjtJQWNNLFlBQVk7SUFDWixnQkFBZ0I7RWxDb3pJcEI7RWtDbjBJRjtJQWtCUSxjQUFjO0lBQ2QsY0FBYztFbENveklwQjtFa0N2MElGO0l4QmpKSSwwQndCMEtvQztJeEJ6S3BDLDZCd0J5S29DO0VsQ2t6SXRDO0VrQzMwSUY7O0lBOEJZLDBCQUEwQjtFbENpeklwQztFa0MvMElGOztJQW1DWSw2QkFBNkI7RWxDZ3pJdkM7RWtDbjFJRjtJeEJuSUkseUJ3QjJLbUM7SXhCMUtuQyw0QndCMEttQztFbEMreUlyQztFa0N2MUlGOztJQTZDWSx5QkFBeUI7RWxDOHlJbkM7RWtDMzFJRjs7SUFrRFksNEJBQTRCO0VsQzZ5SXRDO0FBQ0Y7O0FrQ2p5SUE7RUFFSSxzQi9CNGtCc0M7QUh1dEgxQzs7QWMzOUlJO0VvQnNMSjtJQU1JLG9CL0J5bEJpQztJK0J6bEJqQyxlL0J5bEJpQztJK0J4bEJqQyx3Qi9CeWxCdUM7SStCemxCdkMsbUIvQnlsQnVDO0krQnhsQnZDLFVBQVU7SUFDVixTQUFTO0VsQ295SVg7RWtDN3lJRjtJQVlNLHFCQUFxQjtJQUNyQixXQUFXO0VsQ295SWY7QUFDRjs7QWtDM3hJQTtFQUNFLHFCQUFxQjtBbEM4eEl2Qjs7QWtDL3hJQTtFQUlJLGdCQUFnQjtBbEMreElwQjs7QWtDbnlJQTtFQU9NLGdCQUFnQjtFeEJ2T2xCLDZCd0J3T2lDO0V4QnZPakMsNEJ3QnVPaUM7QWxDaXlJckM7O0FrQ3p5SUE7RXhCOU9JLHlCd0IwUDhCO0V4QnpQOUIsMEJ3QnlQOEI7QWxDa3lJbEM7O0FrQzl5SUE7RXhCdlBJLGdCd0J1UTBCO0VBQ3hCLG1CL0I5QzJCO0FIZzFJakM7O0FtQzVqSkE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLHFCaENpaUNzQztFZ0NoaUN0QyxtQmhDbWlDc0M7RWdDamlDdEMsZ0JBQWdCO0VBQ2hCLHlCaENFZ0I7RU9TZCxzQlA2TmdDO0FIdTFJcEM7O0FtQzNqSkE7RUFHSSxvQmhDdWhDcUM7QUhxaUh6Qzs7QW1DL2pKQTtFQU1NLFdBQVc7RUFDWCxxQmhDbWhDbUM7RWdDbGhDbkMsY2hDTlk7RWdDT1osWWhDd2hDdUM7QUhxaUg3Qzs7QW1DdGtKQTtFQW9CSSwwQkFBMEI7QW5Dc2pKOUI7O0FtQzFrSkE7RUF3QkkscUJBQXFCO0FuQ3NqSnpCOztBbUM5a0pBO0VBNEJJLGNoQzFCYztBSGdsSmxCOztBb0M3bEpBO0VBQ0UsYUFBYTtFN0JHYixlQUFlO0VBQ2YsZ0JBQWdCO0VHYWQsc0JQNk5nQztBSHEzSXBDOztBb0M5bEpBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCx1QmpDZ3hCd0M7RWlDL3dCeEMsaUJqQ2tPK0I7RWlDak8vQixpQmpDbXhCc0M7RWlDbHhCdEMsY2pDdUJlO0VpQ3JCZixzQmpDUGE7RWlDUWIseUJqQ0xnQjtBSHFtSmxCOztBb0N6bUpBO0VBWUksVUFBVTtFQUNWLGNqQzhKOEQ7RWlDN0o5RCxxQkFBcUI7RUFDckIseUJqQ1pjO0VpQ2FkLHFCakNaYztBSDZtSmxCOztBb0NqbkpBO0VBb0JJLFVBQVU7RUFDVixVakMyd0JpQztFaUMxd0JqQyxnRGpDT2E7QUgwbEpqQjs7QW9DN2xKQTtFQUdNLGNBQWM7RTFCYWhCLCtCUCtMZ0M7RU85TGhDLGtDUDhMZ0M7QUhvNUlwQzs7QW9Dbm1KQTtFMUJFSSxnQ1A2TWdDO0VPNU1oQyxtQ1A0TWdDO0FIeTVJcEM7O0FvQ3htSkE7RUFjSSxVQUFVO0VBQ1YsV2pDeENXO0VpQ3lDWCx5QmpDYmE7RWlDY2IscUJqQ2RhO0FING1KakI7O0FvQy9tSkE7RUFxQkksY2pDeENjO0VpQ3lDZCxvQkFBb0I7RUFFcEIsWUFBWTtFQUNaLHNCakNsRFc7RWlDbURYLHFCakNoRGM7QUg2b0psQjs7QXFDcHBKRTtFQUNFLHVCbEN5eEJzQztFQzlwQnBDLGtCQXRDWTtFaUNuRmQsZ0JsQ21PNkI7QUhvN0lqQzs7QXFDbHBKTTtFM0JxQ0YsOEJQZ00rQjtFTy9ML0IsaUNQK0wrQjtBSGs3SW5DOztBcUNscEpNO0UzQmtCRiwrQlA4TStCO0VPN00vQixrQ1A2TStCO0FIdTdJbkM7O0FxQ3BxSkU7RUFDRSx1QmxDdXhCcUM7RUM1cEJuQyxtQkF0Q1k7RWlDbkZkLGdCbENvTzZCO0FIbThJakM7O0FxQ2xxSk07RTNCcUNGLDhCUGlNK0I7RU9oTS9CLGlDUGdNK0I7QUhpOEluQzs7QXFDbHFKTTtFM0JrQkYsK0JQK00rQjtFTzlNL0Isa0NQOE0rQjtBSHM4SW5DOztBc0NsckpBO0VBQ0UscUJBQXFCO0VBQ3JCLHFCbkMwNUJzQztFQ3oxQnBDLGNBQVc7RWtDL0RiLGdCbkN1UitCO0VtQ3RSL0IsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsd0JBQXdCO0U1Qkt0QixzQlA2TmdDO0VpQi9OOUIscUlqQmdiNkk7QUhvd0luSjs7QW9CaHJKTTtFa0JmTjtJbEJnQlEsZ0JBQWdCO0VwQm9ySnRCO0FBQ0Y7O0FLMXJKRTtFaUNHSSxxQkFBcUI7QXRDMnJKM0I7O0FzQ3pzSkE7RUFvQkksYUFBYTtBdEN5ckpqQjs7QXNDcHJKQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0F0Q3VySlg7O0FzQ2hySkE7RUFDRSxvQm5DKzNCc0M7RW1DOTNCdEMsbUJuQzgzQnNDO0VPcjVCcEMsb0JQdzVCcUM7QUhtekh6Qzs7QXNDM3FKRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDaUNlO0FIK3JKakI7O0FLbHRKRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QXZDZ3VKeEM7O0F1Q251SlU7RUFRSixVQUFVO0VBQ1YsK0NwQ3NCVztBSHlzSmpCOztBc0MxckpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENXZ0I7QUhvdUpsQjs7QUtqdUpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBdkMrdUp4Qzs7QXVDbHZKVTtFQVFKLFVBQVU7RUFDVixpRHBDQVk7QUg4dUpsQjs7QXNDenNKRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDd0NlO0FIc3RKakI7O0FLaHZKRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QXZDOHZKeEM7O0F1Q2p3SlU7RUFRSixVQUFVO0VBQ1YsK0NwQzZCVztBSGd1SmpCOztBc0N4dEpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcEMwQ2U7QUhtdUpqQjs7QUsvdkpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBdkM2d0p4Qzs7QXVDaHhKVTtFQVFKLFVBQVU7RUFDVixnRHBDK0JXO0FINnVKakI7O0FzQ3Z1SkU7RUNqREEsY3BDZWdCO0VvQ2RoQix5QnBDdUNlO0FIcXZKakI7O0FLOXdKRTtFa0NWSSxjcENVWTtFb0NUWix5QkFBa0M7QXZDNHhKeEM7O0F1Qy94SlU7RUFRSixVQUFVO0VBQ1YsK0NwQzRCVztBSCt2SmpCOztBc0N0dkpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENxQ2U7QUhzd0pqQjs7QUs3eEpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBdkMyeUp4Qzs7QXVDOXlKVTtFQVFKLFVBQVU7RUFDViwrQ3BDMEJXO0FIZ3hKakI7O0FzQ3J3SkU7RUNqREEsY3BDZWdCO0VvQ2RoQix5QnBDTWdCO0FIb3pKbEI7O0FLNXlKRTtFa0NWSSxjcENVWTtFb0NUWix5QkFBa0M7QXZDMHpKeEM7O0F1Qzd6SlU7RUFRSixVQUFVO0VBQ1YsaURwQ0xZO0FIOHpKbEI7O0FzQ3B4SkU7RUNqREEsV3BDTWE7RW9DTGIseUJwQ2FnQjtBSDR6SmxCOztBSzN6SkU7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F2Q3kwSnhDOztBdUM1MEpVO0VBUUosVUFBVTtFQUNWLDhDcENFWTtBSHMwSmxCOztBd0NyMUpBO0VBQ0Usa0JBQW9EO0VBQ3BELG1CckN1ekJzQztFcUNyekJ0Qyx5QnJDS2dCO0VPU2QscUJQOE4rQjtBSDRtSm5DOztBY2h5Skk7RTBCNURKO0lBUUksa0JyQ2l6Qm9DO0VId2lJdEM7QUFDRjs7QXdDdDFKQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0U5QkliLGdCOEJIc0I7QXhDeTFKMUI7O0F5Q3AySkE7RUFDRSxrQkFBa0I7RUFDbEIsd0J0Q3U5QnlDO0VzQ3Q5QnpDLG1CdEN1OUJzQztFc0N0OUJ0Qyw2QkFBNkM7RS9CVTNDLHNCUDZOZ0M7QUhpb0pwQzs7QXlDbjJKQTtFQUVFLGNBQWM7QXpDcTJKaEI7O0F5Q2oySkE7RUFDRSxnQnRDNFErQjtBSHdsSmpDOztBeUM1MUpBO0VBQ0UsbUJBQXNEO0F6QysxSnhEOztBeUNoMkpBO0VBS0ksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsVUFBVTtFQUNWLHdCdEN3N0J1QztFc0N2N0J2QyxjQUFjO0F6QysxSmxCOztBeUNyMUpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJreUpsRTs7QTBDdDRKRTtFQUNFLHlCQUFxQztBMUN5NEp6Qzs7QTBDdDRKRTtFQUNFLGNBQTBCO0ExQ3k0SjlCOztBeUNuMkpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJnekpsRTs7QTBDcDVKRTtFQUNFLHlCQUFxQztBMUN1NUp6Qzs7QTBDcDVKRTtFQUNFLGNBQTBCO0ExQ3U1SjlCOztBeUNqM0pFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEI4ekpsRTs7QTBDbDZKRTtFQUNFLHlCQUFxQztBMUNxNkp6Qzs7QTBDbDZKRTtFQUNFLGNBQTBCO0ExQ3E2SjlCOztBeUMvM0pFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEI0MEpsRTs7QTBDaDdKRTtFQUNFLHlCQUFxQztBMUNtN0p6Qzs7QTBDaDdKRTtFQUNFLGNBQTBCO0ExQ203SjlCOztBeUM3NEpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEIwMUpsRTs7QTBDOTdKRTtFQUNFLHlCQUFxQztBMUNpOEp6Qzs7QTBDOTdKRTtFQUNFLGNBQTBCO0ExQ2k4SjlCOztBeUMzNUpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJ3MkpsRTs7QTBDNThKRTtFQUNFLHlCQUFxQztBMUMrOEp6Qzs7QTBDNThKRTtFQUNFLGNBQTBCO0ExQys4SjlCOztBeUN6NkpFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJzM0psRTs7QTBDMTlKRTtFQUNFLHlCQUFxQztBMUM2OUp6Qzs7QTBDMTlKRTtFQUNFLGNBQTBCO0ExQzY5SjlCOztBeUN2N0pFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBbEJvNEpsRTs7QTBDeCtKRTtFQUNFLHlCQUFxQztBMUMyK0p6Qzs7QTBDeCtKRTtFQUNFLGNBQTBCO0ExQzIrSjlCOztBMkNuL0pFO0VBQ0U7SUFBTywyQkFBdUM7RTNDdS9KaEQ7RTJDdC9KRTtJQUFLLHdCQUF3QjtFM0N5L0ovQjtBQUNGOztBMkM1L0pFO0VBQ0U7SUFBTywyQkFBdUM7RTNDdS9KaEQ7RTJDdC9KRTtJQUFLLHdCQUF3QjtFM0N5L0ovQjtBQUNGOztBMkN0L0pBO0VBQ0UsYUFBYTtFQUNiLFl4Q2crQnNDO0V3Qy85QnRDLGdCQUFnQjtFQUNoQixjQUFjO0V2Q21IVixrQkF0Q1k7RXVDM0VoQix5QnhDTGdCO0VPU2Qsc0JQNk5nQztBSHl4SnBDOztBMkNyL0pBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsZ0JBQWdCO0VBQ2hCLFd4Q2pCYTtFd0NrQmIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QnhDUWU7RWlCbkJYLDJCakJrK0I0QztBSGtpSWxEOztBb0JoZ0tNO0V1QkROO0l2QkVRLGdCQUFnQjtFcEJvZ0t0QjtBQUNGOztBMkMzL0pBO0VyQllFLHFNQUE2STtFcUJWN0ksMEJ4Q3k4QnNDO0FIcWpJeEM7O0EyQzEvSkU7RUFDRSwwREFBOEQ7RUFBOUQsa0RBQThEO0EzQzYvSmxFOztBMkMxL0pNO0VBSko7SUFLTSx1QkFBZTtJQUFmLGVBQWU7RTNDOC9KckI7QUFDRjs7QTRDemlLQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7QTVDNGlLekI7O0E0Q3ppS0E7RUFDRSxPQUFPO0E1QzRpS1Q7O0E2QzlpS0E7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBR3RCLGVBQWU7RUFDZixnQkFBZ0I7RW5DUWQsc0JQNk5nQztBSDIwSnBDOztBNkN0aUtBO0VBQ0UsV0FBVztFQUNYLGMxQ1JnQjtFMENTaEIsbUJBQW1CO0E3Q3lpS3JCOztBS2hqS0U7RXdDV0UsVUFBVTtFQUNWLGMxQ2RjO0UwQ2VkLHFCQUFxQjtFQUNyQix5QjFDdEJjO0FIK2pLbEI7O0E2Q25qS0E7RUFjSSxjMUNsQmM7RTBDbUJkLHlCMUMxQmM7QUhta0tsQjs7QTZDaGlLQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsd0IxQys4QnlDO0UwQzU4QnpDLHNCMUMzQ2E7RTBDNENiLHNDMUNsQ2E7QUhta0tmOztBNkN4aUtBO0VuQ2pCSSwrQm1DMkJrQztFbkMxQmxDLGdDbUMwQmtDO0E3Q21pS3RDOztBNkM3aUtBO0VuQ0hJLG1DbUNpQnFDO0VuQ2hCckMsa0NtQ2dCcUM7QTdDb2lLekM7O0E2Q2xqS0E7RUFtQkksYzFDbERjO0UwQ21EZCxvQkFBb0I7RUFDcEIsc0IxQzFEVztBSDZsS2Y7O0E2Q3hqS0E7RUEwQkksVUFBVTtFQUNWLFcxQ2hFVztFMENpRVgseUIxQ3JDYTtFMENzQ2IscUIxQ3RDYTtBSHdrS2pCOztBNkMvaktBO0VBaUNJLG1CQUFtQjtBN0NraUt2Qjs7QTZDbmtLQTtFQW9DTSxnQjFDNEoyQjtFMEMzSjNCLHFCMUMySjJCO0FIdzRKakM7O0E2Q3JoS0k7RUFDRSxtQkFBbUI7QTdDd2hLekI7O0E2Q3poS0k7RW5DdEJBLGtDUHNLZ0M7RU9sTGhDLDBCbUN3Q3dDO0E3Q3doSzVDOztBNkM5aEtJO0VuQ2xDQSxnQ1BrTGdDO0VPdEtoQyw0Qm1DaUMwQztBN0N3aEs5Qzs7QTZDbmlLSTtFQWVNLGFBQWE7QTdDd2hLdkI7O0E2Q3ZpS0k7RUFtQk0scUIxQzBIdUI7RTBDekh2QixvQkFBb0I7QTdDd2hLOUI7O0E2QzVpS0k7RUF1QlEsaUIxQ3NIcUI7RTBDckhyQixzQjFDcUhxQjtBSG82SmpDOztBY3BsS0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U3Q3FqS3ZCO0U2Q3RqS0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U3Q29qSzFDO0U2QzFqS0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U3Q21qSzVDO0U2QzlqS0U7SUFlTSxhQUFhO0U3Q2tqS3JCO0U2Q2prS0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTdDaWpLNUI7RTZDcmtLRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VINDdKL0I7QUFDRjs7QWM3bUtJO0UrQm1DQTtJQUNFLG1CQUFtQjtFN0M4a0t2QjtFNkMva0tFO0luQ3RCQSxrQ1BzS2dDO0lPbExoQywwQm1Dd0N3QztFN0M2a0sxQztFNkNubEtFO0luQ2xDQSxnQ1BrTGdDO0lPdEtoQyw0Qm1DaUMwQztFN0M0a0s1QztFNkN2bEtFO0lBZU0sYUFBYTtFN0Mya0tyQjtFNkMxbEtFO0lBbUJNLHFCMUMwSHVCO0kwQ3pIdkIsb0JBQW9CO0U3QzBrSzVCO0U2QzlsS0U7SUF1QlEsaUIxQ3NIcUI7STBDckhyQixzQjFDcUhxQjtFSHE5Si9CO0FBQ0Y7O0FjdG9LSTtFK0JtQ0E7SUFDRSxtQkFBbUI7RTdDdW1LdkI7RTZDeG1LRTtJbkN0QkEsa0NQc0tnQztJT2xMaEMsMEJtQ3dDd0M7RTdDc21LMUM7RTZDNW1LRTtJbkNsQ0EsZ0NQa0xnQztJT3RLaEMsNEJtQ2lDMEM7RTdDcW1LNUM7RTZDaG5LRTtJQWVNLGFBQWE7RTdDb21LckI7RTZDbm5LRTtJQW1CTSxxQjFDMEh1QjtJMEN6SHZCLG9CQUFvQjtFN0NtbUs1QjtFNkN2bktFO0lBdUJRLGlCMUNzSHFCO0kwQ3JIckIsc0IxQ3FIcUI7RUg4K0ovQjtBQUNGOztBYy9wS0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U3Q2dvS3ZCO0U2Q2pvS0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U3QytuSzFDO0U2Q3JvS0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U3QzhuSzVDO0U2Q3pvS0U7SUFlTSxhQUFhO0U3QzZuS3JCO0U2QzVvS0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTdDNG5LNUI7RTZDaHBLRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VIdWdLL0I7QUFDRjs7QTZDL21LQTtFbkNuSEksZ0JtQ29Ic0I7QTdDa25LMUI7O0E2Q25uS0E7RUFJSSxxQjFDbUc2QjtBSGdoS2pDOztBNkN2bktBO0VBT00sc0JBQXNCO0E3Q29uSzVCOztBOEM3dktFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FsQjRwS2xFOztBS3J2S0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBOUNnd0tqRDs7QThDdndLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QWxCdXFLbEU7O0E4Qzd3S0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QWxCNHFLbEU7O0FLcndLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0E5Q2d4S2pEOztBOEN2eEtFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbEJ1cktsRTs7QThDN3hLRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbEI0cktsRTs7QUtyeEtFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QTlDZ3lLakQ7O0E4Q3Z5S0U7RUFXTSxXM0NQTztFMkNRUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FsQnVzS2xFOztBOEM3eUtFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FsQjRzS2xFOztBS3J5S0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBOUNnektqRDs7QThDdnpLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QWxCdXRLbEU7O0E4Qzd6S0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QWxCNHRLbEU7O0FLcnpLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0E5Q2cwS2pEOztBOEN2MEtFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbEJ1dUtsRTs7QThDNzBLRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbEI0dUtsRTs7QUtyMEtFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QTlDZzFLakQ7O0E4Q3YxS0U7RUFXTSxXM0NQTztFMkNRUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FsQnV2S2xFOztBOEM3MUtFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FsQjR2S2xFOztBS3IxS0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBOUNnMktqRDs7QThDdjJLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QWxCdXdLbEU7O0E4QzcyS0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QWxCNHdLbEU7O0FLcjJLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0E5Q2czS2pEOztBOEN2M0tFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbEJ1eEtsRTs7QStDaDRLQTtFQUNFLFlBQVk7RTNDOEhSLGlCQXRDWTtFMkN0RmhCLGdCNUM2UitCO0U0QzVSL0IsY0FBYztFQUNkLFc1Q1lhO0U0Q1hiLHlCNUNDYTtFNENBYixXQUFXO0EvQ200S2I7O0FLOTNLRTtFMENERSxXNUNNVztFNENMWCxxQkFBcUI7QS9DbTRLekI7O0FLLzNLRTtFMENDSSxZQUFZO0EvQ2s0S2xCOztBK0N2M0tBO0VBQ0UsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTO0EvQzAzS1g7O0ErQ3AzS0E7RUFDRSxvQkFBb0I7QS9DdTNLdEI7O0FnRDc1S0E7RUFHRSxpQjdDeTRCdUM7RTZDeDRCdkMsZ0I3Q3c0QnVDO0VDN3dCbkMsbUJBdENZO0U0Q2xGaEIsMkM3Q0FhO0U2Q0NiLDRCQUE0QjtFQUM1QixvQzdDMDRCbUQ7RTZDejRCbkQsZ0Q3Q09hO0U2Q05iLFVBQVU7RXRDT1Isc0JQazRCc0M7QUhxaEoxQzs7QWdEejZLQTtFQWVJLHNCN0M4M0JzQztBSGdpSjFDOztBZ0Q3NktBO0VBbUJJLFVBQVU7QWhEODVLZDs7QWdEajdLQTtFQXVCSSxjQUFjO0VBQ2QsVUFBVTtBaEQ4NUtkOztBZ0R0N0tBO0VBNEJJLGFBQWE7QWhEODVLakI7O0FnRDE1S0E7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHdCN0MwMkJ3QztFNkN6MkJ4QyxjN0N2QmdCO0U2Q3dCaEIsMkM3QzlCYTtFNkMrQmIsNEJBQTRCO0VBQzVCLDRDN0NrM0JvRDtFTzkzQmxELDJDUW1INEQ7RVJsSDVELDRDUWtINEQ7QWxCd3pLaEU7O0FnRDM1S0E7RUFDRSxnQjdDaTJCd0M7QUg2akoxQzs7QWlEcDhLQTtFQUVFLGdCQUFnQjtBakRzOEtsQjs7QWlEeDhLQTtFQUtJLGtCQUFrQjtFQUNsQixnQkFBZ0I7QWpEdThLcEI7O0FpRGw4S0E7RUFDRSxlQUFlO0VBQ2YsTUFBTTtFQUNOLE9BQU87RUFDUCxhOUMycEJzQztFOEMxcEJ0QyxhQUFhO0VBQ2IsV0FBVztFQUNYLFlBQVk7RUFDWixnQkFBZ0I7RUFHaEIsVUFBVTtBakRtOEtaOztBaUQ1N0tBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxjOUMrNEJ1QztFOEM3NEJ2QyxvQkFBb0I7QWpEODdLdEI7O0FpRDM3S0U7RTdCM0JJLG1DakJvOEJvRDtFOEN2NkJ0RCw4QjlDcTZCbUQ7QUh5aEp2RDs7QW9CdjlLTTtFNkJ1Qko7STdCdEJNLGdCQUFnQjtFcEIyOUt0QjtBQUNGOztBaURsOEtFO0VBQ0UsZTlDbTZCb0M7QUhraUp4Qzs7QWlEajhLRTtFQUNFLHNCOUNnNkIyQztBSG9pSi9DOztBaURoOEtBO0VBQ0UsYUFBYTtFQUNiLDZCL0JtRjhEO0FsQmczS2hFOztBaURyOEtBO0VBS0ksOEIvQmdGNEQ7RStCL0U1RCxnQkFBZ0I7QWpEbzhLcEI7O0FpRDE4S0E7O0VBV0ksY0FBYztBakRvOEtsQjs7QWlELzhLQTtFQWVJLGdCQUFnQjtBakRvOEtwQjs7QWlEaDhLQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsNkIvQitEOEQ7QWxCbzRLaEU7O0FpRHQ4S0E7RUFPSSxjQUFjO0VBQ2QsMEIvQjBENEQ7RStCekQ1RCwyQkFBbUI7RUFBbkIsd0JBQW1CO0VBQW5CLG1CQUFtQjtFQUNuQixXQUFXO0FqRG04S2Y7O0FpRDc4S0E7RUFlSSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLFlBQVk7QWpEazhLaEI7O0FpRG45S0E7RUFvQk0sZ0JBQWdCO0FqRG04S3RCOztBaUR2OUtBO0VBd0JNLGFBQWE7QWpEbThLbkI7O0FpRDc3S0E7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixXQUFXO0VBR1gsb0JBQW9CO0VBQ3BCLHNCOUMzR2E7RThDNEdiLDRCQUE0QjtFQUM1QixvQzlDbkdhO0VPQ1gscUJQOE4rQjtFOEN4SGpDLFVBQVU7QWpENDdLWjs7QWlEeDdLQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLGE5QytpQnNDO0U4QzlpQnRDLFlBQVk7RUFDWixhQUFhO0VBQ2Isc0I5Q2xIYTtBSDZpTGY7O0FpRGw4S0E7RUFVVyxVQUFVO0FqRDQ3S3JCOztBaUR0OEtBO0VBV1csWTlDNnpCMkI7QUhrb0p0Qzs7QWlEMTdLQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsOEJBQThCO0VBQzlCLGtCOUMwekJzQztFOEN6ekJ0QyxnQzlDdklnQjtFT2lCZCwwQ1FtSDREO0VSbEg1RCwyQ1FrSDREO0FsQms4S2hFOztBaURwOEtBO0VBU0ksa0I5Q3F6Qm9DO0U4Q256QnBDLDhCQUE2RjtBakQ4N0tqRzs7QWlEejdLQTtFQUNFLGdCQUFnQjtFQUNoQixnQjlDc0krQjtBSHN6S2pDOztBaUR2N0tBO0VBQ0Usa0JBQWtCO0VBR2xCLGNBQWM7RUFDZCxhOUN3d0JzQztBSGdySnhDOztBaURwN0tBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGdCQUFnRTtFQUNoRSw2QjlDeEtnQjtFTytCZCw4Q1FxRzREO0VScEc1RCw2Q1FvRzREO0FsQjY5S2hFOztBaUQvN0tBO0VBYUksZUFBd0M7QWpEczdLNUM7O0FpRGo3S0E7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxZQUFZO0VBQ1osZ0JBQWdCO0FqRG83S2xCOztBYzNqTEk7RW1DekJKO0lBdUtJLGdCOUNxd0JxQztJOENwd0JyQyxvQkFBeUM7RWpEazdLM0M7RWlEcGtMRjtJQXNKSSwrQi9CakU0RDtFbEJrL0s5RDtFaUR2a0xGO0lBeUpNLGdDL0JwRTBEO0VsQnEvSzlEO0VpRHZqTEY7SUEySUksK0IvQnpFNEQ7RWxCdy9LOUQ7RWlEMWpMRjtJQThJTSw0Qi9CNUUwRDtJK0I2RTFELDJCQUFtQjtJQUFuQix3QkFBbUI7SUFBbkIsbUJBQW1CO0VqRCs2S3ZCO0VpRHY2S0E7SUFBWSxnQjlDNnVCMkI7RUg2ckp2QztBQUNGOztBY2xsTEk7RW1DMktGOztJQUVFLGdCOUNxdUJxQztFSHNzSnZDO0FBQ0Y7O0FjemxMSTtFbUNrTEY7SUFBWSxpQjlDK3RCNEI7RUg2c0p4QztBQUNGOztBa0QxcExBO0VBQ0Usa0JBQWtCO0VBQ2xCLGEvQytxQnNDO0UrQzlxQnRDLGNBQWM7RUFDZCxTL0MyMUJtQztFZ0QvMUJuQyxxTmhEbVJvTztFZ0RqUnBPLGtCQUFrQjtFQUNsQixnQmhEMlIrQjtFZ0QxUi9CLGdCaEQrUitCO0VnRDlSL0IsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsZ0JBQWdCO0UvQ2dIWixtQkF0Q1k7RThDOUVoQixxQkFBcUI7RUFDckIsVUFBVTtBbER1cUxaOztBa0RsckxBO0VBYVcsWS9DKzBCMkI7QUgwMUp0Qzs7QWtEdHJMQTtFQWdCSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGEvQyswQnFDO0UrQzkwQnJDLGMvQyswQnFDO0FIMjFKekM7O0FrRDdyTEE7RUFzQk0sa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCx5QkFBeUI7RUFDekIsbUJBQW1CO0FsRDJxTHpCOztBa0R0cUxBO0VBQ0UsaUJBQWdDO0FsRHlxTGxDOztBa0QxcUxBO0VBSUksU0FBUztBbEQwcUxiOztBa0Q5cUxBO0VBT00sTUFBTTtFQUNOLDZCQUFnRTtFQUNoRSxzQi9DdkJTO0FIa3NMZjs7QWtEdHFMQTtFQUNFLGlCL0NxekJ1QztBSG8zSnpDOztBa0QxcUxBO0VBSUksT0FBTztFQUNQLGEvQ2l6QnFDO0UrQ2h6QnJDLGMvQyt5QnFDO0FIMjNKekM7O0FrRGhyTEE7RUFTTSxRQUFRO0VBQ1Isb0NBQTJGO0VBQzNGLHdCL0N2Q1M7QUhrdExmOztBa0R0cUxBO0VBQ0UsaUJBQWdDO0FsRHlxTGxDOztBa0QxcUxBO0VBSUksTUFBTTtBbEQwcUxWOztBa0Q5cUxBO0VBT00sU0FBUztFQUNULDZCL0M4eEJtQztFK0M3eEJuQyx5Qi9DckRTO0FIZ3VMZjs7QWtEdHFMQTtFQUNFLGlCL0N1eEJ1QztBSGs1SnpDOztBa0QxcUxBO0VBSUksUUFBUTtFQUNSLGEvQ214QnFDO0UrQ2x4QnJDLGMvQ2l4QnFDO0FIeTVKekM7O0FrRGhyTEE7RUFTTSxPQUFPO0VBQ1Asb0MvQzh3Qm1DO0UrQzd3Qm5DLHVCL0NyRVM7QUhndkxmOztBa0R0cExBO0VBQ0UsZ0IvQzZ1QnVDO0UrQzV1QnZDLHVCL0NrdkJ1QztFK0NqdkJ2QyxXL0N2R2E7RStDd0diLGtCQUFrQjtFQUNsQixzQi9DL0ZhO0VPQ1gsc0JQNk5nQztBSDJoTHBDOztBb0Qxd0xBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsYWpENnFCc0M7RWlENXFCdEMsY0FBYztFQUNkLGdCakQ2MkJ1QztFZ0RsM0J2QyxxTmhEbVJvTztFZ0RqUnBPLGtCQUFrQjtFQUNsQixnQmhEMlIrQjtFZ0QxUi9CLGdCaEQrUitCO0VnRDlSL0IsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsZ0JBQWdCO0UvQ2dIWixtQkF0Q1k7RWdEN0VoQixxQkFBcUI7RUFDckIsc0JqRE5hO0VpRE9iLDRCQUE0QjtFQUM1QixvQ2pERWE7RU9DWCxxQlA4TitCO0FIdWpMbkM7O0FvRHZ5TEE7RUFvQkksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxXakQ2MkJvQztFaUQ1MkJwQyxjakQ2MkJxQztFaUQ1MkJyQyxnQmpEd04rQjtBSCtqTG5DOztBb0QveUxBO0VBNEJNLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLHlCQUF5QjtFQUN6QixtQkFBbUI7QXBEdXhMekI7O0FvRGx4TEE7RUFDRSxxQmpEODFCdUM7QUh1N0p6Qzs7QW9EdHhMQTtFQUlJLDJCbENxRzREO0FsQmlyTGhFOztBb0QxeExBO0VBT00sU0FBUztFQUNULDZCQUFnRTtFQUNoRSxxQ2pEeTFCaUU7QUg4N0p2RTs7QW9EaHlMQTtFQWFNLFdqRDBMMkI7RWlEekwzQiw2QkFBZ0U7RUFDaEUsc0JqRDdDUztBSG8wTGY7O0FvRGx4TEE7RUFDRSxtQmpEMDBCdUM7QUgyOEp6Qzs7QW9EdHhMQTtFQUlJLHlCbENpRjREO0VrQ2hGNUQsYWpEczBCcUM7RWlEcjBCckMsWWpEbzBCb0M7RWlEbjBCcEMsZ0JBQWdDO0FwRHN4THBDOztBb0Q3eExBO0VBVU0sT0FBTztFQUNQLG9DQUEyRjtFQUMzRix1Q2pEazBCaUU7QUhxOUp2RTs7QW9EbnlMQTtFQWdCTSxTakRtSzJCO0VpRGxLM0Isb0NBQTJGO0VBQzNGLHdCakRwRVM7QUgyMUxmOztBb0RseExBO0VBQ0Usa0JqRG16QnVDO0FIaytKekM7O0FvRHR4TEE7RUFJSSx3QmxDMEQ0RDtBbEI0dExoRTs7QW9EMXhMQTtFQU9NLE1BQU07RUFDTixvQ0FBMkY7RUFDM0Ysd0NqRDh5QmlFO0FIeStKdkU7O0FvRGh5TEE7RUFhTSxRakQrSTJCO0VpRDlJM0Isb0NBQTJGO0VBQzNGLHlCakR4RlM7QUgrMkxmOztBb0R0eUxBO0VBcUJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULGNBQWM7RUFDZCxXakQweEJvQztFaUR6eEJwQyxvQkFBc0M7RUFDdEMsV0FBVztFQUNYLGdDakQ4d0J1RDtBSHVnSzNEOztBb0RqeExBO0VBQ0Usb0JqRG14QnVDO0FIaWdLekM7O0FvRHJ4TEE7RUFJSSwwQmxDMEI0RDtFa0N6QjVELGFqRCt3QnFDO0VpRDl3QnJDLFlqRDZ3Qm9DO0VpRDV3QnBDLGdCQUFnQztBcERxeExwQzs7QW9ENXhMQTtFQVVNLFFBQVE7RUFDUixvQ2pEeXdCbUM7RWlEeHdCbkMsc0NqRDJ3QmlFO0FIMmdLdkU7O0FvRGx5TEE7RUFnQk0sVWpENEcyQjtFaUQzRzNCLG9DakRtd0JtQztFaURsd0JuQyx1QmpEM0hTO0FIaTVMZjs7QW9EaHdMQTtFQUNFLHVCakRvdUJ3QztFaURudUJ4QyxnQkFBZ0I7RWhEM0JaLGVBdENZO0VnRG9FaEIseUJqRDZ0QnlEO0VpRDV0QnpELGdDQUF5RTtFMUNuSXZFLDBDUW1INEQ7RVJsSDVELDJDUWtINEQ7QWxCb3hMaEU7O0FvRDF3TEE7RUFVSSxhQUFhO0FwRG93TGpCOztBb0Rod0xBO0VBQ0UsdUJqRHN0QndDO0VpRHJ0QnhDLGNqRHhKZ0I7QUgyNUxsQjs7QXFEOTVMQTtFQUNFLGtCQUFrQjtBckRpNkxwQjs7QXFEOTVMQTtFQUNFLG1CQUFtQjtBckRpNkxyQjs7QXFEOTVMQTtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsZ0JBQWdCO0FyRGk2TGxCOztBc0R4N0xFO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F0RDI3TGY7O0FxRG42TEE7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLFdBQVc7RUFDWCxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLG1DQUEyQjtFQUEzQiwyQkFBMkI7RWpDbEJ2QixzQ2pCeWpDa0Y7QUhnNEp4Rjs7QW9CcjdMTTtFaUNRTjtJakNQUSxnQkFBZ0I7RXBCeTdMdEI7QUFDRjs7QXFEejZMQTs7O0VBR0UsY0FBYztBckQ0NkxoQjs7QXFEejZMQTs7RUFFRSwyQkFBMkI7QXJENDZMN0I7O0FxRHo2TEE7O0VBRUUsNEJBQTRCO0FyRDQ2TDlCOztBcURwNkxBO0VBRUksVUFBVTtFQUNWLDRCQUE0QjtFQUM1QixlQUFlO0FyRHM2TG5COztBcUQxNkxBOzs7RUFVSSxVQUFVO0VBQ1YsVUFBVTtBckRzNkxkOztBcURqN0xBOztFQWdCSSxVQUFVO0VBQ1YsVUFBVTtFakM1RFIsMkJqQndqQ2tDO0FIMjZKeEM7O0FvQi85TE07RWlDdUNOOztJakN0Q1EsZ0JBQWdCO0VwQm8rTHRCO0FBQ0Y7O0FxRHA2TEE7O0VBRUUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsVUFBVTtFQUVWLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLFVsRG85QnNDO0VrRG45QnRDLFdsRDFGYTtFa0QyRmIsa0JBQWtCO0VBQ2xCLFlsRGs5QnFDO0VpQnJpQ2pDLDhCakJ1aUNnRDtBSG05SnREOztBb0J0L0xNO0VpQ2tFTjs7SWpDakVRLGdCQUFnQjtFcEIyL0x0QjtBQUNGOztBS2pnTUU7OztFZ0R3RkUsV2xEakdXO0VrRGtHWCxxQkFBcUI7RUFDckIsVUFBVTtFQUNWLFlsRDI4Qm1DO0FIbytKdkM7O0FxRDU2TEE7RUFDRSxPQUFPO0FyRCs2TFQ7O0FxRDE2TEE7RUFDRSxRQUFRO0FyRDY2TFY7O0FxRHQ2TEE7O0VBRUUscUJBQXFCO0VBQ3JCLFdsRG84QnVDO0VrRG44QnZDLFlsRG04QnVDO0VrRGw4QnZDLHFDQUFxQztBckR5Nkx2Qzs7QXFEdjZMQTtFQUNFLHNObkN2RWdGO0FsQmkvTGxGOztBcUR4NkxBO0VBQ0UsdU5uQzFFZ0Y7QWxCcS9MbEY7O0FxRGw2TEE7RUFDRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsZUFBZTtFQUVmLGlCbEQwNUJzQztFa0R6NUJ0QyxnQmxEeTVCc0M7RWtEeDVCdEMsZ0JBQWdCO0FyRG82TGxCOztBcURoN0xBO0VBZUksdUJBQXVCO0VBQ3ZCLGNBQWM7RUFDZCxXbER3NUJxQztFa0R2NUJyQyxXbER3NUJvQztFa0R2NUJwQyxpQmxEeTVCb0M7RWtEeDVCcEMsZ0JsRHc1Qm9DO0VrRHY1QnBDLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2Ysc0JsRGhLVztFa0RpS1gsNEJBQTRCO0VBRTVCLGtDQUFpRTtFQUNqRSxxQ0FBb0U7RUFDcEUsV0FBVztFakM1SlQsNkJqQjhpQytDO0FIbWhLckQ7O0FvQjdqTU07RWlDNEhOO0lqQzNIUSxnQkFBZ0I7RXBCaWtNdEI7QUFDRjs7QXFEdjhMQTtFQWlDSSxVQUFVO0FyRDA2TGQ7O0FxRGo2TEE7RUFDRSxrQkFBa0I7RUFDbEIsVUFBMkM7RUFDM0MsWUFBWTtFQUNaLFNBQTBDO0VBQzFDLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsb0JBQW9CO0VBQ3BCLFdsRDNMYTtFa0Q0TGIsa0JBQWtCO0FyRG82THBCOztBdURubU1BO0VBQ0U7SUFBSyx5QkFBeUI7RXZEdW1NOUI7QUFDRjs7QXVEem1NQTtFQUNFO0lBQUsseUJBQXlCO0V2RHVtTTlCO0FBQ0Y7O0F1RHJtTUE7RUFDRSxxQkFBcUI7RUFDckIsV3BEb2tDMEI7RW9EbmtDMUIsWXBEbWtDMEI7RW9EbGtDMUIsMkJBQTJCO0VBQzNCLGlDQUFnRDtFQUNoRCwrQkFBK0I7RUFFL0Isa0JBQWtCO0VBQ2xCLHNEQUE4QztFQUE5Qyw4Q0FBOEM7QXZEdW1NaEQ7O0F1RHBtTUE7RUFDRSxXcEQ2akM0QjtFb0Q1akM1QixZcEQ0akM0QjtFb0QzakM1QixtQnBENmpDNEI7QUgwaUs5Qjs7QXVEaG1NQTtFQUNFO0lBQ0UsbUJBQW1CO0V2RG1tTXJCO0V1RGptTUE7SUFDRSxVQUFVO0lBQ1YsZUFBZTtFdkRtbU1qQjtBQUNGOztBdUQxbU1BO0VBQ0U7SUFDRSxtQkFBbUI7RXZEbW1NckI7RXVEam1NQTtJQUNFLFVBQVU7SUFDVixlQUFlO0V2RG1tTWpCO0FBQ0Y7O0F1RGhtTUE7RUFDRSxxQkFBcUI7RUFDckIsV3BEb2lDMEI7RW9EbmlDMUIsWXBEbWlDMEI7RW9EbGlDMUIsMkJBQTJCO0VBQzNCLDhCQUE4QjtFQUU5QixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLG9EQUE0QztFQUE1Qyw0Q0FBNEM7QXZEa21NOUM7O0F1RC9sTUE7RUFDRSxXcEQ2aEM0QjtFb0Q1aEM1QixZcEQ0aEM0QjtBSHNrSzlCOztBdUQ5bE1FO0VBQ0U7O0lBRUUsZ0NBQXdCO0lBQXhCLHdCQUF3QjtFdkRpbU01QjtBQUNGOztBd0Q3cE1BO0VBQXFCLG1DQUFtQztBeERpcU14RDs7QXdEaHFNQTtFQUFxQiw4QkFBOEI7QXhEb3FNbkQ7O0F3RG5xTUE7RUFBcUIsaUNBQWlDO0F4RHVxTXREOztBd0R0cU1BO0VBQXFCLGlDQUFpQztBeEQwcU10RDs7QXdEenFNQTtFQUFxQixzQ0FBc0M7QXhENnFNM0Q7O0F3RDVxTUE7RUFBcUIsbUNBQW1DO0F4RGdyTXhEOztBeURsck1FO0VBQ0Usb0NBQW1DO0F6RHFyTXZDOztBSzNxTUU7OztFb0RMSSxvQ0FBZ0Q7QXpEc3JNdEQ7O0F5RDVyTUU7RUFDRSxvQ0FBbUM7QXpEK3JNdkM7O0FLcnJNRTs7O0VvRExJLG9DQUFnRDtBekRnc010RDs7QXlEdHNNRTtFQUNFLG9DQUFtQztBekR5c012Qzs7QUsvck1FOzs7RW9ETEksb0NBQWdEO0F6RDBzTXREOztBeURodE1FO0VBQ0Usb0NBQW1DO0F6RG10TXZDOztBS3pzTUU7OztFb0RMSSxvQ0FBZ0Q7QXpEb3RNdEQ7O0F5RDF0TUU7RUFDRSxvQ0FBbUM7QXpENnRNdkM7O0FLbnRNRTs7O0VvRExJLG9DQUFnRDtBekQ4dE10RDs7QXlEcHVNRTtFQUNFLG9DQUFtQztBekR1dU12Qzs7QUs3dE1FOzs7RW9ETEksb0NBQWdEO0F6RHd1TXREOztBeUQ5dU1FO0VBQ0Usb0NBQW1DO0F6RGl2TXZDOztBS3Z1TUU7OztFb0RMSSxvQ0FBZ0Q7QXpEa3ZNdEQ7O0F5RHh2TUU7RUFDRSxvQ0FBbUM7QXpEMnZNdkM7O0FLanZNRTs7O0VvRExJLG9DQUFnRDtBekQ0dk10RDs7QTBEM3ZNQTtFQUNFLGlDQUFtQztBMUQ4dk1yQzs7QTBEM3ZNQTtFQUNFLHdDQUF3QztBMUQ4dk0xQzs7QTJEendNQTtFQUFrQixvQ0FBb0Q7QTNENndNdEU7O0EyRDV3TUE7RUFBa0Isd0NBQXdEO0EzRGd4TTFFOztBMkQvd01BO0VBQWtCLDBDQUEwRDtBM0RteE01RTs7QTJEbHhNQTtFQUFrQiwyQ0FBMkQ7QTNEc3hNN0U7O0EyRHJ4TUE7RUFBa0IseUNBQXlEO0EzRHl4TTNFOztBMkR2eE1BO0VBQW1CLG9CQUFvQjtBM0QyeE12Qzs7QTJEMXhNQTtFQUFtQix3QkFBd0I7QTNEOHhNM0M7O0EyRDd4TUE7RUFBbUIsMEJBQTBCO0EzRGl5TTdDOztBMkRoeU1BO0VBQW1CLDJCQUEyQjtBM0RveU05Qzs7QTJEbnlNQTtFQUFtQix5QkFBeUI7QTNEdXlNNUM7O0EyRHB5TUU7RUFDRSxnQ0FBK0I7QTNEdXlNbkM7O0EyRHh5TUU7RUFDRSxnQ0FBK0I7QTNEMnlNbkM7O0EyRDV5TUU7RUFDRSxnQ0FBK0I7QTNEK3lNbkM7O0EyRGh6TUU7RUFDRSxnQ0FBK0I7QTNEbXpNbkM7O0EyRHB6TUU7RUFDRSxnQ0FBK0I7QTNEdXpNbkM7O0EyRHh6TUU7RUFDRSxnQ0FBK0I7QTNEMnpNbkM7O0EyRDV6TUU7RUFDRSxnQ0FBK0I7QTNEK3pNbkM7O0EyRGgwTUU7RUFDRSxnQ0FBK0I7QTNEbTBNbkM7O0EyRC96TUE7RUFDRSw2QkFBK0I7QTNEazBNakM7O0EyRDN6TUE7RUFDRSxnQ0FBMkM7QTNEOHpNN0M7O0EyRDN6TUE7RUFDRSxpQ0FBd0M7QTNEOHpNMUM7O0EyRDN6TUE7RUFDRSwwQ0FBaUQ7RUFDakQsMkNBQWtEO0EzRDh6TXBEOztBMkQzek1BO0VBQ0UsMkNBQWtEO0VBQ2xELDhDQUFxRDtBM0Q4ek12RDs7QTJEM3pNQTtFQUNFLDhDQUFxRDtFQUNyRCw2Q0FBb0Q7QTNEOHpNdEQ7O0EyRDN6TUE7RUFDRSwwQ0FBaUQ7RUFDakQsNkNBQW9EO0EzRDh6TXREOztBMkQzek1BO0VBQ0UsZ0NBQTJDO0EzRDh6TTdDOztBMkQzek1BO0VBQ0UsNkJBQTZCO0EzRDh6TS9COztBMkQzek1BO0VBQ0UsK0JBQXVDO0EzRDh6TXpDOztBMkQzek1BO0VBQ0UsMkJBQTJCO0EzRDh6TTdCOztBc0R0NE1FO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F0RHk0TWY7O0E0RGw0TU07RUFBd0Isd0JBQTBCO0E1RHM0TXhEOztBNER0NE1NO0VBQXdCLDBCQUEwQjtBNUQwNE14RDs7QTREMTRNTTtFQUF3QixnQ0FBMEI7QTVEODRNeEQ7O0E0RDk0TU07RUFBd0IseUJBQTBCO0E1RGs1TXhEOztBNERsNU1NO0VBQXdCLHlCQUEwQjtBNURzNU14RDs7QTREdDVNTTtFQUF3Qiw2QkFBMEI7QTVEMDVNeEQ7O0E0RDE1TU07RUFBd0IsOEJBQTBCO0E1RDg1TXhEOztBNEQ5NU1NO0VBQXdCLHdCQUEwQjtBNURrNk14RDs7QTREbDZNTTtFQUF3QiwrQkFBMEI7QTVEczZNeEQ7O0FjcjNNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RDI2TXREO0U0RDM2TUk7SUFBd0IsMEJBQTBCO0U1RDg2TXREO0U0RDk2TUk7SUFBd0IsZ0NBQTBCO0U1RGk3TXREO0U0RGo3TUk7SUFBd0IseUJBQTBCO0U1RG83TXREO0U0RHA3TUk7SUFBd0IseUJBQTBCO0U1RHU3TXREO0U0RHY3TUk7SUFBd0IsNkJBQTBCO0U1RDA3TXREO0U0RDE3TUk7SUFBd0IsOEJBQTBCO0U1RDY3TXREO0U0RDc3TUk7SUFBd0Isd0JBQTBCO0U1RGc4TXREO0U0RGg4TUk7SUFBd0IsK0JBQTBCO0U1RG04TXREO0FBQ0Y7O0FjbjVNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RHk4TXREO0U0RHo4TUk7SUFBd0IsMEJBQTBCO0U1RDQ4TXREO0U0RDU4TUk7SUFBd0IsZ0NBQTBCO0U1RCs4TXREO0U0RC84TUk7SUFBd0IseUJBQTBCO0U1RGs5TXREO0U0RGw5TUk7SUFBd0IseUJBQTBCO0U1RHE5TXREO0U0RHI5TUk7SUFBd0IsNkJBQTBCO0U1RHc5TXREO0U0RHg5TUk7SUFBd0IsOEJBQTBCO0U1RDI5TXREO0U0RDM5TUk7SUFBd0Isd0JBQTBCO0U1RDg5TXREO0U0RDk5TUk7SUFBd0IsK0JBQTBCO0U1RGkrTXREO0FBQ0Y7O0FjajdNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RHUrTXREO0U0RHYrTUk7SUFBd0IsMEJBQTBCO0U1RDArTXREO0U0RDErTUk7SUFBd0IsZ0NBQTBCO0U1RDYrTXREO0U0RDcrTUk7SUFBd0IseUJBQTBCO0U1RGcvTXREO0U0RGgvTUk7SUFBd0IseUJBQTBCO0U1RG0vTXREO0U0RG4vTUk7SUFBd0IsNkJBQTBCO0U1RHMvTXREO0U0RHQvTUk7SUFBd0IsOEJBQTBCO0U1RHkvTXREO0U0RHovTUk7SUFBd0Isd0JBQTBCO0U1RDQvTXREO0U0RDUvTUk7SUFBd0IsK0JBQTBCO0U1RCsvTXREO0FBQ0Y7O0FjLzhNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U1RHFnTnREO0U0RHJnTkk7SUFBd0IsMEJBQTBCO0U1RHdnTnREO0U0RHhnTkk7SUFBd0IsZ0NBQTBCO0U1RDJnTnREO0U0RDNnTkk7SUFBd0IseUJBQTBCO0U1RDhnTnREO0U0RDlnTkk7SUFBd0IseUJBQTBCO0U1RGloTnREO0U0RGpoTkk7SUFBd0IsNkJBQTBCO0U1RG9oTnREO0U0RHBoTkk7SUFBd0IsOEJBQTBCO0U1RHVoTnREO0U0RHZoTkk7SUFBd0Isd0JBQTBCO0U1RDBoTnREO0U0RDFoTkk7SUFBd0IsK0JBQTBCO0U1RDZoTnREO0FBQ0Y7O0E0RHBoTkE7RUFFSTtJQUFxQix3QkFBMEI7RTVEdWhOakQ7RTREdmhORTtJQUFxQiwwQkFBMEI7RTVEMGhOakQ7RTREMWhORTtJQUFxQixnQ0FBMEI7RTVENmhOakQ7RTREN2hORTtJQUFxQix5QkFBMEI7RTVEZ2lOakQ7RTREaGlORTtJQUFxQix5QkFBMEI7RTVEbWlOakQ7RTREbmlORTtJQUFxQiw2QkFBMEI7RTVEc2lOakQ7RTREdGlORTtJQUFxQiw4QkFBMEI7RTVEeWlOakQ7RTREemlORTtJQUFxQix3QkFBMEI7RTVENGlOakQ7RTRENWlORTtJQUFxQiwrQkFBMEI7RTVEK2lOakQ7QUFDRjs7QTZEcmtOQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLFVBQVU7RUFDVixnQkFBZ0I7QTdEd2tObEI7O0E2RDdrTkE7RUFRSSxjQUFjO0VBQ2QsV0FBVztBN0R5a05mOztBNkRsbE5BOzs7OztFQWlCSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7RUFDWixTQUFTO0E3RHlrTmI7O0E2RGprTkU7RUFFSSx1QkFBNEY7QTdEbWtObEc7O0E2RHJrTkU7RUFFSSxtQkFBNEY7QTdEdWtObEc7O0E2RHprTkU7RUFFSSxnQkFBNEY7QTdEMmtObEc7O0E2RDdrTkU7RUFFSSxpQkFBNEY7QTdEK2tObEc7O0E4RHhtTkk7RUFBZ0MsOEJBQThCO0E5RDRtTmxFOztBOEQzbU5JO0VBQWdDLGlDQUFpQztBOUQrbU5yRTs7QThEOW1OSTtFQUFnQyxzQ0FBc0M7QTlEa25OMUU7O0E4RGpuTkk7RUFBZ0MseUNBQXlDO0E5RHFuTjdFOztBOERubk5JO0VBQThCLDBCQUEwQjtBOUR1bk41RDs7QThEdG5OSTtFQUE4Qiw0QkFBNEI7QTlEMG5OOUQ7O0E4RHpuTkk7RUFBOEIsa0NBQWtDO0E5RDZuTnBFOztBOEQ1bk5JO0VBQThCLHlCQUF5QjtBOURnb04zRDs7QThEL25OSTtFQUE4Qix1QkFBdUI7QTlEbW9OekQ7O0E4RGxvTkk7RUFBOEIsdUJBQXVCO0E5RHNvTnpEOztBOERyb05JO0VBQThCLHlCQUF5QjtBOUR5b04zRDs7QThEeG9OSTtFQUE4Qix5QkFBeUI7QTlENG9OM0Q7O0E4RDFvTkk7RUFBb0Msc0NBQXNDO0E5RDhvTjlFOztBOEQ3b05JO0VBQW9DLG9DQUFvQztBOURpcE41RTs7QThEaHBOSTtFQUFvQyxrQ0FBa0M7QTlEb3BOMUU7O0E4RG5wTkk7RUFBb0MseUNBQXlDO0E5RHVwTmpGOztBOER0cE5JO0VBQW9DLHdDQUF3QztBOUQwcE5oRjs7QThEeHBOSTtFQUFpQyxrQ0FBa0M7QTlENHBOdkU7O0E4RDNwTkk7RUFBaUMsZ0NBQWdDO0E5RCtwTnJFOztBOEQ5cE5JO0VBQWlDLDhCQUE4QjtBOURrcU5uRTs7QThEanFOSTtFQUFpQyxnQ0FBZ0M7QTlEcXFOckU7O0E4RHBxTkk7RUFBaUMsK0JBQStCO0E5RHdxTnBFOztBOER0cU5JO0VBQWtDLG9DQUFvQztBOUQwcU4xRTs7QThEenFOSTtFQUFrQyxrQ0FBa0M7QTlENnFOeEU7O0E4RDVxTkk7RUFBa0MsZ0NBQWdDO0E5RGdyTnRFOztBOEQvcU5JO0VBQWtDLHVDQUF1QztBOURtck43RTs7QThEbHJOSTtFQUFrQyxzQ0FBc0M7QTlEc3JONUU7O0E4RHJyTkk7RUFBa0MsaUNBQWlDO0E5RHlyTnZFOztBOER2ck5JO0VBQWdDLDJCQUEyQjtBOUQyck4vRDs7QThEMXJOSTtFQUFnQyxpQ0FBaUM7QTlEOHJOckU7O0E4RDdyTkk7RUFBZ0MsK0JBQStCO0E5RGlzTm5FOztBOERoc05JO0VBQWdDLDZCQUE2QjtBOURvc05qRTs7QThEbnNOSTtFQUFnQywrQkFBK0I7QTlEdXNObkU7O0E4RHRzTkk7RUFBZ0MsOEJBQThCO0E5RDBzTmxFOztBYzlyTkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOURxdk5oRTtFOERwdk5FO0lBQWdDLGlDQUFpQztFOUR1dk5uRTtFOER0dk5FO0lBQWdDLHNDQUFzQztFOUR5dk54RTtFOER4dk5FO0lBQWdDLHlDQUF5QztFOUQydk4zRTtFOER6dk5FO0lBQThCLDBCQUEwQjtFOUQ0dk4xRDtFOEQzdk5FO0lBQThCLDRCQUE0QjtFOUQ4dk41RDtFOEQ3dk5FO0lBQThCLGtDQUFrQztFOURnd05sRTtFOEQvdk5FO0lBQThCLHlCQUF5QjtFOURrd056RDtFOERqd05FO0lBQThCLHVCQUF1QjtFOURvd052RDtFOERud05FO0lBQThCLHVCQUF1QjtFOURzd052RDtFOERyd05FO0lBQThCLHlCQUF5QjtFOUR3d056RDtFOER2d05FO0lBQThCLHlCQUF5QjtFOUQwd056RDtFOER4d05FO0lBQW9DLHNDQUFzQztFOUQyd041RTtFOEQxd05FO0lBQW9DLG9DQUFvQztFOUQ2d04xRTtFOEQ1d05FO0lBQW9DLGtDQUFrQztFOUQrd054RTtFOEQ5d05FO0lBQW9DLHlDQUF5QztFOURpeE4vRTtFOERoeE5FO0lBQW9DLHdDQUF3QztFOURteE45RTtFOERqeE5FO0lBQWlDLGtDQUFrQztFOURveE5yRTtFOERueE5FO0lBQWlDLGdDQUFnQztFOURzeE5uRTtFOERyeE5FO0lBQWlDLDhCQUE4QjtFOUR3eE5qRTtFOER2eE5FO0lBQWlDLGdDQUFnQztFOUQweE5uRTtFOER6eE5FO0lBQWlDLCtCQUErQjtFOUQ0eE5sRTtFOEQxeE5FO0lBQWtDLG9DQUFvQztFOUQ2eE54RTtFOEQ1eE5FO0lBQWtDLGtDQUFrQztFOUQreE50RTtFOEQ5eE5FO0lBQWtDLGdDQUFnQztFOURpeU5wRTtFOERoeU5FO0lBQWtDLHVDQUF1QztFOURteU4zRTtFOERseU5FO0lBQWtDLHNDQUFzQztFOURxeU4xRTtFOERweU5FO0lBQWtDLGlDQUFpQztFOUR1eU5yRTtFOERyeU5FO0lBQWdDLDJCQUEyQjtFOUR3eU43RDtFOER2eU5FO0lBQWdDLGlDQUFpQztFOUQweU5uRTtFOER6eU5FO0lBQWdDLCtCQUErQjtFOUQ0eU5qRTtFOEQzeU5FO0lBQWdDLDZCQUE2QjtFOUQ4eU4vRDtFOEQ3eU5FO0lBQWdDLCtCQUErQjtFOURnek5qRTtFOEQveU5FO0lBQWdDLDhCQUE4QjtFOURrek5oRTtBQUNGOztBY3Z5Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOUQ4MU5oRTtFOEQ3MU5FO0lBQWdDLGlDQUFpQztFOURnMk5uRTtFOEQvMU5FO0lBQWdDLHNDQUFzQztFOURrMk54RTtFOERqMk5FO0lBQWdDLHlDQUF5QztFOURvMk4zRTtFOERsMk5FO0lBQThCLDBCQUEwQjtFOURxMk4xRDtFOERwMk5FO0lBQThCLDRCQUE0QjtFOUR1Mk41RDtFOER0Mk5FO0lBQThCLGtDQUFrQztFOUR5Mk5sRTtFOER4Mk5FO0lBQThCLHlCQUF5QjtFOUQyMk56RDtFOEQxMk5FO0lBQThCLHVCQUF1QjtFOUQ2Mk52RDtFOEQ1Mk5FO0lBQThCLHVCQUF1QjtFOUQrMk52RDtFOEQ5Mk5FO0lBQThCLHlCQUF5QjtFOURpM056RDtFOERoM05FO0lBQThCLHlCQUF5QjtFOURtM056RDtFOERqM05FO0lBQW9DLHNDQUFzQztFOURvM041RTtFOERuM05FO0lBQW9DLG9DQUFvQztFOURzM04xRTtFOERyM05FO0lBQW9DLGtDQUFrQztFOUR3M054RTtFOER2M05FO0lBQW9DLHlDQUF5QztFOUQwM04vRTtFOER6M05FO0lBQW9DLHdDQUF3QztFOUQ0M045RTtFOEQxM05FO0lBQWlDLGtDQUFrQztFOUQ2M05yRTtFOEQ1M05FO0lBQWlDLGdDQUFnQztFOUQrM05uRTtFOEQ5M05FO0lBQWlDLDhCQUE4QjtFOURpNE5qRTtFOERoNE5FO0lBQWlDLGdDQUFnQztFOURtNE5uRTtFOERsNE5FO0lBQWlDLCtCQUErQjtFOURxNE5sRTtFOERuNE5FO0lBQWtDLG9DQUFvQztFOURzNE54RTtFOERyNE5FO0lBQWtDLGtDQUFrQztFOUR3NE50RTtFOER2NE5FO0lBQWtDLGdDQUFnQztFOUQwNE5wRTtFOER6NE5FO0lBQWtDLHVDQUF1QztFOUQ0NE4zRTtFOEQzNE5FO0lBQWtDLHNDQUFzQztFOUQ4NE4xRTtFOEQ3NE5FO0lBQWtDLGlDQUFpQztFOURnNU5yRTtFOEQ5NE5FO0lBQWdDLDJCQUEyQjtFOURpNU43RDtFOERoNU5FO0lBQWdDLGlDQUFpQztFOURtNU5uRTtFOERsNU5FO0lBQWdDLCtCQUErQjtFOURxNU5qRTtFOERwNU5FO0lBQWdDLDZCQUE2QjtFOUR1NU4vRDtFOER0NU5FO0lBQWdDLCtCQUErQjtFOUR5NU5qRTtFOER4NU5FO0lBQWdDLDhCQUE4QjtFOUQyNU5oRTtBQUNGOztBY2g1Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOUR1OE5oRTtFOER0OE5FO0lBQWdDLGlDQUFpQztFOUR5OE5uRTtFOER4OE5FO0lBQWdDLHNDQUFzQztFOUQyOE54RTtFOEQxOE5FO0lBQWdDLHlDQUF5QztFOUQ2OE4zRTtFOEQzOE5FO0lBQThCLDBCQUEwQjtFOUQ4OE4xRDtFOEQ3OE5FO0lBQThCLDRCQUE0QjtFOURnOU41RDtFOEQvOE5FO0lBQThCLGtDQUFrQztFOURrOU5sRTtFOERqOU5FO0lBQThCLHlCQUF5QjtFOURvOU56RDtFOERuOU5FO0lBQThCLHVCQUF1QjtFOURzOU52RDtFOERyOU5FO0lBQThCLHVCQUF1QjtFOUR3OU52RDtFOER2OU5FO0lBQThCLHlCQUF5QjtFOUQwOU56RDtFOER6OU5FO0lBQThCLHlCQUF5QjtFOUQ0OU56RDtFOEQxOU5FO0lBQW9DLHNDQUFzQztFOUQ2OU41RTtFOEQ1OU5FO0lBQW9DLG9DQUFvQztFOUQrOU4xRTtFOEQ5OU5FO0lBQW9DLGtDQUFrQztFOURpK054RTtFOERoK05FO0lBQW9DLHlDQUF5QztFOURtK04vRTtFOERsK05FO0lBQW9DLHdDQUF3QztFOURxK045RTtFOERuK05FO0lBQWlDLGtDQUFrQztFOURzK05yRTtFOERyK05FO0lBQWlDLGdDQUFnQztFOUR3K05uRTtFOER2K05FO0lBQWlDLDhCQUE4QjtFOUQwK05qRTtFOER6K05FO0lBQWlDLGdDQUFnQztFOUQ0K05uRTtFOEQzK05FO0lBQWlDLCtCQUErQjtFOUQ4K05sRTtFOEQ1K05FO0lBQWtDLG9DQUFvQztFOUQrK054RTtFOEQ5K05FO0lBQWtDLGtDQUFrQztFOURpL050RTtFOERoL05FO0lBQWtDLGdDQUFnQztFOURtL05wRTtFOERsL05FO0lBQWtDLHVDQUF1QztFOURxL04zRTtFOERwL05FO0lBQWtDLHNDQUFzQztFOUR1L04xRTtFOER0L05FO0lBQWtDLGlDQUFpQztFOUR5L05yRTtFOER2L05FO0lBQWdDLDJCQUEyQjtFOUQwL043RDtFOER6L05FO0lBQWdDLGlDQUFpQztFOUQ0L05uRTtFOEQzL05FO0lBQWdDLCtCQUErQjtFOUQ4L05qRTtFOEQ3L05FO0lBQWdDLDZCQUE2QjtFOURnZ08vRDtFOEQvL05FO0lBQWdDLCtCQUErQjtFOURrZ09qRTtFOERqZ09FO0lBQWdDLDhCQUE4QjtFOURvZ09oRTtBQUNGOztBY3ovTkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFOURnak9oRTtFOEQvaU9FO0lBQWdDLGlDQUFpQztFOURrak9uRTtFOERqak9FO0lBQWdDLHNDQUFzQztFOURvak94RTtFOERuak9FO0lBQWdDLHlDQUF5QztFOURzak8zRTtFOERwak9FO0lBQThCLDBCQUEwQjtFOUR1ak8xRDtFOER0ak9FO0lBQThCLDRCQUE0QjtFOUR5ak81RDtFOER4ak9FO0lBQThCLGtDQUFrQztFOUQyak9sRTtFOEQxak9FO0lBQThCLHlCQUF5QjtFOUQ2ak96RDtFOEQ1ak9FO0lBQThCLHVCQUF1QjtFOUQrak92RDtFOEQ5ak9FO0lBQThCLHVCQUF1QjtFOURpa092RDtFOERoa09FO0lBQThCLHlCQUF5QjtFOURta096RDtFOERsa09FO0lBQThCLHlCQUF5QjtFOURxa096RDtFOERua09FO0lBQW9DLHNDQUFzQztFOURza081RTtFOERya09FO0lBQW9DLG9DQUFvQztFOUR3a08xRTtFOER2a09FO0lBQW9DLGtDQUFrQztFOUQwa094RTtFOER6a09FO0lBQW9DLHlDQUF5QztFOUQ0a08vRTtFOEQza09FO0lBQW9DLHdDQUF3QztFOUQ4a085RTtFOEQ1a09FO0lBQWlDLGtDQUFrQztFOUQra09yRTtFOEQ5a09FO0lBQWlDLGdDQUFnQztFOURpbE9uRTtFOERobE9FO0lBQWlDLDhCQUE4QjtFOURtbE9qRTtFOERsbE9FO0lBQWlDLGdDQUFnQztFOURxbE9uRTtFOERwbE9FO0lBQWlDLCtCQUErQjtFOUR1bE9sRTtFOERybE9FO0lBQWtDLG9DQUFvQztFOUR3bE94RTtFOER2bE9FO0lBQWtDLGtDQUFrQztFOUQwbE90RTtFOER6bE9FO0lBQWtDLGdDQUFnQztFOUQ0bE9wRTtFOEQzbE9FO0lBQWtDLHVDQUF1QztFOUQ4bE8zRTtFOEQ3bE9FO0lBQWtDLHNDQUFzQztFOURnbU8xRTtFOEQvbE9FO0lBQWtDLGlDQUFpQztFOURrbU9yRTtFOERobU9FO0lBQWdDLDJCQUEyQjtFOURtbU83RDtFOERsbU9FO0lBQWdDLGlDQUFpQztFOURxbU9uRTtFOERwbU9FO0lBQWdDLCtCQUErQjtFOUR1bU9qRTtFOER0bU9FO0lBQWdDLDZCQUE2QjtFOUR5bU8vRDtFOER4bU9FO0lBQWdDLCtCQUErQjtFOUQybU9qRTtFOEQxbU9FO0lBQWdDLDhCQUE4QjtFOUQ2bU9oRTtBQUNGOztBK0R4cE9JO0VBQXdCLHNCQUFzQjtBL0Q0cE9sRDs7QStEM3BPSTtFQUF3Qix1QkFBdUI7QS9EK3BPbkQ7O0ErRDlwT0k7RUFBd0Isc0JBQXNCO0EvRGtxT2xEOztBYzltT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0R5cU9oRDtFK0R4cU9FO0lBQXdCLHVCQUF1QjtFL0QycU9qRDtFK0QxcU9FO0lBQXdCLHNCQUFzQjtFL0Q2cU9oRDtBQUNGOztBYzFuT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0Rxck9oRDtFK0Rwck9FO0lBQXdCLHVCQUF1QjtFL0R1ck9qRDtFK0R0ck9FO0lBQXdCLHNCQUFzQjtFL0R5ck9oRDtBQUNGOztBY3RvT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0Rpc09oRDtFK0Roc09FO0lBQXdCLHVCQUF1QjtFL0Rtc09qRDtFK0Rsc09FO0lBQXdCLHNCQUFzQjtFL0Rxc09oRDtBQUNGOztBY2xwT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFL0Q2c09oRDtFK0Q1c09FO0lBQXdCLHVCQUF1QjtFL0Qrc09qRDtFK0Q5c09FO0lBQXdCLHNCQUFzQjtFL0RpdE9oRDtBQUNGOztBZ0V2dE9FO0VBQXlCLG1DQUE4QjtFQUE5QixnQ0FBOEI7RUFBOUIsMkJBQThCO0FoRTJ0T3pEOztBZ0UzdE9FO0VBQXlCLG9DQUE4QjtFQUE5QixpQ0FBOEI7RUFBOUIsZ0NBQThCO0VBQTlCLDRCQUE4QjtBaEUrdE96RDs7QWdFL3RPRTtFQUF5QixvQ0FBOEI7RUFBOUIsaUNBQThCO0VBQTlCLGdDQUE4QjtFQUE5Qiw0QkFBOEI7QWhFbXVPekQ7O0FpRW51T0U7RUFBc0IseUJBQTJCO0FqRXV1T25EOztBaUV2dU9FO0VBQXNCLDJCQUEyQjtBakUydU9uRDs7QWtFMXVPRTtFQUF5QiwyQkFBOEI7QWxFOHVPekQ7O0FrRTl1T0U7RUFBeUIsNkJBQThCO0FsRWt2T3pEOztBa0Vsdk9FO0VBQXlCLDZCQUE4QjtBbEVzdk96RDs7QWtFdHZPRTtFQUF5QiwwQkFBOEI7QWxFMHZPekQ7O0FrRTF2T0U7RUFBeUIsMkJBQThCO0FsRTh2T3pEOztBa0V6dk9BO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLGEvRGdxQnNDO0FINGxOeEM7O0FrRXp2T0E7RUFDRSxlQUFlO0VBQ2YsUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsYS9Ed3BCc0M7QUhvbU54Qzs7QWtFeHZPOEI7RUFEOUI7SUFFSSxnQkFBZ0I7SUFDaEIsTUFBTTtJQUNOLGEvRGdwQm9DO0VING1OdEM7QUFDRjs7QW1FdHhPQTtFQ0VFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFVBQVU7RUFDVixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixtQkFBbUI7RUFDbkIsU0FBUztBcEV3eE9YOztBb0U5d09FO0VBRUUsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixtQkFBbUI7QXBFZ3hPdkI7O0FxRTd5T0E7RUFBYSw4REFBcUM7QXJFaXpPbEQ7O0FxRWh6T0E7RUFBVSx3REFBa0M7QXJFb3pPNUM7O0FxRW56T0E7RUFBYSx1REFBcUM7QXJFdXpPbEQ7O0FxRXR6T0E7RUFBZSwyQkFBMkI7QXJFMHpPMUM7O0FzRXp6T0k7RUFBdUIscUJBQTRCO0F0RTZ6T3ZEOztBc0U3ek9JO0VBQXVCLHFCQUE0QjtBdEVpME92RDs7QXNFajBPSTtFQUF1QixxQkFBNEI7QXRFcTBPdkQ7O0FzRXIwT0k7RUFBdUIsc0JBQTRCO0F0RXkwT3ZEOztBc0V6ME9JO0VBQXVCLHNCQUE0QjtBdEU2ME92RDs7QXNFNzBPSTtFQUF1QixzQkFBNEI7QXRFaTFPdkQ7O0FzRWoxT0k7RUFBdUIsc0JBQTRCO0F0RXExT3ZEOztBc0VyMU9JO0VBQXVCLHNCQUE0QjtBdEV5MU92RDs7QXNFejFPSTtFQUF1Qix1QkFBNEI7QXRFNjFPdkQ7O0FzRTcxT0k7RUFBdUIsdUJBQTRCO0F0RWkyT3ZEOztBc0U3MU9BO0VBQVUsMEJBQTBCO0F0RWkyT3BDOztBc0VoMk9BO0VBQVUsMkJBQTJCO0F0RW8yT3JDOztBc0VoMk9BO0VBQWMsMkJBQTJCO0F0RW8yT3pDOztBc0VuMk9BO0VBQWMsNEJBQTRCO0F0RXUyTzFDOztBc0VyMk9BO0VBQVUsdUJBQXVCO0F0RXkyT2pDOztBc0V4Mk9BO0VBQVUsd0JBQXdCO0F0RTQyT2xDOztBdUVyM09RO0VBQWdDLG9CQUE0QjtBdkV5M09wRTs7QXVFeDNPUTs7RUFFRSx3QkFBb0M7QXZFMjNPOUM7O0F1RXozT1E7O0VBRUUsMEJBQXdDO0F2RTQzT2xEOztBdUUxM09ROztFQUVFLDJCQUEwQztBdkU2M09wRDs7QXVFMzNPUTs7RUFFRSx5QkFBc0M7QXZFODNPaEQ7O0F1RTc0T1E7RUFBZ0MsMEJBQTRCO0F2RWk1T3BFOztBdUVoNU9ROztFQUVFLDhCQUFvQztBdkVtNU85Qzs7QXVFajVPUTs7RUFFRSxnQ0FBd0M7QXZFbzVPbEQ7O0F1RWw1T1E7O0VBRUUsaUNBQTBDO0F2RXE1T3BEOztBdUVuNU9ROztFQUVFLCtCQUFzQztBdkVzNU9oRDs7QXVFcjZPUTtFQUFnQyx5QkFBNEI7QXZFeTZPcEU7O0F1RXg2T1E7O0VBRUUsNkJBQW9DO0F2RTI2TzlDOztBdUV6Nk9ROztFQUVFLCtCQUF3QztBdkU0Nk9sRDs7QXVFMTZPUTs7RUFFRSxnQ0FBMEM7QXZFNjZPcEQ7O0F1RTM2T1E7O0VBRUUsOEJBQXNDO0F2RTg2T2hEOztBdUU3N09RO0VBQWdDLHVCQUE0QjtBdkVpOE9wRTs7QXVFaDhPUTs7RUFFRSwyQkFBb0M7QXZFbThPOUM7O0F1RWo4T1E7O0VBRUUsNkJBQXdDO0F2RW84T2xEOztBdUVsOE9ROztFQUVFLDhCQUEwQztBdkVxOE9wRDs7QXVFbjhPUTs7RUFFRSw0QkFBc0M7QXZFczhPaEQ7O0F1RXI5T1E7RUFBZ0MseUJBQTRCO0F2RXk5T3BFOztBdUV4OU9ROztFQUVFLDZCQUFvQztBdkUyOU85Qzs7QXVFejlPUTs7RUFFRSwrQkFBd0M7QXZFNDlPbEQ7O0F1RTE5T1E7O0VBRUUsZ0NBQTBDO0F2RTY5T3BEOztBdUUzOU9ROztFQUVFLDhCQUFzQztBdkU4OU9oRDs7QXVFNytPUTtFQUFnQyx1QkFBNEI7QXZFaS9PcEU7O0F1RWgvT1E7O0VBRUUsMkJBQW9DO0F2RW0vTzlDOztBdUVqL09ROztFQUVFLDZCQUF3QztBdkVvL09sRDs7QXVFbC9PUTs7RUFFRSw4QkFBMEM7QXZFcS9PcEQ7O0F1RW4vT1E7O0VBRUUsNEJBQXNDO0F2RXMvT2hEOztBdUVyZ1BRO0VBQWdDLHFCQUE0QjtBdkV5Z1BwRTs7QXVFeGdQUTs7RUFFRSx5QkFBb0M7QXZFMmdQOUM7O0F1RXpnUFE7O0VBRUUsMkJBQXdDO0F2RTRnUGxEOztBdUUxZ1BROztFQUVFLDRCQUEwQztBdkU2Z1BwRDs7QXVFM2dQUTs7RUFFRSwwQkFBc0M7QXZFOGdQaEQ7O0F1RTdoUFE7RUFBZ0MsMkJBQTRCO0F2RWlpUHBFOztBdUVoaVBROztFQUVFLCtCQUFvQztBdkVtaVA5Qzs7QXVFamlQUTs7RUFFRSxpQ0FBd0M7QXZFb2lQbEQ7O0F1RWxpUFE7O0VBRUUsa0NBQTBDO0F2RXFpUHBEOztBdUVuaVBROztFQUVFLGdDQUFzQztBdkVzaVBoRDs7QXVFcmpQUTtFQUFnQywwQkFBNEI7QXZFeWpQcEU7O0F1RXhqUFE7O0VBRUUsOEJBQW9DO0F2RTJqUDlDOztBdUV6alBROztFQUVFLGdDQUF3QztBdkU0alBsRDs7QXVFMWpQUTs7RUFFRSxpQ0FBMEM7QXZFNmpQcEQ7O0F1RTNqUFE7O0VBRUUsK0JBQXNDO0F2RThqUGhEOztBdUU3a1BRO0VBQWdDLHdCQUE0QjtBdkVpbFBwRTs7QXVFaGxQUTs7RUFFRSw0QkFBb0M7QXZFbWxQOUM7O0F1RWpsUFE7O0VBRUUsOEJBQXdDO0F2RW9sUGxEOztBdUVsbFBROztFQUVFLCtCQUEwQztBdkVxbFBwRDs7QXVFbmxQUTs7RUFFRSw2QkFBc0M7QXZFc2xQaEQ7O0F1RXJtUFE7RUFBZ0MsMEJBQTRCO0F2RXltUHBFOztBdUV4bVBROztFQUVFLDhCQUFvQztBdkUybVA5Qzs7QXVFem1QUTs7RUFFRSxnQ0FBd0M7QXZFNG1QbEQ7O0F1RTFtUFE7O0VBRUUsaUNBQTBDO0F2RTZtUHBEOztBdUUzbVBROztFQUVFLCtCQUFzQztBdkU4bVBoRDs7QXVFN25QUTtFQUFnQyx3QkFBNEI7QXZFaW9QcEU7O0F1RWhvUFE7O0VBRUUsNEJBQW9DO0F2RW1vUDlDOztBdUVqb1BROztFQUVFLDhCQUF3QztBdkVvb1BsRDs7QXVFbG9QUTs7RUFFRSwrQkFBMEM7QXZFcW9QcEQ7O0F1RW5vUFE7O0VBRUUsNkJBQXNDO0F2RXNvUGhEOztBdUU5blBRO0VBQXdCLDJCQUEyQjtBdkVrb1AzRDs7QXVFam9QUTs7RUFFRSwrQkFBK0I7QXZFb29QekM7O0F1RWxvUFE7O0VBRUUsaUNBQWlDO0F2RXFvUDNDOztBdUVub1BROztFQUVFLGtDQUFrQztBdkVzb1A1Qzs7QXVFcG9QUTs7RUFFRSxnQ0FBZ0M7QXZFdW9QMUM7O0F1RXRwUFE7RUFBd0IsMEJBQTJCO0F2RTBwUDNEOztBdUV6cFBROztFQUVFLDhCQUErQjtBdkU0cFB6Qzs7QXVFMXBQUTs7RUFFRSxnQ0FBaUM7QXZFNnBQM0M7O0F1RTNwUFE7O0VBRUUsaUNBQWtDO0F2RThwUDVDOztBdUU1cFBROztFQUVFLCtCQUFnQztBdkUrcFAxQzs7QXVFOXFQUTtFQUF3Qix3QkFBMkI7QXZFa3JQM0Q7O0F1RWpyUFE7O0VBRUUsNEJBQStCO0F2RW9yUHpDOztBdUVsclBROztFQUVFLDhCQUFpQztBdkVxclAzQzs7QXVFbnJQUTs7RUFFRSwrQkFBa0M7QXZFc3JQNUM7O0F1RXByUFE7O0VBRUUsNkJBQWdDO0F2RXVyUDFDOztBdUV0c1BRO0VBQXdCLDBCQUEyQjtBdkUwc1AzRDs7QXVFenNQUTs7RUFFRSw4QkFBK0I7QXZFNHNQekM7O0F1RTFzUFE7O0VBRUUsZ0NBQWlDO0F2RTZzUDNDOztBdUUzc1BROztFQUVFLGlDQUFrQztBdkU4c1A1Qzs7QXVFNXNQUTs7RUFFRSwrQkFBZ0M7QXZFK3NQMUM7O0F1RTl0UFE7RUFBd0Isd0JBQTJCO0F2RWt1UDNEOztBdUVqdVBROztFQUVFLDRCQUErQjtBdkVvdVB6Qzs7QXVFbHVQUTs7RUFFRSw4QkFBaUM7QXZFcXVQM0M7O0F1RW51UFE7O0VBRUUsK0JBQWtDO0F2RXN1UDVDOztBdUVwdVBROztFQUVFLDZCQUFnQztBdkV1dVAxQzs7QXVFanVQSTtFQUFtQix1QkFBdUI7QXZFcXVQOUM7O0F1RXB1UEk7O0VBRUUsMkJBQTJCO0F2RXV1UGpDOztBdUVydVBJOztFQUVFLDZCQUE2QjtBdkV3dVBuQzs7QXVFdHVQSTs7RUFFRSw4QkFBOEI7QXZFeXVQcEM7O0F1RXZ1UEk7O0VBRUUsNEJBQTRCO0F2RTB1UGxDOztBY252UEk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkUweVBsRTtFdUV6eVBNOztJQUVFLHdCQUFvQztFdkUyeVA1QztFdUV6eVBNOztJQUVFLDBCQUF3QztFdkUyeVBoRDtFdUV6eVBNOztJQUVFLDJCQUEwQztFdkUyeVBsRDtFdUV6eVBNOztJQUVFLHlCQUFzQztFdkUyeVA5QztFdUUxelBNO0lBQWdDLDBCQUE0QjtFdkU2elBsRTtFdUU1elBNOztJQUVFLDhCQUFvQztFdkU4elA1QztFdUU1elBNOztJQUVFLGdDQUF3QztFdkU4elBoRDtFdUU1elBNOztJQUVFLGlDQUEwQztFdkU4elBsRDtFdUU1elBNOztJQUVFLCtCQUFzQztFdkU4elA5QztFdUU3MFBNO0lBQWdDLHlCQUE0QjtFdkVnMVBsRTtFdUUvMFBNOztJQUVFLDZCQUFvQztFdkVpMVA1QztFdUUvMFBNOztJQUVFLCtCQUF3QztFdkVpMVBoRDtFdUUvMFBNOztJQUVFLGdDQUEwQztFdkVpMVBsRDtFdUUvMFBNOztJQUVFLDhCQUFzQztFdkVpMVA5QztFdUVoMlBNO0lBQWdDLHVCQUE0QjtFdkVtMlBsRTtFdUVsMlBNOztJQUVFLDJCQUFvQztFdkVvMlA1QztFdUVsMlBNOztJQUVFLDZCQUF3QztFdkVvMlBoRDtFdUVsMlBNOztJQUVFLDhCQUEwQztFdkVvMlBsRDtFdUVsMlBNOztJQUVFLDRCQUFzQztFdkVvMlA5QztFdUVuM1BNO0lBQWdDLHlCQUE0QjtFdkVzM1BsRTtFdUVyM1BNOztJQUVFLDZCQUFvQztFdkV1M1A1QztFdUVyM1BNOztJQUVFLCtCQUF3QztFdkV1M1BoRDtFdUVyM1BNOztJQUVFLGdDQUEwQztFdkV1M1BsRDtFdUVyM1BNOztJQUVFLDhCQUFzQztFdkV1M1A5QztFdUV0NFBNO0lBQWdDLHVCQUE0QjtFdkV5NFBsRTtFdUV4NFBNOztJQUVFLDJCQUFvQztFdkUwNFA1QztFdUV4NFBNOztJQUVFLDZCQUF3QztFdkUwNFBoRDtFdUV4NFBNOztJQUVFLDhCQUEwQztFdkUwNFBsRDtFdUV4NFBNOztJQUVFLDRCQUFzQztFdkUwNFA5QztFdUV6NVBNO0lBQWdDLHFCQUE0QjtFdkU0NVBsRTtFdUUzNVBNOztJQUVFLHlCQUFvQztFdkU2NVA1QztFdUUzNVBNOztJQUVFLDJCQUF3QztFdkU2NVBoRDtFdUUzNVBNOztJQUVFLDRCQUEwQztFdkU2NVBsRDtFdUUzNVBNOztJQUVFLDBCQUFzQztFdkU2NVA5QztFdUU1NlBNO0lBQWdDLDJCQUE0QjtFdkUrNlBsRTtFdUU5NlBNOztJQUVFLCtCQUFvQztFdkVnN1A1QztFdUU5NlBNOztJQUVFLGlDQUF3QztFdkVnN1BoRDtFdUU5NlBNOztJQUVFLGtDQUEwQztFdkVnN1BsRDtFdUU5NlBNOztJQUVFLGdDQUFzQztFdkVnN1A5QztFdUUvN1BNO0lBQWdDLDBCQUE0QjtFdkVrOFBsRTtFdUVqOFBNOztJQUVFLDhCQUFvQztFdkVtOFA1QztFdUVqOFBNOztJQUVFLGdDQUF3QztFdkVtOFBoRDtFdUVqOFBNOztJQUVFLGlDQUEwQztFdkVtOFBsRDtFdUVqOFBNOztJQUVFLCtCQUFzQztFdkVtOFA5QztFdUVsOVBNO0lBQWdDLHdCQUE0QjtFdkVxOVBsRTtFdUVwOVBNOztJQUVFLDRCQUFvQztFdkVzOVA1QztFdUVwOVBNOztJQUVFLDhCQUF3QztFdkVzOVBoRDtFdUVwOVBNOztJQUVFLCtCQUEwQztFdkVzOVBsRDtFdUVwOVBNOztJQUVFLDZCQUFzQztFdkVzOVA5QztFdUVyK1BNO0lBQWdDLDBCQUE0QjtFdkV3K1BsRTtFdUV2K1BNOztJQUVFLDhCQUFvQztFdkV5K1A1QztFdUV2K1BNOztJQUVFLGdDQUF3QztFdkV5K1BoRDtFdUV2K1BNOztJQUVFLGlDQUEwQztFdkV5K1BsRDtFdUV2K1BNOztJQUVFLCtCQUFzQztFdkV5K1A5QztFdUV4L1BNO0lBQWdDLHdCQUE0QjtFdkUyL1BsRTtFdUUxL1BNOztJQUVFLDRCQUFvQztFdkU0L1A1QztFdUUxL1BNOztJQUVFLDhCQUF3QztFdkU0L1BoRDtFdUUxL1BNOztJQUVFLCtCQUEwQztFdkU0L1BsRDtFdUUxL1BNOztJQUVFLDZCQUFzQztFdkU0L1A5QztFdUVwL1BNO0lBQXdCLDJCQUEyQjtFdkV1L1B6RDtFdUV0L1BNOztJQUVFLCtCQUErQjtFdkV3L1B2QztFdUV0L1BNOztJQUVFLGlDQUFpQztFdkV3L1B6QztFdUV0L1BNOztJQUVFLGtDQUFrQztFdkV3L1AxQztFdUV0L1BNOztJQUVFLGdDQUFnQztFdkV3L1B4QztFdUV2Z1FNO0lBQXdCLDBCQUEyQjtFdkUwZ1F6RDtFdUV6Z1FNOztJQUVFLDhCQUErQjtFdkUyZ1F2QztFdUV6Z1FNOztJQUVFLGdDQUFpQztFdkUyZ1F6QztFdUV6Z1FNOztJQUVFLGlDQUFrQztFdkUyZ1ExQztFdUV6Z1FNOztJQUVFLCtCQUFnQztFdkUyZ1F4QztFdUUxaFFNO0lBQXdCLHdCQUEyQjtFdkU2aFF6RDtFdUU1aFFNOztJQUVFLDRCQUErQjtFdkU4aFF2QztFdUU1aFFNOztJQUVFLDhCQUFpQztFdkU4aFF6QztFdUU1aFFNOztJQUVFLCtCQUFrQztFdkU4aFExQztFdUU1aFFNOztJQUVFLDZCQUFnQztFdkU4aFF4QztFdUU3aVFNO0lBQXdCLDBCQUEyQjtFdkVnalF6RDtFdUUvaVFNOztJQUVFLDhCQUErQjtFdkVpalF2QztFdUUvaVFNOztJQUVFLGdDQUFpQztFdkVpalF6QztFdUUvaVFNOztJQUVFLGlDQUFrQztFdkVpalExQztFdUUvaVFNOztJQUVFLCtCQUFnQztFdkVpalF4QztFdUVoa1FNO0lBQXdCLHdCQUEyQjtFdkVta1F6RDtFdUVsa1FNOztJQUVFLDRCQUErQjtFdkVva1F2QztFdUVsa1FNOztJQUVFLDhCQUFpQztFdkVva1F6QztFdUVsa1FNOztJQUVFLCtCQUFrQztFdkVva1ExQztFdUVsa1FNOztJQUVFLDZCQUFnQztFdkVva1F4QztFdUU5alFFO0lBQW1CLHVCQUF1QjtFdkVpa1E1QztFdUVoa1FFOztJQUVFLDJCQUEyQjtFdkVra1EvQjtFdUVoa1FFOztJQUVFLDZCQUE2QjtFdkVra1FqQztFdUVoa1FFOztJQUVFLDhCQUE4QjtFdkVra1FsQztFdUVoa1FFOztJQUVFLDRCQUE0QjtFdkVra1FoQztBQUNGOztBYzVrUUk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkVtb1FsRTtFdUVsb1FNOztJQUVFLHdCQUFvQztFdkVvb1E1QztFdUVsb1FNOztJQUVFLDBCQUF3QztFdkVvb1FoRDtFdUVsb1FNOztJQUVFLDJCQUEwQztFdkVvb1FsRDtFdUVsb1FNOztJQUVFLHlCQUFzQztFdkVvb1E5QztFdUVucFFNO0lBQWdDLDBCQUE0QjtFdkVzcFFsRTtFdUVycFFNOztJQUVFLDhCQUFvQztFdkV1cFE1QztFdUVycFFNOztJQUVFLGdDQUF3QztFdkV1cFFoRDtFdUVycFFNOztJQUVFLGlDQUEwQztFdkV1cFFsRDtFdUVycFFNOztJQUVFLCtCQUFzQztFdkV1cFE5QztFdUV0cVFNO0lBQWdDLHlCQUE0QjtFdkV5cVFsRTtFdUV4cVFNOztJQUVFLDZCQUFvQztFdkUwcVE1QztFdUV4cVFNOztJQUVFLCtCQUF3QztFdkUwcVFoRDtFdUV4cVFNOztJQUVFLGdDQUEwQztFdkUwcVFsRDtFdUV4cVFNOztJQUVFLDhCQUFzQztFdkUwcVE5QztFdUV6clFNO0lBQWdDLHVCQUE0QjtFdkU0clFsRTtFdUUzclFNOztJQUVFLDJCQUFvQztFdkU2clE1QztFdUUzclFNOztJQUVFLDZCQUF3QztFdkU2clFoRDtFdUUzclFNOztJQUVFLDhCQUEwQztFdkU2clFsRDtFdUUzclFNOztJQUVFLDRCQUFzQztFdkU2clE5QztFdUU1c1FNO0lBQWdDLHlCQUE0QjtFdkUrc1FsRTtFdUU5c1FNOztJQUVFLDZCQUFvQztFdkVndFE1QztFdUU5c1FNOztJQUVFLCtCQUF3QztFdkVndFFoRDtFdUU5c1FNOztJQUVFLGdDQUEwQztFdkVndFFsRDtFdUU5c1FNOztJQUVFLDhCQUFzQztFdkVndFE5QztFdUUvdFFNO0lBQWdDLHVCQUE0QjtFdkVrdVFsRTtFdUVqdVFNOztJQUVFLDJCQUFvQztFdkVtdVE1QztFdUVqdVFNOztJQUVFLDZCQUF3QztFdkVtdVFoRDtFdUVqdVFNOztJQUVFLDhCQUEwQztFdkVtdVFsRDtFdUVqdVFNOztJQUVFLDRCQUFzQztFdkVtdVE5QztFdUVsdlFNO0lBQWdDLHFCQUE0QjtFdkVxdlFsRTtFdUVwdlFNOztJQUVFLHlCQUFvQztFdkVzdlE1QztFdUVwdlFNOztJQUVFLDJCQUF3QztFdkVzdlFoRDtFdUVwdlFNOztJQUVFLDRCQUEwQztFdkVzdlFsRDtFdUVwdlFNOztJQUVFLDBCQUFzQztFdkVzdlE5QztFdUVyd1FNO0lBQWdDLDJCQUE0QjtFdkV3d1FsRTtFdUV2d1FNOztJQUVFLCtCQUFvQztFdkV5d1E1QztFdUV2d1FNOztJQUVFLGlDQUF3QztFdkV5d1FoRDtFdUV2d1FNOztJQUVFLGtDQUEwQztFdkV5d1FsRDtFdUV2d1FNOztJQUVFLGdDQUFzQztFdkV5d1E5QztFdUV4eFFNO0lBQWdDLDBCQUE0QjtFdkUyeFFsRTtFdUUxeFFNOztJQUVFLDhCQUFvQztFdkU0eFE1QztFdUUxeFFNOztJQUVFLGdDQUF3QztFdkU0eFFoRDtFdUUxeFFNOztJQUVFLGlDQUEwQztFdkU0eFFsRDtFdUUxeFFNOztJQUVFLCtCQUFzQztFdkU0eFE5QztFdUUzeVFNO0lBQWdDLHdCQUE0QjtFdkU4eVFsRTtFdUU3eVFNOztJQUVFLDRCQUFvQztFdkUreVE1QztFdUU3eVFNOztJQUVFLDhCQUF3QztFdkUreVFoRDtFdUU3eVFNOztJQUVFLCtCQUEwQztFdkUreVFsRDtFdUU3eVFNOztJQUVFLDZCQUFzQztFdkUreVE5QztFdUU5elFNO0lBQWdDLDBCQUE0QjtFdkVpMFFsRTtFdUVoMFFNOztJQUVFLDhCQUFvQztFdkVrMFE1QztFdUVoMFFNOztJQUVFLGdDQUF3QztFdkVrMFFoRDtFdUVoMFFNOztJQUVFLGlDQUEwQztFdkVrMFFsRDtFdUVoMFFNOztJQUVFLCtCQUFzQztFdkVrMFE5QztFdUVqMVFNO0lBQWdDLHdCQUE0QjtFdkVvMVFsRTtFdUVuMVFNOztJQUVFLDRCQUFvQztFdkVxMVE1QztFdUVuMVFNOztJQUVFLDhCQUF3QztFdkVxMVFoRDtFdUVuMVFNOztJQUVFLCtCQUEwQztFdkVxMVFsRDtFdUVuMVFNOztJQUVFLDZCQUFzQztFdkVxMVE5QztFdUU3MFFNO0lBQXdCLDJCQUEyQjtFdkVnMVF6RDtFdUUvMFFNOztJQUVFLCtCQUErQjtFdkVpMVF2QztFdUUvMFFNOztJQUVFLGlDQUFpQztFdkVpMVF6QztFdUUvMFFNOztJQUVFLGtDQUFrQztFdkVpMVExQztFdUUvMFFNOztJQUVFLGdDQUFnQztFdkVpMVF4QztFdUVoMlFNO0lBQXdCLDBCQUEyQjtFdkVtMlF6RDtFdUVsMlFNOztJQUVFLDhCQUErQjtFdkVvMlF2QztFdUVsMlFNOztJQUVFLGdDQUFpQztFdkVvMlF6QztFdUVsMlFNOztJQUVFLGlDQUFrQztFdkVvMlExQztFdUVsMlFNOztJQUVFLCtCQUFnQztFdkVvMlF4QztFdUVuM1FNO0lBQXdCLHdCQUEyQjtFdkVzM1F6RDtFdUVyM1FNOztJQUVFLDRCQUErQjtFdkV1M1F2QztFdUVyM1FNOztJQUVFLDhCQUFpQztFdkV1M1F6QztFdUVyM1FNOztJQUVFLCtCQUFrQztFdkV1M1ExQztFdUVyM1FNOztJQUVFLDZCQUFnQztFdkV1M1F4QztFdUV0NFFNO0lBQXdCLDBCQUEyQjtFdkV5NFF6RDtFdUV4NFFNOztJQUVFLDhCQUErQjtFdkUwNFF2QztFdUV4NFFNOztJQUVFLGdDQUFpQztFdkUwNFF6QztFdUV4NFFNOztJQUVFLGlDQUFrQztFdkUwNFExQztFdUV4NFFNOztJQUVFLCtCQUFnQztFdkUwNFF4QztFdUV6NVFNO0lBQXdCLHdCQUEyQjtFdkU0NVF6RDtFdUUzNVFNOztJQUVFLDRCQUErQjtFdkU2NVF2QztFdUUzNVFNOztJQUVFLDhCQUFpQztFdkU2NVF6QztFdUUzNVFNOztJQUVFLCtCQUFrQztFdkU2NVExQztFdUUzNVFNOztJQUVFLDZCQUFnQztFdkU2NVF4QztFdUV2NVFFO0lBQW1CLHVCQUF1QjtFdkUwNVE1QztFdUV6NVFFOztJQUVFLDJCQUEyQjtFdkUyNVEvQjtFdUV6NVFFOztJQUVFLDZCQUE2QjtFdkUyNVFqQztFdUV6NVFFOztJQUVFLDhCQUE4QjtFdkUyNVFsQztFdUV6NVFFOztJQUVFLDRCQUE0QjtFdkUyNVFoQztBQUNGOztBY3I2UUk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkU0OVFsRTtFdUUzOVFNOztJQUVFLHdCQUFvQztFdkU2OVE1QztFdUUzOVFNOztJQUVFLDBCQUF3QztFdkU2OVFoRDtFdUUzOVFNOztJQUVFLDJCQUEwQztFdkU2OVFsRDtFdUUzOVFNOztJQUVFLHlCQUFzQztFdkU2OVE5QztFdUU1K1FNO0lBQWdDLDBCQUE0QjtFdkUrK1FsRTtFdUU5K1FNOztJQUVFLDhCQUFvQztFdkVnL1E1QztFdUU5K1FNOztJQUVFLGdDQUF3QztFdkVnL1FoRDtFdUU5K1FNOztJQUVFLGlDQUEwQztFdkVnL1FsRDtFdUU5K1FNOztJQUVFLCtCQUFzQztFdkVnL1E5QztFdUUvL1FNO0lBQWdDLHlCQUE0QjtFdkVrZ1JsRTtFdUVqZ1JNOztJQUVFLDZCQUFvQztFdkVtZ1I1QztFdUVqZ1JNOztJQUVFLCtCQUF3QztFdkVtZ1JoRDtFdUVqZ1JNOztJQUVFLGdDQUEwQztFdkVtZ1JsRDtFdUVqZ1JNOztJQUVFLDhCQUFzQztFdkVtZ1I5QztFdUVsaFJNO0lBQWdDLHVCQUE0QjtFdkVxaFJsRTtFdUVwaFJNOztJQUVFLDJCQUFvQztFdkVzaFI1QztFdUVwaFJNOztJQUVFLDZCQUF3QztFdkVzaFJoRDtFdUVwaFJNOztJQUVFLDhCQUEwQztFdkVzaFJsRDtFdUVwaFJNOztJQUVFLDRCQUFzQztFdkVzaFI5QztFdUVyaVJNO0lBQWdDLHlCQUE0QjtFdkV3aVJsRTtFdUV2aVJNOztJQUVFLDZCQUFvQztFdkV5aVI1QztFdUV2aVJNOztJQUVFLCtCQUF3QztFdkV5aVJoRDtFdUV2aVJNOztJQUVFLGdDQUEwQztFdkV5aVJsRDtFdUV2aVJNOztJQUVFLDhCQUFzQztFdkV5aVI5QztFdUV4alJNO0lBQWdDLHVCQUE0QjtFdkUyalJsRTtFdUUxalJNOztJQUVFLDJCQUFvQztFdkU0alI1QztFdUUxalJNOztJQUVFLDZCQUF3QztFdkU0alJoRDtFdUUxalJNOztJQUVFLDhCQUEwQztFdkU0alJsRDtFdUUxalJNOztJQUVFLDRCQUFzQztFdkU0alI5QztFdUUza1JNO0lBQWdDLHFCQUE0QjtFdkU4a1JsRTtFdUU3a1JNOztJQUVFLHlCQUFvQztFdkUra1I1QztFdUU3a1JNOztJQUVFLDJCQUF3QztFdkUra1JoRDtFdUU3a1JNOztJQUVFLDRCQUEwQztFdkUra1JsRDtFdUU3a1JNOztJQUVFLDBCQUFzQztFdkUra1I5QztFdUU5bFJNO0lBQWdDLDJCQUE0QjtFdkVpbVJsRTtFdUVobVJNOztJQUVFLCtCQUFvQztFdkVrbVI1QztFdUVobVJNOztJQUVFLGlDQUF3QztFdkVrbVJoRDtFdUVobVJNOztJQUVFLGtDQUEwQztFdkVrbVJsRDtFdUVobVJNOztJQUVFLGdDQUFzQztFdkVrbVI5QztFdUVqblJNO0lBQWdDLDBCQUE0QjtFdkVvblJsRTtFdUVublJNOztJQUVFLDhCQUFvQztFdkVxblI1QztFdUVublJNOztJQUVFLGdDQUF3QztFdkVxblJoRDtFdUVublJNOztJQUVFLGlDQUEwQztFdkVxblJsRDtFdUVublJNOztJQUVFLCtCQUFzQztFdkVxblI5QztFdUVwb1JNO0lBQWdDLHdCQUE0QjtFdkV1b1JsRTtFdUV0b1JNOztJQUVFLDRCQUFvQztFdkV3b1I1QztFdUV0b1JNOztJQUVFLDhCQUF3QztFdkV3b1JoRDtFdUV0b1JNOztJQUVFLCtCQUEwQztFdkV3b1JsRDtFdUV0b1JNOztJQUVFLDZCQUFzQztFdkV3b1I5QztFdUV2cFJNO0lBQWdDLDBCQUE0QjtFdkUwcFJsRTtFdUV6cFJNOztJQUVFLDhCQUFvQztFdkUycFI1QztFdUV6cFJNOztJQUVFLGdDQUF3QztFdkUycFJoRDtFdUV6cFJNOztJQUVFLGlDQUEwQztFdkUycFJsRDtFdUV6cFJNOztJQUVFLCtCQUFzQztFdkUycFI5QztFdUUxcVJNO0lBQWdDLHdCQUE0QjtFdkU2cVJsRTtFdUU1cVJNOztJQUVFLDRCQUFvQztFdkU4cVI1QztFdUU1cVJNOztJQUVFLDhCQUF3QztFdkU4cVJoRDtFdUU1cVJNOztJQUVFLCtCQUEwQztFdkU4cVJsRDtFdUU1cVJNOztJQUVFLDZCQUFzQztFdkU4cVI5QztFdUV0cVJNO0lBQXdCLDJCQUEyQjtFdkV5cVJ6RDtFdUV4cVJNOztJQUVFLCtCQUErQjtFdkUwcVJ2QztFdUV4cVJNOztJQUVFLGlDQUFpQztFdkUwcVJ6QztFdUV4cVJNOztJQUVFLGtDQUFrQztFdkUwcVIxQztFdUV4cVJNOztJQUVFLGdDQUFnQztFdkUwcVJ4QztFdUV6clJNO0lBQXdCLDBCQUEyQjtFdkU0clJ6RDtFdUUzclJNOztJQUVFLDhCQUErQjtFdkU2clJ2QztFdUUzclJNOztJQUVFLGdDQUFpQztFdkU2clJ6QztFdUUzclJNOztJQUVFLGlDQUFrQztFdkU2clIxQztFdUUzclJNOztJQUVFLCtCQUFnQztFdkU2clJ4QztFdUU1c1JNO0lBQXdCLHdCQUEyQjtFdkUrc1J6RDtFdUU5c1JNOztJQUVFLDRCQUErQjtFdkVndFJ2QztFdUU5c1JNOztJQUVFLDhCQUFpQztFdkVndFJ6QztFdUU5c1JNOztJQUVFLCtCQUFrQztFdkVndFIxQztFdUU5c1JNOztJQUVFLDZCQUFnQztFdkVndFJ4QztFdUUvdFJNO0lBQXdCLDBCQUEyQjtFdkVrdVJ6RDtFdUVqdVJNOztJQUVFLDhCQUErQjtFdkVtdVJ2QztFdUVqdVJNOztJQUVFLGdDQUFpQztFdkVtdVJ6QztFdUVqdVJNOztJQUVFLGlDQUFrQztFdkVtdVIxQztFdUVqdVJNOztJQUVFLCtCQUFnQztFdkVtdVJ4QztFdUVsdlJNO0lBQXdCLHdCQUEyQjtFdkVxdlJ6RDtFdUVwdlJNOztJQUVFLDRCQUErQjtFdkVzdlJ2QztFdUVwdlJNOztJQUVFLDhCQUFpQztFdkVzdlJ6QztFdUVwdlJNOztJQUVFLCtCQUFrQztFdkVzdlIxQztFdUVwdlJNOztJQUVFLDZCQUFnQztFdkVzdlJ4QztFdUVodlJFO0lBQW1CLHVCQUF1QjtFdkVtdlI1QztFdUVsdlJFOztJQUVFLDJCQUEyQjtFdkVvdlIvQjtFdUVsdlJFOztJQUVFLDZCQUE2QjtFdkVvdlJqQztFdUVsdlJFOztJQUVFLDhCQUE4QjtFdkVvdlJsQztFdUVsdlJFOztJQUVFLDRCQUE0QjtFdkVvdlJoQztBQUNGOztBYzl2Ukk7RXlEbERJO0lBQWdDLG9CQUE0QjtFdkVxelJsRTtFdUVwelJNOztJQUVFLHdCQUFvQztFdkVzelI1QztFdUVwelJNOztJQUVFLDBCQUF3QztFdkVzelJoRDtFdUVwelJNOztJQUVFLDJCQUEwQztFdkVzelJsRDtFdUVwelJNOztJQUVFLHlCQUFzQztFdkVzelI5QztFdUVyMFJNO0lBQWdDLDBCQUE0QjtFdkV3MFJsRTtFdUV2MFJNOztJQUVFLDhCQUFvQztFdkV5MFI1QztFdUV2MFJNOztJQUVFLGdDQUF3QztFdkV5MFJoRDtFdUV2MFJNOztJQUVFLGlDQUEwQztFdkV5MFJsRDtFdUV2MFJNOztJQUVFLCtCQUFzQztFdkV5MFI5QztFdUV4MVJNO0lBQWdDLHlCQUE0QjtFdkUyMVJsRTtFdUUxMVJNOztJQUVFLDZCQUFvQztFdkU0MVI1QztFdUUxMVJNOztJQUVFLCtCQUF3QztFdkU0MVJoRDtFdUUxMVJNOztJQUVFLGdDQUEwQztFdkU0MVJsRDtFdUUxMVJNOztJQUVFLDhCQUFzQztFdkU0MVI5QztFdUUzMlJNO0lBQWdDLHVCQUE0QjtFdkU4MlJsRTtFdUU3MlJNOztJQUVFLDJCQUFvQztFdkUrMlI1QztFdUU3MlJNOztJQUVFLDZCQUF3QztFdkUrMlJoRDtFdUU3MlJNOztJQUVFLDhCQUEwQztFdkUrMlJsRDtFdUU3MlJNOztJQUVFLDRCQUFzQztFdkUrMlI5QztFdUU5M1JNO0lBQWdDLHlCQUE0QjtFdkVpNFJsRTtFdUVoNFJNOztJQUVFLDZCQUFvQztFdkVrNFI1QztFdUVoNFJNOztJQUVFLCtCQUF3QztFdkVrNFJoRDtFdUVoNFJNOztJQUVFLGdDQUEwQztFdkVrNFJsRDtFdUVoNFJNOztJQUVFLDhCQUFzQztFdkVrNFI5QztFdUVqNVJNO0lBQWdDLHVCQUE0QjtFdkVvNVJsRTtFdUVuNVJNOztJQUVFLDJCQUFvQztFdkVxNVI1QztFdUVuNVJNOztJQUVFLDZCQUF3QztFdkVxNVJoRDtFdUVuNVJNOztJQUVFLDhCQUEwQztFdkVxNVJsRDtFdUVuNVJNOztJQUVFLDRCQUFzQztFdkVxNVI5QztFdUVwNlJNO0lBQWdDLHFCQUE0QjtFdkV1NlJsRTtFdUV0NlJNOztJQUVFLHlCQUFvQztFdkV3NlI1QztFdUV0NlJNOztJQUVFLDJCQUF3QztFdkV3NlJoRDtFdUV0NlJNOztJQUVFLDRCQUEwQztFdkV3NlJsRDtFdUV0NlJNOztJQUVFLDBCQUFzQztFdkV3NlI5QztFdUV2N1JNO0lBQWdDLDJCQUE0QjtFdkUwN1JsRTtFdUV6N1JNOztJQUVFLCtCQUFvQztFdkUyN1I1QztFdUV6N1JNOztJQUVFLGlDQUF3QztFdkUyN1JoRDtFdUV6N1JNOztJQUVFLGtDQUEwQztFdkUyN1JsRDtFdUV6N1JNOztJQUVFLGdDQUFzQztFdkUyN1I5QztFdUUxOFJNO0lBQWdDLDBCQUE0QjtFdkU2OFJsRTtFdUU1OFJNOztJQUVFLDhCQUFvQztFdkU4OFI1QztFdUU1OFJNOztJQUVFLGdDQUF3QztFdkU4OFJoRDtFdUU1OFJNOztJQUVFLGlDQUEwQztFdkU4OFJsRDtFdUU1OFJNOztJQUVFLCtCQUFzQztFdkU4OFI5QztFdUU3OVJNO0lBQWdDLHdCQUE0QjtFdkVnK1JsRTtFdUUvOVJNOztJQUVFLDRCQUFvQztFdkVpK1I1QztFdUUvOVJNOztJQUVFLDhCQUF3QztFdkVpK1JoRDtFdUUvOVJNOztJQUVFLCtCQUEwQztFdkVpK1JsRDtFdUUvOVJNOztJQUVFLDZCQUFzQztFdkVpK1I5QztFdUVoL1JNO0lBQWdDLDBCQUE0QjtFdkVtL1JsRTtFdUVsL1JNOztJQUVFLDhCQUFvQztFdkVvL1I1QztFdUVsL1JNOztJQUVFLGdDQUF3QztFdkVvL1JoRDtFdUVsL1JNOztJQUVFLGlDQUEwQztFdkVvL1JsRDtFdUVsL1JNOztJQUVFLCtCQUFzQztFdkVvL1I5QztFdUVuZ1NNO0lBQWdDLHdCQUE0QjtFdkVzZ1NsRTtFdUVyZ1NNOztJQUVFLDRCQUFvQztFdkV1Z1M1QztFdUVyZ1NNOztJQUVFLDhCQUF3QztFdkV1Z1NoRDtFdUVyZ1NNOztJQUVFLCtCQUEwQztFdkV1Z1NsRDtFdUVyZ1NNOztJQUVFLDZCQUFzQztFdkV1Z1M5QztFdUUvL1JNO0lBQXdCLDJCQUEyQjtFdkVrZ1N6RDtFdUVqZ1NNOztJQUVFLCtCQUErQjtFdkVtZ1N2QztFdUVqZ1NNOztJQUVFLGlDQUFpQztFdkVtZ1N6QztFdUVqZ1NNOztJQUVFLGtDQUFrQztFdkVtZ1MxQztFdUVqZ1NNOztJQUVFLGdDQUFnQztFdkVtZ1N4QztFdUVsaFNNO0lBQXdCLDBCQUEyQjtFdkVxaFN6RDtFdUVwaFNNOztJQUVFLDhCQUErQjtFdkVzaFN2QztFdUVwaFNNOztJQUVFLGdDQUFpQztFdkVzaFN6QztFdUVwaFNNOztJQUVFLGlDQUFrQztFdkVzaFMxQztFdUVwaFNNOztJQUVFLCtCQUFnQztFdkVzaFN4QztFdUVyaVNNO0lBQXdCLHdCQUEyQjtFdkV3aVN6RDtFdUV2aVNNOztJQUVFLDRCQUErQjtFdkV5aVN2QztFdUV2aVNNOztJQUVFLDhCQUFpQztFdkV5aVN6QztFdUV2aVNNOztJQUVFLCtCQUFrQztFdkV5aVMxQztFdUV2aVNNOztJQUVFLDZCQUFnQztFdkV5aVN4QztFdUV4alNNO0lBQXdCLDBCQUEyQjtFdkUyalN6RDtFdUUxalNNOztJQUVFLDhCQUErQjtFdkU0alN2QztFdUUxalNNOztJQUVFLGdDQUFpQztFdkU0alN6QztFdUUxalNNOztJQUVFLGlDQUFrQztFdkU0alMxQztFdUUxalNNOztJQUVFLCtCQUFnQztFdkU0alN4QztFdUUza1NNO0lBQXdCLHdCQUEyQjtFdkU4a1N6RDtFdUU3a1NNOztJQUVFLDRCQUErQjtFdkUra1N2QztFdUU3a1NNOztJQUVFLDhCQUFpQztFdkUra1N6QztFdUU3a1NNOztJQUVFLCtCQUFrQztFdkUra1MxQztFdUU3a1NNOztJQUVFLDZCQUFnQztFdkUra1N4QztFdUV6a1NFO0lBQW1CLHVCQUF1QjtFdkU0a1M1QztFdUUza1NFOztJQUVFLDJCQUEyQjtFdkU2a1MvQjtFdUUza1NFOztJQUVFLDZCQUE2QjtFdkU2a1NqQztFdUUza1NFOztJQUVFLDhCQUE4QjtFdkU2a1NsQztFdUUza1NFOztJQUVFLDRCQUE0QjtFdkU2a1NoQztBQUNGOztBd0Uvb1NBO0VBRUksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBRVYsb0JBQW9CO0VBQ3BCLFdBQVc7RUFFWCxrQ0FBa0M7QXhFK29TdEM7O0F5RXpwU0E7RUFBa0IsNEdBQThDO0F6RTZwU2hFOztBeUV6cFNBO0VBQWlCLDhCQUE4QjtBekU2cFMvQzs7QXlFNXBTQTtFQUFpQiw4QkFBOEI7QXpFZ3FTL0M7O0F5RS9wU0E7RUFBaUIsOEJBQThCO0F6RW1xUy9DOztBeUVscVNBO0VDVEUsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixtQkFBbUI7QTFFK3FTckI7O0F5RWhxU0k7RUFBd0IsMkJBQTJCO0F6RW9xU3ZEOztBeUVucVNJO0VBQXdCLDRCQUE0QjtBekV1cVN4RDs7QXlFdHFTSTtFQUF3Qiw2QkFBNkI7QXpFMHFTekQ7O0Fjcm9TSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RWlyU3JEO0V5RWhyU0U7SUFBd0IsNEJBQTRCO0V6RW1yU3REO0V5RWxyU0U7SUFBd0IsNkJBQTZCO0V6RXFyU3ZEO0FBQ0Y7O0FjanBTSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RTZyU3JEO0V5RTVyU0U7SUFBd0IsNEJBQTRCO0V6RStyU3REO0V5RTlyU0U7SUFBd0IsNkJBQTZCO0V6RWlzU3ZEO0FBQ0Y7O0FjN3BTSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RXlzU3JEO0V5RXhzU0U7SUFBd0IsNEJBQTRCO0V6RTJzU3REO0V5RTFzU0U7SUFBd0IsNkJBQTZCO0V6RTZzU3ZEO0FBQ0Y7O0FjenFTSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0V6RXF0U3JEO0V5RXB0U0U7SUFBd0IsNEJBQTRCO0V6RXV0U3REO0V5RXR0U0U7SUFBd0IsNkJBQTZCO0V6RXl0U3ZEO0FBQ0Y7O0F5RXB0U0E7RUFBbUIsb0NBQW9DO0F6RXd0U3ZEOztBeUV2dFNBO0VBQW1CLG9DQUFvQztBekUydFN2RDs7QXlFMXRTQTtFQUFtQixxQ0FBcUM7QXpFOHRTeEQ7O0F5RTF0U0E7RUFBdUIsMkJBQTBDO0F6RTh0U2pFOztBeUU3dFNBO0VBQXVCLCtCQUE0QztBekVpdVNuRTs7QXlFaHVTQTtFQUF1QiwyQkFBMkM7QXpFb3VTbEU7O0F5RW51U0E7RUFBdUIsMkJBQXlDO0F6RXV1U2hFOztBeUV0dVNBO0VBQXVCLDhCQUEyQztBekUwdVNsRTs7QXlFenVTQTtFQUF1Qiw2QkFBNkI7QXpFNnVTcEQ7O0F5RXp1U0E7RUFBYyxzQkFBd0I7QXpFNnVTdEM7O0EyRXB4U0U7RUFDRSx5QkFBd0I7QTNFdXhTNUI7O0FLN3dTRTtFc0VMTSx5QkFBMEU7QTNFc3hTbEY7O0EyRTV4U0U7RUFDRSx5QkFBd0I7QTNFK3hTNUI7O0FLcnhTRTtFc0VMTSx5QkFBMEU7QTNFOHhTbEY7O0EyRXB5U0U7RUFDRSx5QkFBd0I7QTNFdXlTNUI7O0FLN3hTRTtFc0VMTSx5QkFBMEU7QTNFc3lTbEY7O0EyRTV5U0U7RUFDRSx5QkFBd0I7QTNFK3lTNUI7O0FLcnlTRTtFc0VMTSx5QkFBMEU7QTNFOHlTbEY7O0EyRXB6U0U7RUFDRSx5QkFBd0I7QTNFdXpTNUI7O0FLN3lTRTtFc0VMTSx5QkFBMEU7QTNFc3pTbEY7O0EyRTV6U0U7RUFDRSx5QkFBd0I7QTNFK3pTNUI7O0FLcnpTRTtFc0VMTSx5QkFBMEU7QTNFOHpTbEY7O0EyRXAwU0U7RUFDRSx5QkFBd0I7QTNFdTBTNUI7O0FLN3pTRTtFc0VMTSx5QkFBMEU7QTNFczBTbEY7O0EyRTUwU0U7RUFDRSx5QkFBd0I7QTNFKzBTNUI7O0FLcjBTRTtFc0VMTSx5QkFBMEU7QTNFODBTbEY7O0F5RXZ5U0E7RUFBYSx5QkFBNkI7QXpFMnlTMUM7O0F5RTF5U0E7RUFBYyx5QkFBNkI7QXpFOHlTM0M7O0F5RTV5U0E7RUFBaUIsb0NBQWtDO0F6RWd6U25EOztBeUUveVNBO0VBQWlCLDBDQUFrQztBekVtelNuRDs7QXlFL3lTQTtFR3ZERSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsU0FBUztBNUUwMlNYOztBeUVuelNBO0VBQXdCLGdDQUFnQztBekV1elN4RDs7QXlFcnpTQTtFQUNFLGlDQUFpQztFQUNqQyxnQ0FBZ0M7QXpFd3pTbEM7O0F5RW56U0E7RUFBYyx5QkFBeUI7QXpFdXpTdkM7O0E2RXgzU0E7RUFDRSw4QkFBOEI7QTdFMjNTaEM7O0E2RXgzU0E7RUFDRSw2QkFBNkI7QTdFMjNTL0I7O0E4RTMzU0U7RTVFT0Y7OztJNEVETSw0QkFBNEI7SUFFNUIsMkJBQTJCO0U5RTIzUy9CO0U4RXgzU0U7SUFFSSwwQkFBMEI7RTlFeTNTaEM7RThFaDNTRTtJQUNFLDZCQUE2QjtFOUVrM1NqQztFRXByU0Y7STRFL0tNLGdDQUFnQztFOUVzMlNwQztFOEVwMlNFOztJQUVFLHlCM0V6Q1k7STJFMENaLHdCQUF3QjtFOUVzMlM1QjtFOEU5MVNFO0lBQ0UsMkJBQTJCO0U5RWcyUy9CO0U4RTcxU0U7O0lBRUUsd0JBQXdCO0U5RSsxUzVCO0U4RTUxU0U7OztJQUdFLFVBQVU7SUFDVixTQUFTO0U5RTgxU2I7RThFMzFTRTs7SUFFRSx1QkFBdUI7RTlFNjFTM0I7RThFcjFTRTtJQUNFLFEzRStoQ2dDO0VId3pRcEM7RUVuNFNGO0k0RStDTSwyQkFBMkM7RTlFdTFTL0M7RThFcjFTRTtJQUNFLDJCQUEyQztFOUV1MVMvQztFaUNyNlNGO0k2Q21GTSxhQUFhO0U5RXExU2pCO0VzQ3A3U0Y7SXdDa0dNLHNCM0V0RlM7RUgyNlNiO0VnQng3U0Y7SThEdUdNLG9DQUFvQztFOUVvMVN4QztFOEVyMVNFOztJQUtJLGlDQUFtQztFOUVvMVN6QztFZ0J2NVNGOztJOEQwRVEsb0NBQXNDO0U5RWkxUzVDO0VnQnQwU0Y7SThETk0sY0FBYztFOUUrMFNsQjtFaUJyOFNBOzs7O0k2RDRITSxxQjNFdkhVO0VIczhTaEI7RWdCajJTRjtJOER1Qk0sY0FBYztJQUNkLHFCM0U3SFk7RUgwOFNoQjtBQUNGO0FBb21CQSx3Q0FBd0MsQztBK0V6alV4Qzs7OztFQUlFO0FBQ0Y7RUFDRSxnQkFBZ0I7QUFDbEI7QUFDQTtFQUNFLGNBQWM7RUFDZCxhQUFhO0VBQ2IsWUFBWTtFQUNaLFdBQVc7QUFDYjtBQUNBO0VBQ0U7SUFDRSxXQUFXO0VBQ2I7QUFDRjtBQUNBO0VBQ0U7SUFDRSxXQUFXO0VBQ2I7QUFDRjtBQUNBO0VBQ0U7SUFDRSxXQUFXO0VBQ2I7QUFDRjtBQUNBOztFQUVFLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsa0JBQWtCO0FBQ3BCO0FBQ0E7RUFDRSxrQ0FBa0M7RUFDbEMsbUNBQW1DO0VBQ25DLDZCQUE2QjtFQUM3Qix1Q0FBdUM7RUFDdkMsU0FBUztFQUNULFNBQVM7QUFDWDtBQUNBO0VBQ0Usa0NBQWtDO0VBQ2xDLG1DQUFtQztFQUNuQyw4QkFBOEI7RUFDOUIsU0FBUztFQUNULFNBQVM7QUFDWDtBQUNBO0VBQ0Usa0NBQWtDO0VBQ2xDLG1DQUFtQztFQUNuQywwQkFBMEI7RUFDMUIsb0NBQW9DO0VBQ3BDLFlBQVk7RUFDWixTQUFTO0FBQ1g7QUFDQTtFQUNFLGtDQUFrQztFQUNsQyxtQ0FBbUM7RUFDbkMsMkJBQTJCO0VBQzNCLFlBQVk7RUFDWixTQUFTO0FBQ1g7QUFDQTtFQUNFLFVBQVU7RUFDVixVQUFVO0FBQ1o7QUFDQTtFQUNFLFVBQVU7RUFDVixVQUFVO0FBQ1o7QUFDQTtFQUNFLFNBQVM7QUFDWDtBQUNBO0VBQ0UsY0FBYztBQUNoQjtBQUNBO0VBQ0UsZ0JBQWdCO0FBQ2xCO0FBQ0E7OztFQUdFLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLFNBQVM7QUFDWDtBQUNBO0VBQ0UsWUFBWTtBQUNkO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULDBCQUEwQjtBQUM1QjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCw0QkFBNEI7QUFDOUI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsMEJBQTBCO0FBQzVCO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULDRCQUE0QjtBQUM5QjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxxQkFBcUI7QUFDdkI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsdUJBQXVCO0FBQ3pCO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxZQUFZO0VBQ1osVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsU0FBUztFQUNULHVCQUF1QjtBQUN6QjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCwyQkFBMkI7QUFDN0I7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsZ0NBQWdDO0FBQ2xDO0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsdUNBQXVDO0FBQ3pDO0FBQ0E7RUFDRSxVQUFVO0VBQ1YsU0FBUztFQUNULFlBQVk7RUFDWixXQUFXO0VBQ1gsb0JBQW9CO0FBQ3RCO0FBQ0E7O0VBRUUsZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixXQUFXO0FBQ2I7QUFDQTtFQUNFLFdBQVc7RUFDWCxTQUFTO0FBQ1g7QUFDQTs7RUFFRSxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLGNBQWM7QUFDaEI7QUFDQTtFQUNFLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsV0FBVztBQUNiO0FBQ0E7RUFDRSxZQUFZO0FBQ2Q7QUFDQTs7RUFFRSxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjtBQUNBO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCx5QkFBeUI7QUFDM0I7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QscUJBQXFCO0FBQ3ZCO0FBQ0E7RUFDRSxlQUFlO0FBQ2pCO0FBQ0E7RUFDRSxtQkFBbUI7QUFDckI7QUFDQTtFQUNFLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsV0FBVztBQUNiO0FBQ0E7RUFDRSxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFdBQVc7QUFDYjtBQUNBOzs7O0VBSUUsbUJBQW1CO0VBQ25CLGVBQWU7QUFDakI7QUFDQTs7RUFFRSxjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLHlCQUF5QjtFQUN6Qiw0QkFBNEI7RUFDNUIsb0NBQW9DO0VBQ3BDLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsVUFBVTtBQUNaO0FBQ0E7O0VBRUUseUJBQXlCO0VBQ3pCLGNBQWM7RUFDZCx5Q0FBeUM7QUFDM0M7QUFDQTtFQUNFLHlCQUF5QjtBQUMzQjtBQUNBOztFQUVFLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsbUJBQW1CO0FBQ3JCO0FBQ0E7O0VBRUUscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2Ysc0JBQXNCO0FBQ3hCO0FBQ0E7O0VBRUUsbUJBQW1CO0FBQ3JCO0FBQ0E7O0VBRUUseUJBQXlCO0VBQ3pCLGNBQWM7RUFDZCx5Q0FBeUM7QUFDM0M7QUFDQTs7RUFFRSxjQUFjO0FBQ2hCO0FBQ0E7Ozs7RUFJRSxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjtBQUNBO0VBQ0UsWUFBWTtFQUNaLGlCQUFpQjtBQUNuQjtBQUNBO0VBQ0UsV0FBVztBQUNiO0FBQ0E7RUFDRSw2QkFBNkI7QUFDL0I7QUFDQTtFQUNFLGVBQWU7QUFDakI7QUFDQTtFQUNFLGVBQWU7QUFDakI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixTQUFTO0FBQ1g7O0FDaFlBLE1BQ0kseUNBQTZDLENBQzdDLHFDQUF5QyxDQUN6QyxzQkFBdUIsQ0FDdkIscUNBQXlDLENBR3pDLCtCQUFnQyxDQUNoQyx5QkFBd0MsQ0FDeEMsMkNBQTRDLENBRzVDLG1CQUFvQixDQUNwQixvQkFBcUIsQ0FHckIsOEJBQTBDLENBQzFDLGlEQUFrRCxDQUNsRCwwREFBMkQsQ0FDM0Qsc0NBQXVDLENBR3ZDLDRDQUE2QyxDQUM3QyxxQkFBc0IsQ0FDdEIsdUJBQXdCLENBQ3hCLHNCQUF1QixDQUd2QixrQ0FBbUMsQ0FHbkMsMkNBQTRDLENBQzVDLG9CQUFxQixDQUNyQixnREFBaUQsQ0FHakQsd0JBQXlCLENBQ3pCLDBDQUEyQyxDQUMzQyxpREFBa0QsQ0FDbEQsaURBQWtELENBQ2xELGlEQUFrRCxDQUdsRCxxQkFBc0IsQ0FDdEIsMkJBQTRCLENBQzVCLDBCQUEyQixDQUMzQiw2QkFBOEIsQ0FDOUIsOEJBQStCLENBQy9CLGtFQUFtRSxDQUduRSw0QkFBNkIsQ0FDN0IsbURBQW9ELENBQ3BELHFDQUFzQyxDQUd0Qyx1Q0FBd0MsQ0FDeEMsdUNBQXdDLENBR3hDLHlDQUEwQyxDQUMxQyx5Q0FBMEMsQ0FHMUMsa0VBQXNFLENBQ3RFLDhCQUNKLENDbEVBLFVBRUUsbUJBQW9CLENBRHBCLGlCQUVGLENBRUEsc0JBRUUscUJBQ0YsQ0NSQSxNQUNJLHlEQUE2RCxDQUM3RCw4QkFDSixDQUdBLGtDQUNJLEdBQ0ksc0JBQ0osQ0FDQSxHQUNJLHVCQUNKLENBQ0osQ0FFQSwwQkFDSSxHQUNJLHNCQUNKLENBQ0EsR0FDSSx1QkFDSixDQUNKLENBR0EsOENBRUksbUJBQW9CLENBQ3BCLHFGQUVKLENBQ0EsbUNBRUksU0FDSixDQ3ZCQSxNQUNJLDRDQUE2QyxDQUM3QyxrREFBbUQsQ0FDbkQsb0RBQ0osQ0FHSSxvSkFNSSxzQ0FBdUMsQ0FEdkMsZ0NBRUosQ0FZQSxnQ0FDSSxtQkFDSixDQUVBLDhCQUNJLGVBQWdCLENBQ2hCLGNBQ0osQ0FFQSxpQ0FDSSxhQUFjLENBQ2QsZ0JBQ0osQ0FFQSxzQ0FDSSxnQkFDSixDQ3pDSixxQkFDSSx1QkFBZ0IsQ0FBaEIsb0JBQWdCLENBQWhCLGVBQWdCLENBR2hCLG9DQUFxQyxDQUNyQywyRUFBNEUsQ0FDNUUscUNBQXNDLENBSnRDLFlBQWEsQ0FDYixlQUFrQixDQUlsQixrQkFDSixDQUVBLHNCQUNJLFlBQWEsQ0FDYixlQUFnQixDQUNoQixXQUFZLENBQ1osY0FBZSxDQUNmLGFBQWMsQ0FDZCxpQkFDSixDQUVBLGFBRUksa0JBQW1CLENBRG5CLFlBQWEsQ0FFYixpQ0FDSixDQUdBLHFDQUNJLFdBQ0osQ0FDQSx1Q0FDSSxjQUNKLENBQ0EsK0JBQ0ksK0JBQWdDLENBQ2hDLDJCQUE0QixDQUM1Qiw0QkFDSixDQ3pDQSxvQkFDSSw2QkFBOEIsQ0FDOUIsd0NBQXlDLENBQ3pDLHVGQUN3QyxDQUN4QywrREFDSixDQUlBLDhCQUNJLHVEQUNKLENBSUEsaUNBQ0ksU0FDSixDQ3ZCQSxXQUNJLDZCQUE4QixDQUc5Qiw0QkFBNkIsQ0FEN0IsUUFBUyxDQUVULGNBQWUsQ0FDZixnQkFBaUIsQ0FKakIsU0FLSixDQ1BBLG1CQW9CSSxnQ0FBaUMsQ0FMakMsMkVBQTRFLENBRTVFLGlFQUFrRSxDQURsRSxxQkFBc0IsQ0FGdEIsd0NBQXlDLENBWnpDLHFCQUFzQixDQW1CdEIsOEJBQStCLENBcEIvQixhQUFjLENBS2QsTUFBTyxDQWFQLGVBQWdCLENBVmhCLFFBQVMsQ0FFVCx3Q0FBeUMsQ0FDekMsc0NBQXVDLENBQ3ZDLGVBQWdCLENBTGhCLGFBQWMsQ0FMZCxpQkFBa0IsQ0FlbEIsZUFBZ0IsQ0FiaEIsdUNBQXdDLENBS3hDLFVBQVcsQ0FIWCxrQ0FlSixDQUVBLGdCQUNJLGlCQUNKLENDM0JBLHFCQUlJLFVBQVcsQ0FDWCxxQ0FBc0MsQ0FFdEMsY0FBZSxDQUxmLGFBQWMsQ0FEZCxzQkFBdUIsQ0FFdkIseUNBQTBDLENBRzFDLGtCQUVKLENBRUEsZ0NBQ0ksK0NBQWdELENBQ2hELDZDQUNKLENBRUEsK0JBQ0ksaURBQWtELENBQ2xELCtDQUNKLENBRUEsK0JBQ0ksc0NBQXVDLENBQ3ZDLG9DQUFxQyxDQUNyQyxzQ0FDSixDQ3hCQSxjQUVJLGtCQUFtQixDQUNuQixzQ0FBdUMsQ0FDdkMsc0dBQ21DLENBQ25DLHFDQUFzQyxDQUN0Qyw4QkFBK0IsQ0FOL0IsWUFBYSxDQU9iLGlDQUFrQyxDQUNsQyxnQkFBdUIsQ0FDdkIsZUFBaUIsQ0FDakIsU0FDSixDQUVBLGNBUUksNkJBQThCLENBTjlCLHVCQUFnQixDQUFoQixvQkFBZ0IsQ0FBaEIsZUFBZ0IsQ0FLaEIsZUFBZ0IsQ0FGaEIsUUFBUyxDQUNULGNBQWUsQ0FMZixtQkFBb0IsQ0FFcEIsZUFBZ0IsQ0FDaEIsU0FBVSxDQUtWLG9EQUNKLENBS0ksMEJBQ0ksNEJBQTZCLENBQzdCLHdCQUNKLENBQ0EseUVBR0ksVUFBWSxDQURaLGlCQUVKLENBQ0Esd0NBQ0ksWUFDSixDQ2xDSiwwQ0FDSSxZQUNKLENBRUEsd0pBSUksWUFDSixDQUVBLDhCQUdJLHVCQUFnQixDQUFoQixvQkFBZ0IsQ0FBaEIsZUFBZ0IsQ0FRaEIsZUFBZ0IsQ0FKaEIsNEJBQWlCLENBQWpCLGdCQUFpQixDQUtqQixlQUFnQixDQVZoQixrQ0FBbUMsQ0FhbkMsV0FBWSxDQVZaLDZCQUE4QixDQUQ5QixpQ0FBa0MsQ0FLbEMsY0FBaUIsQ0FLakIsY0FBZSxDQU5mLFlBQWEsQ0FFYixhQUFjLENBR2QsT0FBUSxDQUdSLFNBQ0osQ0FFQSw4QkFDSSw4Q0FDSixDQUZBLGtDQUNJLDhDQUNKLENBRkEseUJBQ0ksOENBQ0osQ0FRSSw4QkFDSSxTQUNKLENBQ0EsaURBQ0ksY0FDSixDQUtBLHVFQUNJLFVBQ0osQ0MxREosYUFDSSxpQkFBa0IsQ0FXbEIscURBQThDLENBQTlDLDZDQUE4QyxDQUg5QyxtQ0FBK0MsQ0FBL0Msb0NBQStDLENBTi9DLGFBQWMsQ0FEZCxTQUFVLENBR1YsZUFBZ0IsQ0FEaEIsbUJBQW9CLENBTXBCLHVGQUNvRSxDQUVwRSxzQkFDSixDQUNBLGdDQUVJLGlCQUFrQixDQUVsQixVQUFXLENBQ1gseUVBQTJFLENBRjNFLFNBR0osQ0FHQSwwQkFDSSxTQUNKOztBQ3pCQSx3Q0FBd0MsQztBQ0Z4Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUE2QkU7QUFDRjs7RUFFRTtBQUNGO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBOzs7Ozs7RUFNRSw2QkFBNkI7QUFDL0I7O0FBRUEsbUJBQW1CO0FBQ25CO0VBQ0UsU0FBUztFQUNULHlCQUF5QjtBQUMzQjs7QUFFQTs7RUFFRSxpQkFBaUI7QUFDbkI7O0FBRUE7O0VBRUUsOEJBQThCO0FBQ2hDOztBQUVBOzs7Ozs7RUFNRSxpQkFBaUI7RUFDakIsVUFBVTtBQUNaOztBQUVBOzs7Ozs7OztFQVFFLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7QUFDQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFFBQVE7QUFDVjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQiw0RkFBNEY7RUFDNUYsUUFBUTtFQUNSLFlBQVk7QUFDZDs7QUFFQTs7Ozs7Ozs7RUFRRSx1QkFBdUI7RUFDdkIsK0JBQStCO0VBQy9CLDRCQUE0QjtBQUM5Qjs7QUFFQTs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsdUtBQXVLO0VBQ3ZLLDhGQUE4RjtFQUM5Rjs7Ozs7O0dBTUM7RUFDRCxpQkFBaUI7RUFDakIsU0FBUztFQUNULGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsUUFBUTtFQUNSLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsNEdBQTRHO0VBQzVHLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQiw0QkFBNEI7RUFDNUIsNkJBQTZCO0VBQzdCLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixvRkFBb0Y7RUFDcEYsc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQiwyQkFBMkI7QUFDN0I7O0FBRUE7RUFDRSwyQkFBMkI7RUFDM0IsaUJBQWlCO0VBQ2pCLDRCQUE0QjtFQUM1Qiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSwyQkFBMkI7RUFDM0Isa0JBQWtCO0VBQ2xCLDJCQUEyQjtBQUM3Qjs7QUFFQTs7O0VBR0UsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBLDBGQUEwRjtBQUMxRjtFQUNFLG9CQUFvQjtFQUNwQiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0UsNEJBQTRCO0FBQzlCOztBQUVBOztFQUVFLDBCQUEwQjtBQUM1Qjs7QUFFQTs7RUFFRSxxQkFBcUI7RUFDckIsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLDRCQUE0QjtBQUM5Qjs7QUFFQTs7O0VBR0U7QUFDRjs7OztFQUlFLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsZ0JBQWdCO0FBQ2xCOztBQUVBLGNBQWM7QUFDZDtFQUNFLGtCQUFrQjtFQUNsQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUEseUNBQXlDO0FBQ3pDO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBLGdCQUFnQjtBQUNoQjtFQUNFLFlBQVk7RUFDWixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7OztFQUdFLGFBQWE7QUFDZjs7QUFFQTs7OztFQUlFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGNBQWM7QUFDaEI7O0FBRUE7OztFQUdFLGtCQUFrQjtBQUNwQjs7QUFFQTs7O0VBR0UsZ0JBQWdCO0FBQ2xCO0FBQ0EsZ0JBQWdCO0FBQ2hCO0VBQ0UsMEJBQTBCO0VBQzFCLDZIQUE2SDtFQUM3SCxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsYUFBYTtBQUNmOztBQUVBO0VBQ0UsbURBQW1EO0VBQ25ELG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLDZIQUE2SDtFQUM3SCxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxvQkFBb0I7RUFDcEIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGVBQWU7QUFDakI7O0FBRUEsWUFBWTtBQUNaLHdCQUF3QjtBQUN4QjtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixVQUFVO0VBQ1YsWUFBWTtBQUNkOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxXQUFXO0FBQ2I7O0FBRUE7Ozs7RUFJRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLE1BQU07RUFDTix5QkFBeUI7RUFDekIsYUFBYTtFQUNiLFFBQVE7RUFDUiw2QkFBNkI7RUFDN0IsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsNEJBQTRCO0VBQzVCLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxTQUFTO0VBQ1QseUJBQXlCO0VBQ3pCLGFBQWE7RUFDYixTQUFTO0VBQ1QsOEJBQThCO0VBQzlCLGVBQWU7QUFDakI7O0FBRUE7O0VBRUUsY0FBYztFQUNkLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLDBCQUEwQjtFQUMxQixlQUFlO0FBQ2pCLEVBQUUsbUJBQW1CO0FBQ3JCO0VBQ0Usb0JBQW9CO0VBQ3BCLFFBQVE7RUFDUix3R0FBd0c7RUFDeEcsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixnSEFBZ0g7RUFDaEgsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFdBQVc7RUFDWCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVix3QkFBd0I7RUFDeEIsNEJBQTRCO0VBQzVCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixnSEFBZ0g7RUFDaEgsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixVQUFVO0VBQ1YsWUFBWTtFQUNaLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLGtFQUFrRTtFQUNsRSxtVkFBbVY7QUFDclY7O0FBRUE7RUFDRSxvRUFBb0U7RUFDcEUsbVZBQW1WO0FBQ3JWOztBQUVBO0VBQ0UsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEI7c0hBQ29IO0VBQ3BILG1CQUFtQjtBQUNyQjs7QUFFQTs7Ozs7Ozs7RUFRRSxrQkFBa0I7QUFDcEI7O0FBRUE7Ozs7Ozs7O0VBUUUsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7RUFDUixTQUFTO0VBQ1QsNEZBQTRGO0VBQzVGLGlCQUFpQjtFQUNqQixtQkFBbUI7QUFDckI7O0FBRUEsc0dBQXNHO0FBQ3RHO0VBQ0U7Ozs7Ozs7O0lBUUUsYUFBYTtFQUNmO0FBQ0Y7QUFDQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSx5QkFBeUI7QUFDM0I7O0FBRUE7O0VBRUUseUJBQXlCO0VBQ3pCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULHNCQUFzQjtFQUN0QixvQkFBb0I7RUFDcEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixtQ0FBbUM7RUFDbkMsWUFBWTtFQUNaLHlFQUF5RTtFQUN6RSxjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIscURBQXFEO0FBQ3ZEOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0FBQ1Q7O0FBRUE7RUFDRSw4Q0FBOEM7RUFDOUMsa0JBQWtCO0VBQ2xCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7Q0FFQztBQUNEO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0VBQ1osV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsY0FBYztBQUNoQjs7QUFFQTs7Q0FFQztBQUNEO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOztDQUVDO0FBQ0Q7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7O0NBRUM7QUFDRDtFQUNFLFdBQVc7QUFDYjs7QUFFQTs7RUFFRTtBQUNGO0VBQ0UsU0FBUztBQUNYOztBQUVBO0VBQ0Usc0JBQXNCO0VBQ3RCLHlCQUF5QjtFQUN6QixpQkFBaUI7QUFDbkI7O0FBRUE7Ozs7O0VBS0Usb0NBQW9DO0FBQ3RDOztBQUVBOztFQUVFLG1CQUFtQjtFQUNuQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsOEJBQThCO0VBQzlCLFdBQVc7RUFDWCxVQUFVO0VBQ1YseUJBQXlCO0VBQ3pCLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLGVBQWU7RUFHZix3Q0FBd0M7RUFDeEMsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFlBQVk7RUFDWixTQUFTO0FBQ1g7QUFDQTs7OztFQUlFO0FBQ0Y7O0VBRUUsMkJBQTJCO0VBQzNCLHlCQUF5QjtFQUV6QixzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGlCQUFpQjtFQUNqQiw2Q0FBNkM7RUFDN0MsaUNBQWlDO0FBQ25DOztBQUVBO0VBR0UsbUNBQW1DO0VBQ25DLHdCQUF3QjtBQUMxQjs7QUFFQTs7RUFFRSxhQUFhO0FBQ2Y7O0FBRUEsMkVBQTJFO0FBQzNFOzs7O0VBSUUsY0FBYztFQUNkLFlBQVk7RUFDWixhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsV0FBVztBQUNiOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLDRCQUE0QjtFQUM1Qiw2QkFBNkI7RUFDN0IscUNBQXFDO0FBQ3ZDOztBQUVBO0VBQ0Usb0NBQW9DO0VBQ3BDLDRCQUE0QjtFQUM1Qiw2QkFBNkI7RUFDN0IscUNBQXFDO0FBQ3ZDO0FBQ0EsZ0JBQWdCO0FBQ2hCOzs7RUFHRTtBQUNGO0VBQ0UsYUFBYTtFQUNiLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIseUJBQXlCO0VBQ3pCLDJEQUEyRDtBQUM3RDs7QUFFQTs7O0NBR0M7QUFDRDs7RUFFRSxZQUFZO0VBQ1osY0FBYztBQUNoQjs7QUFFQTtFQUNFLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQiw4Q0FBOEM7QUFDaEQ7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixTQUFTO0VBQ1QsT0FBTztFQUNQLFFBQVE7RUFDUixVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsY0FBYztFQUNkLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLFNBQVM7RUFDVCxVQUFVO0VBQ1YsV0FBVztFQUNYLFlBQVk7RUFDWix1RUFBdUU7RUFDdkUsaUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsNkJBQTZCO0VBQzdCLGtDQUFrQztFQUNsQyw0QkFBNEI7RUFDNUIsd0JBQXdCO0VBQ3hCLFlBQVk7QUFDZDs7QUFFQTs7RUFFRSxVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsV0FBVztFQUNYLDJPQUEyTztBQUM3Tzs7QUFFQTs7RUFFRSxZQUFZO0VBQ1osMk9BQTJPO0FBQzdPOztBQUVBOztFQUVFLGVBQWU7RUFDZixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQixTQUFTO0FBQ1g7O0FBRUE7O0VBRUUscUJBQXFCO0VBQ3JCLFVBQVU7QUFDWjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsY0FBYztFQUNkLHNCQUFzQjtFQUN0QiwyQkFBMkI7RUFDM0IsYUFBYTtFQUNiLFNBQVM7RUFDVCxTQUFTO0VBQ1QsV0FBVztFQUNYLFlBQVk7RUFDWixXQUFXO0VBQ1gsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsV0FBVztBQUNiOztBQUVBO0VBQ0UsY0FBYztFQUNkLGlCQUFpQjtBQUNuQjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsaUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixtQ0FBbUM7RUFDbkMsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLG1DQUFtQztBQUNyQzs7QUFFQTs7RUFFRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIsZUFBZTtFQUNmLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLGVBQWU7QUFDakI7O0FBRUE7O0VBRUUsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0FBQ3BCOztBQUVBLHFCQUFxQjtBQUNyQjtFQUNFLG1CQUFtQjtFQUNuQixZQUFZO0FBQ2Q7QUFDQTs7Q0FFQztBQUNEO0VBQ0UsWUFBWTtFQUNaLGVBQWU7RUFDZixXQUFXO0VBQ1gsZUFBZTtFQUNmLFdBQVc7RUFDWCxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCO0FBQ0E7O0NBRUM7QUFDRDtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLFdBQVc7QUFDYjtBQUNBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFdBQVc7RUFDWCxrQ0FBa0M7RUFDbEMsa0JBQWtCO0VBQ2xCLDJCQUEyQjtBQUM3Qjs7QUFFQTtFQUNFLE9BQU87RUFDUCxZQUFZO0VBQ1osbUNBQW1DO0VBQ25DLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGFBQWE7RUFDYixhQUFhO0VBQ2Isa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZ0ZBQWdGO0VBR2hGLHNCQUFzQjtFQUN0QixZQUFZO0VBQ1osMkJBQTJCO0VBQzNCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLFlBQVk7RUFDWixlQUFlO0VBQ2YsWUFBWTtFQUNaLHVCQUF1QjtFQUN2Qix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSw0QkFBNEI7RUFDNUIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UseUdBQXlHO0VBQ3pHLDhCQUE4QjtFQUM5QixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSwrQkFBK0I7RUFDL0IsaUJBQWlCO0FBQ25CO0FBQ0E7O0VBRUU7QUFDRjtFQUNFLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsK0VBQStFO0VBQy9FLGFBQWE7QUFDZjs7QUFFQTs7Ozs7RUFLRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFDeEIsc0JBQXNCO0VBQ3RCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHVCQUF1QjtFQUN2QixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsc0JBQXNCO0VBQ3RCLG9CQUFvQjtFQUNwQixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsU0FBUztBQUNYOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCO0FBQ0E7RUFDRSwwQkFBMEI7RUFDMUIsaUJBQWlCO0VBQ2pCLHNCQUFzQjtFQUN0QixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLDBCQUEwQjtBQUM1QjtBQUNBLGdCQUFnQjtBQUNoQjs7RUFFRTtBQUNGO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLCtFQUErRTtFQUMvRSxhQUFhO0FBQ2Y7O0FBRUE7Ozs7O0VBS0UsYUFBYTtBQUNmOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIsd0JBQXdCO0VBQ3hCLHNCQUFzQjtFQUN0Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSx1QkFBdUI7RUFDdkIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLGVBQWU7RUFDZixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0FBQ2hCOztBQUVBOztFQUVFLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixTQUFTO0VBQ1QsVUFBVTtFQUNWLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixTQUFTO0FBQ1g7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7QUFDQSxnQkFBZ0I7QUFDaEI7O0VBRUU7QUFDRixvQkFBb0I7QUFDcEI7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLGFBQWE7QUFDZjs7QUFFQTs7O0VBR0UsYUFBYTtBQUNmOztBQUVBO0VBQ0Usc0JBQXNCO0VBQ3RCLHdCQUF3QjtFQUN4Qix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixvQkFBb0I7QUFDdEI7O0FBRUE7RUFDRSxvQkFBb0I7RUFDcEIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixTQUFTO0FBQ1g7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSw4QkFBOEI7RUFDOUIsYUFBYTtFQUNiLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixZQUFZO0FBQ2Q7O0FBRUEsZUFBZTtBQUNmO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBLHlCQUF5QjtBQUN6QjtFQUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsbUJBQW1CO0FBQ3JCOztBQUVBLG9DQUFvQztBQUNwQztFQUNFLHlDQUF5QztBQUMzQzs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQSw4QkFBOEI7QUFDOUI7RUFDRSx5Q0FBeUM7QUFDM0M7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsb0JBQW9CO0VBQ3BCLGlCQUFpQjtFQUNqQixZQUFZO0VBQ1osc0JBQXNCO0VBQ3RCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBQ2QseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2Qsc0JBQXNCO0VBQ3RCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0FBQ2pCOztBQUVBLGdCQUFnQjtBQUNoQixVQUFVO0FBQ1Y7RUFDRSxvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxVQUFVO0FBQ1o7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUEsV0FBVztBQUNYO0VBQ0UsZUFBZTtFQUNmLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIscUJBQXFCO0VBQ3JCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQSxXQUFXO0FBQ1g7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLDBCQUEwQjtFQUMxQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6Qix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxZQUFZO0VBQ1osY0FBYztFQUNkLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsTUFBTTtBQUNSOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7QUFDVjs7QUFFQSxtQkFBbUI7QUFDbkI7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7QUFDQSxnQkFBZ0I7QUFDaEI7O0VBRUU7QUFDRjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixjQUFjO0VBQ2QsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsVUFBVTtFQUNWLFlBQVksRUFBRSxlQUFlO0FBQy9COztBQUVBO0VBQ0UsY0FBYztFQUNkLFNBQVM7RUFDVCxZQUFZLEVBQUUsZ0JBQWdCO0FBQ2hDOztBQUVBO0VBQ0UsU0FBUztFQUNULFlBQVksRUFBRSxnQkFBZ0I7QUFDaEM7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsYUFBYTtFQUNiLFlBQVksRUFBRSxlQUFlO0FBQy9CO0FBQ0EsZ0JBQWdCO0FBQ2hCOztFQUVFO0FBQ0Y7O0VBRUUsV0FBVztFQUNYLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFNBQVM7QUFDWDs7QUFFQTs7RUFFRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osV0FBVztBQUNiOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFFBQVE7QUFDVjs7QUFFQTs7RUFFRSxXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsMEJBQTBCO0FBQzVCO0FBQ0E7O0VBRUUsbUJBQW1CO0FBQ3JCO0FBQ0E7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxZQUFZO0VBRVosb0JBQW9CO0VBQ3BCLFlBQVk7QUFDZDs7QUFFQTs7RUFFRSxZQUFZO0VBRVosd0JBQXdCO0VBQ3hCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTs7RUFFRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGFBQWE7QUFDZjs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixVQUFVO0VBQ1YsTUFBTTtFQUNOLDBCQUF5QjtVQUF6Qix5QkFBeUI7RUFDekIscUJBQW9CO1VBQXBCLG9CQUFvQjtFQUNwQixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsa0NBQWtDO0VBQ2xDLGFBQWE7RUFDYixZQUFZO0VBQ1osb0JBQW9CO0FBQ3RCOztBQUVBOztFQUVFLGNBQWM7QUFDaEI7QUFDQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFlBQVk7RUFFWixvQkFBb0I7RUFDcEIsWUFBWTtBQUNkOztBQUVBOztFQUVFLFlBQVk7RUFFWix3QkFBd0I7RUFDeEIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBOztFQUVFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsYUFBYTtBQUNmOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCxPQUFPO0VBQ1AsZ0JBQWdCO0VBQ2hCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixrQ0FBa0M7RUFDbEMsYUFBYTtFQUNiLFlBQVk7RUFDWixvQkFBb0I7QUFDdEI7O0FBRUE7O0VBRUUsY0FBYztBQUNoQjtBQUNBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsYUFBYTtBQUNmO0FBQ0EsNkJBQTZCO0FBQzdCO0VBQ0Usb0JBQW9CO0VBQ3BCLFFBQVE7RUFDUixpSUFBaUk7RUFDakksZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxtSEFBbUg7RUFDbkgsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQiw4QkFBOEI7RUFDOUIsMEJBQTBCO0FBQzVCOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixtSEFBbUg7RUFDbkgsa0JBQWtCO0VBQ2xCLG1CQUFtQjtBQUNyQjs7QUFFQSwwR0FBMEc7QUFDMUc7RUFDRSxxQkFBcUI7QUFDdkI7O0FBRUEsOEZBQThGO0FBQzlGOztFQUVFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQSxnSEFBZ0g7QUFDaEg7RUFDRSxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLGFBQWE7QUFDZjtBQUNBLGdCQUFnQjtBQUNoQjtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsWUFBWTtBQUNkOztBQUVBO0VBQ0UsV0FBVztFQUNYLFdBQVc7QUFDYjs7QUFFQTs7RUFFRSxXQUFXO0VBQ1gsV0FBVztBQUNiOztBQUVBO0VBQ0UsVUFBVTtFQUNWLFlBQVk7QUFDZDs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsV0FBVztFQUNYLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7RUFDWixjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixXQUFXO0FBQ2I7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxXQUFXO0VBQ1gsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFVBQVU7RUFDVixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxZQUFZO0FBQ2Q7O0FBRUE7O0VBRUUsUUFBUTtFQUNSLFdBQVc7QUFDYjs7QUFFQTtFQUNFLE9BQU87RUFDUCxZQUFZO0FBQ2Q7O0FDM25FQSxnQkFBZ0I7QS9GQWhCOzs7OztFQUFBO0FFQUE7RUFHSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBS0Y7RUFDQTtBNkZzQkY7O0E1RnJCQTs7O0VBR0U7QTRGd0JGOztBNUZyQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNEZ3QkY7O0E1RmxCQTtFQUNFO0E0RnFCRjs7QTVGWEE7RUFDRTtFQUNBLGlDNkYzQ3VCO0UzRjJIbkIsaUJBdENhO0VGeENqQixnQkM4TzRCO0VEN081QixnQjZGNUNpQjtFN0Y2Q2pCLGNDbkNTO0VEb0NUO0VBQ0EseUI2RnBEUTtBRGtFVjs7QTVGRkE7RUFDRTtBNEZLRjs7QTVGSUE7RUFDRTtFQUNBO0VBQ0E7QTRGREY7O0E1RmNBO0VBQ0U7RUFDQSxxQkNnTjRCO0EyRjNOOUI7O0E1RmtCQTtFQUNFO0VBQ0EsbUJDb0YwQjtBMkZuRzVCOztBNUYwQkE7O0VBRUU7RUFDQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QTRGdkJGOztBNUYwQkE7RUFDRTtFQUNBO0VBQ0E7QTRGdkJGOztBNUYwQkE7OztFQUdFO0VBQ0E7QTRGdkJGOztBNUYwQkE7Ozs7RUFJRTtBNEZ2QkY7O0E1RjBCQTtFQUNFLGdCQ2lKNEI7QTJGeEs5Qjs7QTVGMEJBO0VBQ0U7RUFDQTtBNEZ2QkY7O0E1RjBCQTtFQUNFO0E0RnZCRjs7QTVGMEJBOztFQUVFLG1CQ29JNEI7QTJGM0o5Qjs7QTVGMEJBO0VFeEZJO0EwRmtFSjs7QTVGK0JBOztFQUVFO0VFbkdFO0VGcUdGO0VBQ0E7QTRGNUJGOztBNUYrQkE7RUFBTTtBNEYzQk47O0E1RjRCQTtFQUFNO0E0RnhCTjs7QTVGK0JBO0VBQ0UsY0NYd0M7RURZeEMscUJDWHdDO0VEWXhDO0E0RjVCRjtBekZwSkU7RUhtTEUsY0Nkc0M7RURldEMsMEJDZHNDO0EyRmQxQzs7QTVGcUNBO0VBQ0U7RUFDQTtBNEZsQ0Y7QXpGN0pFO0VIa01FO0VBQ0E7QTRGbENKOztBNUYyQ0E7Ozs7RUFJRSxpR0N5RDRCO0VDN00xQjtBMEY2R0o7O0E1RjJDQTtFQUVFO0VBRUE7RUFFQTtFQUdBO0E0RjdDRjs7QTVGcURBO0VBRUU7QTRGbkRGOztBNUYyREE7RUFDRTtFQUNBO0E0RnhERjs7QTVGMkRBO0VBR0U7RUFDQTtBNEYxREY7O0E1RmtFQTtFQUNFO0E0Ri9ERjs7QTVGa0VBO0VBQ0Usb0JDNkU0QjtFRDVFNUIsdUJDNEU0QjtFRDNFNUIsY0N0UVM7RUR1UVQ7RUFDQTtBNEYvREY7O0E1RnNFQTtFQUVFO0VBQ0E7QTRGcEVGOztBNUY0RUE7RUFFRTtFQUNBLHFCQzJKc0M7QTJGck94Qzs7QTVGZ0ZBO0VBRUU7QTRGOUVGOztBNUZzRkE7RUFDRTtBNEZuRkY7O0E1RnNGQTs7Ozs7RUFLRTtFQUNBO0VFNVBFO0VGOFBGO0E0Rm5GRjs7QTVGc0ZBOztFQUVFO0E0Rm5GRjs7QTVGc0ZBOztFQUVFO0E0Rm5GRjs7QTVGeUZBO0VBQ0U7QTRGdEZGOztBNUY0RkE7RUFDRTtBNEZ6RkY7O0E1RmdHQTs7OztFQUlFO0E0RjdGRjs7QTVGc0dJOzs7O0VBQ0U7QTRGaEdOOztBNUZzR0E7Ozs7RUFJRTtFQUNBO0E0Rm5HRjs7QTVGc0dBOztFQUVFO0VBQ0E7QTRGbkdGOztBNUZ1R0E7RUFDRTtFQUVBO0E0RnJHRjs7QTVGd0dBO0VBTUU7RUFFQTtFQUNBO0VBQ0E7QTRGM0dGOztBNUZnSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFblNJLGlCQXRDYTtFRjJVakI7RUFDQTtFQUNBO0E0RjdHRjs7QTVGZ0hBO0VBQ0U7QTRGN0dGOztBNUZpSEE7O0VBRUU7QTRGOUdGOztBNUZpSEE7RUFLRTtFQUNBO0E0RmxIRjs7QTVGeUhBO0VBQ0U7QTRGdEhGOztBNUY4SEE7RUFDRTtFQUNBO0E0RjNIRjs7QTVGa0lBO0VBQ0U7QTRGL0hGOztBNUZrSUE7RUFDRTtFQUNBO0E0Ri9IRjs7QTVGa0lBO0VBQ0U7QTRGL0hGOztBNUZvSUE7RUFDRTtBNEZqSUY7O0F4RjNWQTs7RUFFRSxxQkhxUzRCO0VHblM1QixnQkhxUzRCO0VHcFM1QixnQkhxUzRCO0EyRndEOUI7O0F4RnpWQTtFRmdITSxrQkF0Q2E7QTBGbVJuQjs7QXhGNVZBO0VGK0dNLGlCQXRDYTtBMEZ1Um5COztBeEYvVkE7RUY4R00sbUJBdENhO0EwRjJSbkI7O0F4RmxXQTtFRjZHTSxrQkF0Q2E7QTBGK1JuQjs7QXhGcldBO0VGNEdNLG1CQXRDYTtBMEZtU25COztBeEZ4V0E7RUYyR00saUJBdENhO0EwRnVTbkI7O0F4RjFXQTtFRnlHTSxtQkF0Q2E7RUVqRWpCLGdCSHVTNEI7QTJGc0U5Qjs7QXhGeldBO0VGbUdNLGVBdENhO0VFM0RqQixnQkgwUjRCO0VHelI1QixnQkhpUjRCO0EyRjJGOUI7O0F4RjFXQTtFRjhGTSxpQkF0Q2E7RUV0RGpCLGdCSHNSNEI7RUdyUjVCLGdCSDRRNEI7QTJGaUc5Qjs7QXhGM1dBO0VGeUZNLGlCQXRDYTtFRWpEakIsZ0JIa1I0QjtFR2pSNUIsZ0JIdVE0QjtBMkZ1RzlCOztBeEY1V0E7RUZvRk0saUJBdENhO0VFNUNqQixnQkg4UTRCO0VHN1E1QixnQkhrUTRCO0EyRjZHOUI7O0F4RnZXQTtFQUNFLGdCSGdGTztFRy9FUCxtQkgrRU87RUc5RVA7RUFDQTtBd0YwV0Y7O0F4RmxXQTs7RUZNSTtFRUhGLGdCSDBONEI7QTJGMkk5Qjs7QXhGbFdBOztFQUVFLGNIa1E0QjtFR2pRNUIseUJIMFE0QjtBMkYyRjlCOztBeEY3VkE7RUMvRUU7RUFDQTtBdUZnYkY7O0F4RjdWQTtFQ3BGRTtFQUNBO0F1RnFiRjs7QXhGL1ZBO0VBQ0U7QXdGa1dGO0F4RmhXRTtFQUNFLG9CSG9QMEI7QTJGOEc5Qjs7QXhGeFZBO0VGakNJO0VFbUNGO0F3RjJWRjs7QXhGdlZBO0VBQ0UsbUJIdUJPO0VDUkgsbUJBdENhO0EwRmtYbkI7O0F4RnZWQTtFQUNFO0VGN0NFO0VFK0NGLGNIMUdTO0EyRm9jWDtBeEZ4VkU7RUFDRTtBd0YwVko7O0F0RjdjQTtFQ0lFO0VBR0E7QXFGMmNGOztBdEY1Y0E7RUFDRSxnQkxtZ0NrQztFS2xnQ2xDLHlCdUZkUTtFdkZlUjtFRUVFO0VEUEY7RUFHQTtBcUZvZEY7O0F0RnRjQTtFQUVFO0FzRndjRjs7QXRGcmNBO0VBQ0U7RUFDQTtBc0Z3Y0Y7O0F0RnJjQTtFSmtDSTtFSWhDRixjTDNCUztBMkZtZVg7O0FuRi9lQTtFUHVFSTtFT3JFRixjb0ZvQks7RXBGbkJMO0FtRmtmRjtBbkYvZUU7RUFDRTtBbUZpZko7O0FuRjVlQTtFQUNFO0VQMERFO0VPeERGLFdvRmNNO0VwRmJOLHlCUkRTO0VPRVA7QW9GK2VKO0FuRjVlRTtFQUNFO0VQa0RBO0VPaERBLGdCUndRMEI7QTJGc085Qjs7QW5GeGVBO0VBQ0U7RVB5Q0U7RU92Q0YsY1JqQlM7QTJGNGZYO0FuRnhlRTtFUG9DRTtFT2xDQTtFQUNBO0FtRjBlSjs7QW5GcmVBO0VBQ0UsaUJSOGpDa0M7RVE3akNsQztBbUZ3ZUY7O0FsRmhoQkU7Ozs7OztFQ0RBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWlGMGhCRjs7QWhGdmVJO0VGekNFO0lBQ0UsZ0JUOExlO0UyRnNWckI7QUFDRjtBaEY3ZUk7RUZ6Q0U7SUFDRSxnQlQ4TGU7RTJGMlZyQjtBQUNGO0FoRmxmSTtFRnpDRTtJQUNFLGdCVDhMZTtFMkZnV3JCO0FBQ0Y7QWhGdmZJO0VGekNFO0lBQ0UsaUJUOExlO0UyRnFXckI7QUFDRjtBbEZ4Z0JFO0VDbkNBO0VBQ0E7RUFDQTtFQUNBO0FpRjhpQkY7O0FsRnhnQkU7RUFDRTtFQUNBO0FrRjJnQko7QWxGemdCSTs7RUFFRTtFQUNBO0FrRjJnQk47O0EvRWprQkU7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ErRXlrQko7O0EvRW5qQk07RUFDRTtFQUNBO0VBQ0E7QStFc2pCUjs7QWpGMWhCRTtFQUNFO0VBQ0E7QWlGNmhCSjs7QWpGL2hCRTtFQUNFO0VBQ0E7QWlGa2lCSjs7QWpGcGlCRTtFQUNFO0VBQ0E7QWlGdWlCSjs7QWpGemlCRTtFQUNFO0VBQ0E7QWlGNGlCSjs7QWpGOWlCRTtFQUNFO0VBQ0E7QWlGaWpCSjs7QWpGbmpCRTtFQUNFO0VBQ0E7QWlGc2pCSjs7QS9FemtCTTtFRkNKO0VBQ0E7RUFDQTtBaUY0a0JGOztBL0V6a0JVO0VGYlI7RUFJQTtBaUZ1bEJGOztBL0U5a0JVO0VGYlI7RUFJQTtBaUY0bEJGOztBL0VubEJVO0VGYlI7RUFJQTtBaUZpbUJGOztBL0V4bEJVO0VGYlI7RUFJQTtBaUZzbUJGOztBL0U3bEJVO0VGYlI7RUFJQTtBaUYybUJGOztBL0VsbUJVO0VGYlI7RUFJQTtBaUZnbkJGOztBL0V2bUJVO0VGYlI7RUFJQTtBaUZxbkJGOztBL0U1bUJVO0VGYlI7RUFJQTtBaUYwbkJGOztBL0VqbkJVO0VGYlI7RUFJQTtBaUYrbkJGOztBL0V0bkJVO0VGYlI7RUFJQTtBaUZvb0JGOztBL0UzbkJVO0VGYlI7RUFJQTtBaUZ5b0JGOztBL0Vob0JVO0VGYlI7RUFJQTtBaUY4b0JGOztBL0UvbkJNO0VBQXdCO0ErRW1vQjlCOztBL0Vqb0JNO0VBQXVCO0ErRXFvQjdCOztBL0Vsb0JRO0VBQXdCLFFBRGI7QStFdW9CbkI7O0EvRXRvQlE7RUFBd0IsUUFEYjtBK0Uyb0JuQjs7QS9FMW9CUTtFQUF3QixRQURiO0ErRStvQm5COztBL0U5b0JRO0VBQXdCLFFBRGI7QStFbXBCbkI7O0EvRWxwQlE7RUFBd0IsUUFEYjtBK0V1cEJuQjs7QS9FdHBCUTtFQUF3QixRQURiO0ErRTJwQm5COztBL0UxcEJRO0VBQXdCLFFBRGI7QStFK3BCbkI7O0EvRTlwQlE7RUFBd0IsUUFEYjtBK0VtcUJuQjs7QS9FbHFCUTtFQUF3QixRQURiO0ErRXVxQm5COztBL0V0cUJRO0VBQXdCLFFBRGI7QStFMnFCbkI7O0EvRTFxQlE7RUFBd0IsU0FEYjtBK0UrcUJuQjs7QS9FOXFCUTtFQUF3QixTQURiO0ErRW1yQm5COztBL0VsckJRO0VBQXdCLFNBRGI7QStFdXJCbkI7O0EvRS9xQlk7RUZoQlY7QWlGbXNCRjs7QS9FbnJCWTtFRmhCVjtBaUZ1c0JGOztBL0V2ckJZO0VGaEJWO0FpRjJzQkY7O0EvRTNyQlk7RUZoQlY7QWlGK3NCRjs7QS9FL3JCWTtFRmhCVjtBaUZtdEJGOztBL0Vuc0JZO0VGaEJWO0FpRnV0QkY7O0EvRXZzQlk7RUZoQlY7QWlGMnRCRjs7QS9FM3NCWTtFRmhCVjtBaUYrdEJGOztBL0Uvc0JZO0VGaEJWO0FpRm11QkY7O0EvRW50Qlk7RUZoQlY7QWlGdXVCRjs7QS9FdnRCWTtFRmhCVjtBaUYydUJGOztBaEZ0dUJJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0UrRXF3Qk47O0VqRnp1QkE7SUFDRTtJQUNBO0VpRjR1QkY7O0VqRjl1QkE7SUFDRTtJQUNBO0VpRml2QkY7O0VqRm52QkE7SUFDRTtJQUNBO0VpRnN2QkY7O0VqRnh2QkE7SUFDRTtJQUNBO0VpRjJ2QkY7O0VqRjd2QkE7SUFDRTtJQUNBO0VpRmd3QkY7O0VqRmx3QkE7SUFDRTtJQUNBO0VpRnF3QkY7O0UvRXh4Qkk7SUZDSjtJQUNBO0lBQ0E7RWlGMnhCQTs7RS9FeHhCUTtJRmJSO0lBSUE7RWlGc3lCQTs7RS9FN3hCUTtJRmJSO0lBSUE7RWlGMnlCQTs7RS9FbHlCUTtJRmJSO0lBSUE7RWlGZ3pCQTs7RS9FdnlCUTtJRmJSO0lBSUE7RWlGcXpCQTs7RS9FNXlCUTtJRmJSO0lBSUE7RWlGMHpCQTs7RS9FanpCUTtJRmJSO0lBSUE7RWlGK3pCQTs7RS9FdHpCUTtJRmJSO0lBSUE7RWlGbzBCQTs7RS9FM3pCUTtJRmJSO0lBSUE7RWlGeTBCQTs7RS9FaDBCUTtJRmJSO0lBSUE7RWlGODBCQTs7RS9FcjBCUTtJRmJSO0lBSUE7RWlGbTFCQTs7RS9FMTBCUTtJRmJSO0lBSUE7RWlGdzFCQTs7RS9FLzBCUTtJRmJSO0lBSUE7RWlGNjFCQTs7RS9FOTBCSTtJQUF3QjtFK0VrMUI1Qjs7RS9FaDFCSTtJQUF1QjtFK0VvMUIzQjs7RS9FajFCTTtJQUF3QixRQURiO0UrRXMxQmpCOztFL0VyMUJNO0lBQXdCLFFBRGI7RStFMDFCakI7O0UvRXoxQk07SUFBd0IsUUFEYjtFK0U4MUJqQjs7RS9FNzFCTTtJQUF3QixRQURiO0UrRWsyQmpCOztFL0VqMkJNO0lBQXdCLFFBRGI7RStFczJCakI7O0UvRXIyQk07SUFBd0IsUUFEYjtFK0UwMkJqQjs7RS9FejJCTTtJQUF3QixRQURiO0UrRTgyQmpCOztFL0U3MkJNO0lBQXdCLFFBRGI7RStFazNCakI7O0UvRWozQk07SUFBd0IsUUFEYjtFK0VzM0JqQjs7RS9FcjNCTTtJQUF3QixRQURiO0UrRTAzQmpCOztFL0V6M0JNO0lBQXdCLFNBRGI7RStFODNCakI7O0UvRTczQk07SUFBd0IsU0FEYjtFK0VrNEJqQjs7RS9FajRCTTtJQUF3QixTQURiO0UrRXM0QmpCOztFL0U5M0JVO0lGaEJWO0VpRms1QkE7O0UvRWw0QlU7SUZoQlY7RWlGczVCQTs7RS9FdDRCVTtJRmhCVjtFaUYwNUJBOztFL0UxNEJVO0lGaEJWO0VpRjg1QkE7O0UvRTk0QlU7SUZoQlY7RWlGazZCQTs7RS9FbDVCVTtJRmhCVjtFaUZzNkJBOztFL0V0NUJVO0lGaEJWO0VpRjA2QkE7O0UvRTE1QlU7SUZoQlY7RWlGODZCQTs7RS9FOTVCVTtJRmhCVjtFaUZrN0JBOztFL0VsNkJVO0lGaEJWO0VpRnM3QkE7O0UvRXQ2QlU7SUZoQlY7RWlGMDdCQTs7RS9FMTZCVTtJRmhCVjtFaUY4N0JBO0FBQ0Y7QWhGMTdCSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFK0V3OUJOOztFakY1N0JBO0lBQ0U7SUFDQTtFaUYrN0JGOztFakZqOEJBO0lBQ0U7SUFDQTtFaUZvOEJGOztFakZ0OEJBO0lBQ0U7SUFDQTtFaUZ5OEJGOztFakYzOEJBO0lBQ0U7SUFDQTtFaUY4OEJGOztFakZoOUJBO0lBQ0U7SUFDQTtFaUZtOUJGOztFakZyOUJBO0lBQ0U7SUFDQTtFaUZ3OUJGOztFL0UzK0JJO0lGQ0o7SUFDQTtJQUNBO0VpRjgrQkE7O0UvRTMrQlE7SUZiUjtJQUlBO0VpRnkvQkE7O0UvRWgvQlE7SUZiUjtJQUlBO0VpRjgvQkE7O0UvRXIvQlE7SUZiUjtJQUlBO0VpRm1nQ0E7O0UvRTEvQlE7SUZiUjtJQUlBO0VpRndnQ0E7O0UvRS8vQlE7SUZiUjtJQUlBO0VpRjZnQ0E7O0UvRXBnQ1E7SUZiUjtJQUlBO0VpRmtoQ0E7O0UvRXpnQ1E7SUZiUjtJQUlBO0VpRnVoQ0E7O0UvRTlnQ1E7SUZiUjtJQUlBO0VpRjRoQ0E7O0UvRW5oQ1E7SUZiUjtJQUlBO0VpRmlpQ0E7O0UvRXhoQ1E7SUZiUjtJQUlBO0VpRnNpQ0E7O0UvRTdoQ1E7SUZiUjtJQUlBO0VpRjJpQ0E7O0UvRWxpQ1E7SUZiUjtJQUlBO0VpRmdqQ0E7O0UvRWppQ0k7SUFBd0I7RStFcWlDNUI7O0UvRW5pQ0k7SUFBdUI7RStFdWlDM0I7O0UvRXBpQ007SUFBd0IsUUFEYjtFK0V5aUNqQjs7RS9FeGlDTTtJQUF3QixRQURiO0UrRTZpQ2pCOztFL0U1aUNNO0lBQXdCLFFBRGI7RStFaWpDakI7O0UvRWhqQ007SUFBd0IsUUFEYjtFK0VxakNqQjs7RS9FcGpDTTtJQUF3QixRQURiO0UrRXlqQ2pCOztFL0V4akNNO0lBQXdCLFFBRGI7RStFNmpDakI7O0UvRTVqQ007SUFBd0IsUUFEYjtFK0Vpa0NqQjs7RS9FaGtDTTtJQUF3QixRQURiO0UrRXFrQ2pCOztFL0Vwa0NNO0lBQXdCLFFBRGI7RStFeWtDakI7O0UvRXhrQ007SUFBd0IsUUFEYjtFK0U2a0NqQjs7RS9FNWtDTTtJQUF3QixTQURiO0UrRWlsQ2pCOztFL0VobENNO0lBQXdCLFNBRGI7RStFcWxDakI7O0UvRXBsQ007SUFBd0IsU0FEYjtFK0V5bENqQjs7RS9FamxDVTtJRmhCVjtFaUZxbUNBOztFL0VybENVO0lGaEJWO0VpRnltQ0E7O0UvRXpsQ1U7SUZoQlY7RWlGNm1DQTs7RS9FN2xDVTtJRmhCVjtFaUZpbkNBOztFL0VqbUNVO0lGaEJWO0VpRnFuQ0E7O0UvRXJtQ1U7SUZoQlY7RWlGeW5DQTs7RS9Fem1DVTtJRmhCVjtFaUY2bkNBOztFL0U3bUNVO0lGaEJWO0VpRmlvQ0E7O0UvRWpuQ1U7SUZoQlY7RWlGcW9DQTs7RS9Fcm5DVTtJRmhCVjtFaUZ5b0NBOztFL0V6bkNVO0lGaEJWO0VpRjZvQ0E7O0UvRTduQ1U7SUZoQlY7RWlGaXBDQTtBQUNGO0FoRjdvQ0k7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RStFMnFDTjs7RWpGL29DQTtJQUNFO0lBQ0E7RWlGa3BDRjs7RWpGcHBDQTtJQUNFO0lBQ0E7RWlGdXBDRjs7RWpGenBDQTtJQUNFO0lBQ0E7RWlGNHBDRjs7RWpGOXBDQTtJQUNFO0lBQ0E7RWlGaXFDRjs7RWpGbnFDQTtJQUNFO0lBQ0E7RWlGc3FDRjs7RWpGeHFDQTtJQUNFO0lBQ0E7RWlGMnFDRjs7RS9FOXJDSTtJRkNKO0lBQ0E7SUFDQTtFaUZpc0NBOztFL0U5ckNRO0lGYlI7SUFJQTtFaUY0c0NBOztFL0Vuc0NRO0lGYlI7SUFJQTtFaUZpdENBOztFL0V4c0NRO0lGYlI7SUFJQTtFaUZzdENBOztFL0U3c0NRO0lGYlI7SUFJQTtFaUYydENBOztFL0VsdENRO0lGYlI7SUFJQTtFaUZndUNBOztFL0V2dENRO0lGYlI7SUFJQTtFaUZxdUNBOztFL0U1dENRO0lGYlI7SUFJQTtFaUYwdUNBOztFL0VqdUNRO0lGYlI7SUFJQTtFaUYrdUNBOztFL0V0dUNRO0lGYlI7SUFJQTtFaUZvdkNBOztFL0UzdUNRO0lGYlI7SUFJQTtFaUZ5dkNBOztFL0VodkNRO0lGYlI7SUFJQTtFaUY4dkNBOztFL0VydkNRO0lGYlI7SUFJQTtFaUZtd0NBOztFL0VwdkNJO0lBQXdCO0UrRXd2QzVCOztFL0V0dkNJO0lBQXVCO0UrRTB2QzNCOztFL0V2dkNNO0lBQXdCLFFBRGI7RStFNHZDakI7O0UvRTN2Q007SUFBd0IsUUFEYjtFK0Vnd0NqQjs7RS9FL3ZDTTtJQUF3QixRQURiO0UrRW93Q2pCOztFL0Vud0NNO0lBQXdCLFFBRGI7RStFd3dDakI7O0UvRXZ3Q007SUFBd0IsUUFEYjtFK0U0d0NqQjs7RS9FM3dDTTtJQUF3QixRQURiO0UrRWd4Q2pCOztFL0Uvd0NNO0lBQXdCLFFBRGI7RStFb3hDakI7O0UvRW54Q007SUFBd0IsUUFEYjtFK0V3eENqQjs7RS9FdnhDTTtJQUF3QixRQURiO0UrRTR4Q2pCOztFL0UzeENNO0lBQXdCLFFBRGI7RStFZ3lDakI7O0UvRS94Q007SUFBd0IsU0FEYjtFK0VveUNqQjs7RS9FbnlDTTtJQUF3QixTQURiO0UrRXd5Q2pCOztFL0V2eUNNO0lBQXdCLFNBRGI7RStFNHlDakI7O0UvRXB5Q1U7SUZoQlY7RWlGd3pDQTs7RS9FeHlDVTtJRmhCVjtFaUY0ekNBOztFL0U1eUNVO0lGaEJWO0VpRmcwQ0E7O0UvRWh6Q1U7SUZoQlY7RWlGbzBDQTs7RS9FcHpDVTtJRmhCVjtFaUZ3MENBOztFL0V4ekNVO0lGaEJWO0VpRjQwQ0E7O0UvRTV6Q1U7SUZoQlY7RWlGZzFDQTs7RS9FaDBDVTtJRmhCVjtFaUZvMUNBOztFL0VwMENVO0lGaEJWO0VpRncxQ0E7O0UvRXgwQ1U7SUZoQlY7RWlGNDFDQTs7RS9FNTBDVTtJRmhCVjtFaUZnMkNBOztFL0VoMUNVO0lGaEJWO0VpRm8yQ0E7QUFDRjtBaEZoMkNJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0UrRTgzQ047O0VqRmwyQ0E7SUFDRTtJQUNBO0VpRnEyQ0Y7O0VqRnYyQ0E7SUFDRTtJQUNBO0VpRjAyQ0Y7O0VqRjUyQ0E7SUFDRTtJQUNBO0VpRisyQ0Y7O0VqRmozQ0E7SUFDRTtJQUNBO0VpRm8zQ0Y7O0VqRnQzQ0E7SUFDRTtJQUNBO0VpRnkzQ0Y7O0VqRjMzQ0E7SUFDRTtJQUNBO0VpRjgzQ0Y7O0UvRWo1Q0k7SUZDSjtJQUNBO0lBQ0E7RWlGbzVDQTs7RS9FajVDUTtJRmJSO0lBSUE7RWlGKzVDQTs7RS9FdDVDUTtJRmJSO0lBSUE7RWlGbzZDQTs7RS9FMzVDUTtJRmJSO0lBSUE7RWlGeTZDQTs7RS9FaDZDUTtJRmJSO0lBSUE7RWlGODZDQTs7RS9FcjZDUTtJRmJSO0lBSUE7RWlGbTdDQTs7RS9FMTZDUTtJRmJSO0lBSUE7RWlGdzdDQTs7RS9FLzZDUTtJRmJSO0lBSUE7RWlGNjdDQTs7RS9FcDdDUTtJRmJSO0lBSUE7RWlGazhDQTs7RS9FejdDUTtJRmJSO0lBSUE7RWlGdThDQTs7RS9FOTdDUTtJRmJSO0lBSUE7RWlGNDhDQTs7RS9FbjhDUTtJRmJSO0lBSUE7RWlGaTlDQTs7RS9FeDhDUTtJRmJSO0lBSUE7RWlGczlDQTs7RS9FdjhDSTtJQUF3QjtFK0UyOEM1Qjs7RS9FejhDSTtJQUF1QjtFK0U2OEMzQjs7RS9FMThDTTtJQUF3QixRQURiO0UrRSs4Q2pCOztFL0U5OENNO0lBQXdCLFFBRGI7RStFbTlDakI7O0UvRWw5Q007SUFBd0IsUUFEYjtFK0V1OUNqQjs7RS9FdDlDTTtJQUF3QixRQURiO0UrRTI5Q2pCOztFL0UxOUNNO0lBQXdCLFFBRGI7RStFKzlDakI7O0UvRTk5Q007SUFBd0IsUUFEYjtFK0VtK0NqQjs7RS9FbCtDTTtJQUF3QixRQURiO0UrRXUrQ2pCOztFL0V0K0NNO0lBQXdCLFFBRGI7RStFMitDakI7O0UvRTErQ007SUFBd0IsUUFEYjtFK0UrK0NqQjs7RS9FOStDTTtJQUF3QixRQURiO0UrRW0vQ2pCOztFL0VsL0NNO0lBQXdCLFNBRGI7RStFdS9DakI7O0UvRXQvQ007SUFBd0IsU0FEYjtFK0UyL0NqQjs7RS9FMS9DTTtJQUF3QixTQURiO0UrRSsvQ2pCOztFL0V2L0NVO0lGaEJWO0VpRjJnREE7O0UvRTMvQ1U7SUZoQlY7RWlGK2dEQTs7RS9FLy9DVTtJRmhCVjtFaUZtaERBOztFL0VuZ0RVO0lGaEJWO0VpRnVoREE7O0UvRXZnRFU7SUZoQlY7RWlGMmhEQTs7RS9FM2dEVTtJRmhCVjtFaUYraERBOztFL0UvZ0RVO0lGaEJWO0VpRm1pREE7O0UvRW5oRFU7SUZoQlY7RWlGdWlEQTs7RS9FdmhEVTtJRmhCVjtFaUYyaURBOztFL0UzaERVO0lGaEJWO0VpRitpREE7O0UvRS9oRFU7SUZoQlY7RWlGbWpEQTs7RS9FbmlEVTtJRmhCVjtFaUZ1akRBO0FBQ0Y7QTlFM21EQTtFQUNFO0VBQ0EsbUJiaUlPO0VhaElQLGNiU1M7QTJGb21EWDtBOUUxbURFOztFQUVFLGdCYmtWMEI7RWFqVjFCO0VBQ0E7QThFNG1ESjtBOUV6bURFO0VBQ0U7RUFDQTtBOEUybURKO0E5RXhtREU7RUFDRTtBOEUwbURKOztBOUVobURFOztFQUVFLGViNFQwQjtBMkZ1eUM5Qjs7QTlFMWxEQTtFQUNFO0E4RTZsREY7QTlFM2xERTs7RUFFRTtBOEU2bERKO0E5RXpsREk7O0VBRUU7QThFMmxETjs7QTlFcmxERTs7OztFQUlFO0E4RXdsREo7O0E5RS9rREU7RUFDRSxxQ2J3UjBCO0EyRjB6QzlCOztBekZqcERFO0VXMkVJLGNidkVLO0Vhd0VMLHNDYjZRd0I7QTJGNnpDOUI7O0E3RTVwREk7OztFQUdFLHlCRDJGK0I7QThFb2tEckM7QTdFM3BETTs7OztFQUlFLHFCRG1GeUU7QThFMGtEakY7O0F6RmxxREU7RVlpQk0seUJBSmU7QTZFeXBEdkI7QTdFbnBEUTs7RUFFRSx5QkFSYTtBNkU2cER2Qjs7QTdFaHJESTs7O0VBR0UseUJEMkYrQjtBOEV3bERyQztBN0UvcURNOzs7O0VBSUUscUJEbUZ5RTtBOEU4bERqRjs7QXpGdHJERTtFWWlCTSx5QkFKZTtBNkU2cUR2QjtBN0V2cURROztFQUVFLHlCQVJhO0E2RWlyRHZCOztBN0Vwc0RJOzs7RUFHRSx5QkQyRitCO0E4RTRtRHJDO0E3RW5zRE07Ozs7RUFJRSxxQkRtRnlFO0E4RWtuRGpGOztBekYxc0RFO0VZaUJNLHlCQUplO0E2RWlzRHZCO0E3RTNyRFE7O0VBRUUseUJBUmE7QTZFcXNEdkI7O0E3RXh0REk7OztFQUdFLHlCRDJGK0I7QThFZ29EckM7QTdFdnRETTs7OztFQUlFLHFCRG1GeUU7QThFc29EakY7O0F6Rjl0REU7RVlpQk0seUJBSmU7QTZFcXREdkI7QTdFL3NEUTs7RUFFRSx5QkFSYTtBNkV5dER2Qjs7QTdFNXVESTs7O0VBR0UseUJEMkYrQjtBOEVvcERyQztBN0UzdURNOzs7O0VBSUUscUJEbUZ5RTtBOEUwcERqRjs7QXpGbHZERTtFWWlCTSx5QkFKZTtBNkV5dUR2QjtBN0VudURROztFQUVFLHlCQVJhO0E2RTZ1RHZCOztBN0Vod0RJOzs7RUFHRSx5QkQyRitCO0E4RXdxRHJDO0E3RS92RE07Ozs7RUFJRSxxQkRtRnlFO0E4RThxRGpGOztBekZ0d0RFO0VZaUJNLHlCQUplO0E2RTZ2RHZCO0E3RXZ2RFE7O0VBRUUseUJBUmE7QTZFaXdEdkI7O0E3RXB4REk7OztFQUdFLHlCRDJGK0I7QThFNHJEckM7QTdFbnhETTs7OztFQUlFLHFCRG1GeUU7QThFa3NEakY7O0F6RjF4REU7RVlpQk0seUJBSmU7QTZFaXhEdkI7QTdFM3dEUTs7RUFFRSx5QkFSYTtBNkVxeER2Qjs7QTdFeHlESTs7O0VBR0UseUJEMkYrQjtBOEVndERyQztBN0V2eURNOzs7O0VBSUUscUJEbUZ5RTtBOEVzdERqRjs7QXpGOXlERTtFWWlCTSx5QkFKZTtBNkVxeUR2QjtBN0UveERROztFQUVFLHlCQVJhO0E2RXl5RHZCOztBN0U1ekRJOzs7RUFHRSxzQ2Q0VndCO0EyRm0rQzlCOztBekY1ekRFO0VZaUJNLHNDQUplO0E2RW16RHZCO0E3RTd5RFE7O0VBRUUsc0NBUmE7QTZFdXpEdkI7O0E5RS90REk7RUFDRSxXK0VwRkU7RS9FcUZGLHlCYnBHSztFYXFHTCxxQmJnUXdCO0EyRmsrQzlCO0E5RTd0REk7RUFDRSxjYjVHSztFYTZHTCx5QmJsSEs7RWFtSEwscUJibEhLO0EyRmkxRFg7O0E5RTF0REE7RUFDRSxXK0VwR007RS9FcUdOLHlCYnBIUztBMkZpMURYO0E5RTN0REU7OztFQUdFLHFCYjRPMEI7QTJGaS9DOUI7QTlFMXRERTtFQUNFO0E4RTR0REo7QTlFeHRESTtFQUNFLDJDYmdPd0I7QTJGMC9DOUI7QXpGLzFERTtFVzRJTSxXK0UxSEE7RS9FMkhBLDRDYjBOc0I7QTJGNC9DOUI7O0FoRnR5REk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFOEV3c0ROO0U5RXJzRE07SUFDRTtFOEV1c0RSO0FBQ0Y7QWhGbHpESTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0U4RW10RE47RTlFaHRETTtJQUNFO0U4RWt0RFI7QUFDRjtBaEY3ekRJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RThFOHRETjtFOUUzdERNO0lBQ0U7RThFNnREUjtBQUNGO0FoRngwREk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFOEV5dUROO0U5RXR1RE07SUFDRTtFOEV3dURSO0FBQ0Y7QTlFbHZESTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0E4RW12RFI7QTlFaHZEUTtFQUNFO0E4RWt2RFY7O0EzRS81REE7RUFDRTtFQUNBO0VBQ0EsbUNoQjBlc0M7RWdCemV0QztFZnFISSxpQkF0Q2E7RWU1RWpCLGdCaEJrUjRCO0VnQmpSNUIsZ0I0RVJpQjtFNUVTakIsY2hCRFM7RWdCRVQsc0I0RWNNO0U1RWJOO0VBQ0E7RVRBRTtFVUZFLHdFRFFKO0EyRTY1REY7QTFFajZETTtFRGROO0lDZVE7RTBFbzZETjtBQUNGO0EzRS81REU7RUFDRTtFQUNBO0EyRWk2REo7QTNFNzVERTtFQUNFO0VBQ0E7QTJFKzVESjtBekVyN0RFO0VBQ0U7RUFDQSxzQjBFZUk7RTFFZEoscUJsQnFkb0M7RWtCcGRwQztFQUtFLGdEbEJvWHdCO0EyRitqRDlCO0EzRS81REU7RUFDRSxjaEI5Qk87RWdCZ0NQO0EyRWc2REo7QTNFbjZERTtFQUNFLGNoQjlCTztFZ0JnQ1A7QTJFZzZESjtBM0VuNkRFO0VBQ0UsY2hCOUJPO0VnQmdDUDtBMkVnNkRKO0EzRXg1REU7RUFFRSx5QmhCOUNPO0VnQmdEUDtBMkV3NURKOztBM0VoNURFOzs7O0VBQ0U7S0FBQTtVQUFBO0EyRXM1REo7O0EzRWo1REU7RUFNRSxjaEIvRE87RWdCZ0VQLHNCNEVoREk7QUQrN0RSOztBM0UxNERBOztFQUVFO0VBQ0E7QTJFNjRERjs7QTNFbjREQTtFQUNFO0VBQ0E7RUFDQTtFZjNCRTtFZTZCRixnQjRFL0ZpQjtBRHErRG5COztBM0VuNERBO0VBQ0U7RUFDQTtFZnFCSSxtQkF0Q2E7RWVtQmpCLGdCaEI2SDRCO0EyRnl3RDlCOztBM0VuNERBO0VBQ0U7RUFDQTtFZmNJLG9CQXRDYTtFZTBCakIsZ0JoQnVINEI7QTJGK3dEOUI7O0EzRTczREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFZkRJLGlCQXRDYTtFZXlDakIsZ0I0RTVIaUI7RTVFNkhqQixjaEJuSFM7RWdCb0hUO0VBQ0E7RUFDQTtBMkVnNERGO0EzRTkzREU7RUFFRTtFQUNBO0EyRSszREo7O0EzRW4zREE7RUFDRSxrQ2hCNFZzQztFZ0IzVnRDO0VmMUJJLG9CQXRDYTtFZWtFakIsZ0JoQitFNEI7RU94TjFCO0FvRmdnRUo7O0EzRW4zREE7RUFDRSxnQ2hCcVZzQztFZ0JwVnRDO0VmbENJLG1CQXRDYTtFZTBFakIsZ0JoQnNFNEI7RU92TjFCO0FvRndnRUo7O0EzRWozREU7RUFFRTtBMkVtM0RKOztBM0UvMkRBO0VBQ0U7QTJFazNERjs7QTNFMTJEQTtFQUNFLG1CaEIwVXNDO0EyRm1pRHhDOztBM0UxMkRBO0VBQ0U7RUFDQSxtQmhCMlRzQztBMkZrakR4Qzs7QTNFcjJEQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EyRXcyREY7QTNFdDJERTs7RUFFRTtFQUNBO0EyRXcyREo7O0EzRS8xREE7RUFDRTtFQUNBO0VBQ0EscUJoQmdTc0M7QTJGa2tEeEM7O0EzRS8xREE7RUFDRTtFQUNBLGtCaEI0UnNDO0VnQjNSdEM7QTJFazJERjtBM0UvMURFO0VBRUUsY2hCek5PO0EyRnlqRVg7O0EzRTUxREE7RUFDRTtBMkUrMURGOztBM0U1MURBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJoQjZRc0M7QTJGa2xEeEM7QTNFNTFERTtFQUNFO0VBQ0E7RUFDQSx1QmhCd1FvQztFZ0J2UXBDO0EyRTgxREo7O0F6RTNpRUU7RUFDRTtFQUNBO0VBQ0EsbUJsQjBjb0M7RUNqYnBDO0VpQnZCQSxjRnFOcUM7QTJFeTFEekM7O0F6RTNpRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQm1FRSxvQkF0Q2E7RWlCM0JmLGdCMEV4RGU7RTFFeURmO0VBQ0E7RVg5Q0E7QW9GNmxFSjtBekUxaUVJO0VBRUU7QXlFMmlFTjs7QXpFdGlFSTs7OztFQUVFO0F5RTJpRU47O0F6RXpsRUk7RUFvREUscUJGa0xtQztFRS9LakMsb0NsQndaZ0M7RWtCdlpoQztFQUNBO0VBQ0E7RUFDQTtBeUV1aUVSO0F6RXBpRU07RUFDRSxxQkZ1S2lDO0VFdEtqQztBeUVzaUVSOztBekV0bUVJO0VBeUVJLG9DbEJzWWdDO0VrQnJZaEM7QXlFaWlFUjs7QXpFM21FSTtFQWlGRSxxQkZxSm1DO0VFbEpqQyx1Q2xCdWRvQztFa0J0ZHBDO0F5RTRoRVI7QXpFemhFTTtFQUNFLHFCRjZJaUM7RUU1SWpDO0F5RTJoRVI7O0F6RXBoRU07RUFDRSxjRm9JaUM7QTJFbTVEekM7QXpFcGhFTTs7O0VBRUU7QXlFdWhFUjs7QXpFaGhFTTtFQUNFLGNGdUhpQztBMkU0NUR6QztBekVqaEVRO0VBQ0UscUJGb0grQjtBMkUrNUR6QztBekU5Z0VRO0VBQ0U7RUNsSk4seUJEbUoyQjtBeUVnaEUvQjtBekUzZ0VRO0VBQ0U7QXlFNmdFVjtBekUxZ0VRO0VBQ0UscUJBVnFCO0F5RXNoRS9COztBekVuZ0VNO0VBQ0UscUJBcEJ1QjtBeUUwaEUvQjtBekVsZ0VRO0VBQ0UscUJBekJxQjtFQTBCckI7QXlFb2dFVjs7QXpFM29FRTtFQUNFO0VBQ0E7RUFDQSxtQmxCMGNvQztFQ2picEM7RWlCdkJBLGNGcU5xQztBMkV5N0R6Qzs7QXpFM29FRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpCbUVFLG9CQXRDYTtFaUIzQmYsZ0IwRXhEZTtFMUV5RGY7RUFDQTtFWDlDQTtBb0Y2ckVKO0F6RTFvRUk7RUFFRTtBeUUyb0VOOztBekV0b0VJOzs7O0VBRUU7QXlFMm9FTjs7QXpFenJFSTtFQW9ERSxxQkZrTG1DO0VFL0tqQyxvQ2xCd1pnQztFa0J2WmhDO0VBQ0E7RUFDQTtFQUNBO0F5RXVvRVI7QXpFcG9FTTtFQUNFLHFCRnVLaUM7RUV0S2pDO0F5RXNvRVI7O0F6RXRzRUk7RUF5RUksb0NsQnNZZ0M7RWtCclloQztBeUVpb0VSOztBekUzc0VJO0VBaUZFLHFCRnFKbUM7RUVsSmpDLHVDbEJ1ZG9DO0VrQnRkcEM7QXlFNG5FUjtBekV6bkVNO0VBQ0UscUJGNklpQztFRTVJakM7QXlFMm5FUjs7QXpFcG5FTTtFQUNFLGNGb0lpQztBMkVtL0R6QztBekVwbkVNOzs7RUFFRTtBeUV1bkVSOztBekVobkVNO0VBQ0UsY0Z1SGlDO0EyRTQvRHpDO0F6RWpuRVE7RUFDRSxxQkZvSCtCO0EyRSsvRHpDO0F6RTltRVE7RUFDRTtFQ2xKTix5QkRtSjJCO0F5RWduRS9CO0F6RTNtRVE7RUFDRTtBeUU2bUVWO0F6RTFtRVE7RUFDRSxxQkFWcUI7QXlFc25FL0I7O0F6RW5tRU07RUFDRSxxQkFwQnVCO0F5RTBuRS9CO0F6RWxtRVE7RUFDRSxxQkF6QnFCO0VBMEJyQjtBeUVvbUVWOztBM0VyZ0VBO0VBQ0U7RUFDQTtFQUNBO0EyRXdnRUY7QTNFbmdFRTtFQUNFO0EyRXFnRUo7QWhGcHVFSTtFS29PQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UyRW1nRUo7RTNFLy9ERTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTJFaWdFSjtFM0U3L0RFO0lBQ0U7SUFDQTtJQUNBO0UyRSsvREo7RTNFMy9ERTtJQUNFO0UyRTYvREo7RTNFMS9ERTs7SUFFRTtFMkU0L0RKO0UzRXYvREU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UyRXkvREo7RTNFdi9ERTtJQUNFO0lBQ0E7SUFDQTtJQUNBLHFCaEIrS2tDO0lnQjlLbEM7RTJFeS9ESjtFM0V0L0RFO0lBQ0U7SUFDQTtFMkV3L0RKO0UzRXQvREU7SUFDRTtFMkV3L0RKO0FBQ0Y7O0F2RTEwRUE7RUFDRTtFQUVBLGdCcEJzUjRCO0VvQnJSNUIsY3BCTVM7RW9CTFQ7RUFHQTtFQUNBO0tBQUE7TUFBQTtVQUFBO0VBQ0E7RUFDQTtFQ3VGQTtFcEJ1QkksaUJBdENhO0VvQmlCakIsZ0J1RXBHaUI7RXJGWWY7RVVGRSxxSUdHSjtBdUU2MEVGO0ExRTUwRU07RUdkTjtJSGVRO0UwRSswRU47QUFDRjtBekZ6MUVFO0VrQlVFLGNwQk5PO0VvQk9QO0F1RWsxRUo7QXZFLzBFRTtFQUVFO0VBQ0EsZ0RwQjZXMEI7QTJGbStEOUI7QXZFNTBFRTtFQUVFLGFwQmlaMEI7QTJGNDdEOUI7QXZFejBFRTtFQUNFO0F1RTIwRUo7QXZFN3pFQTs7RUFFRTtBdUUrekVGOztBdkV0ekVFO0VDM0RBO0VGQUUseUJuQnNFVztFcUJwRWIscUJyQm9FYTtBMkZpekVmO0F6RmozRUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRTYzRXpHO0F0RWozRUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFODJFTjtBdEV6MkVFO0VBRUU7RUFDQSx5QnJCMENXO0VxQnpDWCxxQnJCeUNXO0EyRmkwRWY7QXRFbjJFRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBc0U2NEU3TDtBdEU5MUVJO0VBS0k7QXNFNDFFUjs7QXZFcDFFRTtFQzNEQTtFRkFFLHlCbkJzRVc7RXFCcEViLHFCckJvRWE7QTJGKzBFZjtBekYvNEVFO0VtQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBc0UyNUV6RztBdEUvNEVFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0FzRTQ0RU47QXRFdjRFRTtFQUVFO0VBQ0EseUJyQjBDVztFcUJ6Q1gscUJyQnlDVztBMkYrMUVmO0F0RWo0RUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXNFMjZFN0w7QXRFNTNFSTtFQUtJO0FzRTAzRVI7O0F2RWwzRUU7RUMzREE7RUZBRSx5Qm5Cc0VXO0VxQnBFYixxQnJCb0VhO0EyRjYyRWY7QXpGNzZFRTtFbUJBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXNFeTdFekc7QXRFNzZFRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBc0UwNkVOO0F0RXI2RUU7RUFFRTtFQUNBLHlCckIwQ1c7RXFCekNYLHFCckJ5Q1c7QTJGNjNFZjtBdEUvNUVFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRXk4RTdMO0F0RTE1RUk7RUFLSTtBc0V3NUVSOztBdkVoNUVFO0VDM0RBO0VGQUUseUJuQnNFVztFcUJwRWIscUJyQm9FYTtBMkYyNEVmO0F6RjM4RUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRXU5RXpHO0F0RTM4RUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFdzhFTjtBdEVuOEVFO0VBRUU7RUFDQSx5QnJCMENXO0VxQnpDWCxxQnJCeUNXO0EyRjI1RWY7QXRFNzdFRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBc0V1K0U3TDtBdEV4N0VJO0VBS0k7QXNFczdFUjs7QXZFOTZFRTtFQzNEQTtFRkFFLHlCbkJzRVc7RXFCcEViLHFCckJvRWE7QTJGeTZFZjtBekZ6K0VFO0VtQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBc0VxL0V6RztBdEV6K0VFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0FzRXMrRU47QXRFaitFRTtFQUVFO0VBQ0EseUJyQjBDVztFcUJ6Q1gscUJyQnlDVztBMkZ5N0VmO0F0RTM5RUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXNFcWdGN0w7QXRFdDlFSTtFQUtJO0FzRW85RVI7O0F2RTU4RUU7RUMzREE7RUZBRSx5Qm5Cc0VXO0VxQnBFYixxQnJCb0VhO0EyRnU4RWY7QXpGdmdGRTtFbUJBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXNFbWhGekc7QXRFdmdGRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBc0VvZ0ZOO0F0RS8vRUU7RUFFRTtFQUNBLHlCckIwQ1c7RXFCekNYLHFCckJ5Q1c7QTJGdTlFZjtBdEV6L0VFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRW1pRjdMO0F0RXAvRUk7RUFLSTtBc0VrL0VSOztBdkUxK0VFO0VDM0RBO0VGQUUseUJuQnNFVztFcUJwRWIscUJyQm9FYTtBMkZxK0VmO0F6RnJpRkU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRWlqRnpHO0F0RXJpRkU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFa2lGTjtBdEU3aEZFO0VBRUU7RUFDQSx5QnJCMENXO0VxQnpDWCxxQnJCeUNXO0EyRnEvRWY7QXRFdmhGRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBc0Vpa0Y3TDtBdEVsaEZJO0VBS0k7QXNFZ2hGUjs7QXZFeGdGRTtFQzNEQTtFRkFFLHlCbkJzRVc7RXFCcEViLHFCckJvRWE7QTJGbWdGZjtBekZua0ZFO0VtQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBc0Ura0Z6RztBdEVua0ZFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0FzRWdrRk47QXRFM2pGRTtFQUVFO0VBQ0EseUJyQjBDVztFcUJ6Q1gscUJyQnlDVztBMkZtaEZmO0F0RXJqRkU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXNFK2xGN0w7QXRFaGpGSTtFQUtJO0FzRThpRlI7O0F2RWhpRkU7RUNQQSxjckJZYTtFcUJYYixxQnJCV2E7QTJGZ2lGZjtBekZobUZFO0VtQndERSxXQUxnRDtFQU1oRCx5QnJCT1c7RXFCTlgscUJyQk1XO0EyRnFpRmY7QXRFeGlGRTtFQUVFO0FzRXlpRko7QXRFdGlGRTtFQUVFLGNyQkpXO0VxQktYO0FzRXVpRko7QXRFcGlGRTtFQUdFO0VBQ0EseUJyQlpXO0VxQmFYLHFCckJiVztBMkZpakZmO0F0RWxpRkk7RUFLSTtBc0VnaUZSOztBdkV6akZFO0VDUEEsY3JCWWE7RXFCWGIscUJyQldhO0EyRnlqRmY7QXpGem5GRTtFbUJ3REUsV0FMZ0Q7RUFNaEQseUJyQk9XO0VxQk5YLHFCckJNVztBMkY4akZmO0F0RWprRkU7RUFFRTtBc0Vra0ZKO0F0RS9qRkU7RUFFRSxjckJKVztFcUJLWDtBc0Vna0ZKO0F0RTdqRkU7RUFHRTtFQUNBLHlCckJaVztFcUJhWCxxQnJCYlc7QTJGMGtGZjtBdEUzakZJO0VBS0k7QXNFeWpGUjs7QXZFbGxGRTtFQ1BBLGNyQllhO0VxQlhiLHFCckJXYTtBMkZrbEZmO0F6RmxwRkU7RW1Cd0RFLFdBTGdEO0VBTWhELHlCckJPVztFcUJOWCxxQnJCTVc7QTJGdWxGZjtBdEUxbEZFO0VBRUU7QXNFMmxGSjtBdEV4bEZFO0VBRUUsY3JCSlc7RXFCS1g7QXNFeWxGSjtBdEV0bEZFO0VBR0U7RUFDQSx5QnJCWlc7RXFCYVgscUJyQmJXO0EyRm1tRmY7QXRFcGxGSTtFQUtJO0FzRWtsRlI7O0F2RTNtRkU7RUNQQSxjckJZYTtFcUJYYixxQnJCV2E7QTJGMm1GZjtBekYzcUZFO0VtQndERSxXQUxnRDtFQU1oRCx5QnJCT1c7RXFCTlgscUJyQk1XO0EyRmduRmY7QXRFbm5GRTtFQUVFO0FzRW9uRko7QXRFam5GRTtFQUVFLGNyQkpXO0VxQktYO0FzRWtuRko7QXRFL21GRTtFQUdFO0VBQ0EseUJyQlpXO0VxQmFYLHFCckJiVztBMkY0bkZmO0F0RTdtRkk7RUFLSTtBc0UybUZSOztBdkVwb0ZFO0VDUEEsY3JCWWE7RXFCWGIscUJyQldhO0EyRm9vRmY7QXpGcHNGRTtFbUJ3REUsY0FMZ0Q7RUFNaEQseUJyQk9XO0VxQk5YLHFCckJNVztBMkZ5b0ZmO0F0RTVvRkU7RUFFRTtBc0U2b0ZKO0F0RTFvRkU7RUFFRSxjckJKVztFcUJLWDtBc0Uyb0ZKO0F0RXhvRkU7RUFHRTtFQUNBLHlCckJaVztFcUJhWCxxQnJCYlc7QTJGcXBGZjtBdEV0b0ZJO0VBS0k7QXNFb29GUjs7QXZFN3BGRTtFQ1BBLGNyQllhO0VxQlhiLHFCckJXYTtBMkY2cEZmO0F6Rjd0RkU7RW1Cd0RFLFdBTGdEO0VBTWhELHlCckJPVztFcUJOWCxxQnJCTVc7QTJGa3FGZjtBdEVycUZFO0VBRUU7QXNFc3FGSjtBdEVucUZFO0VBRUUsY3JCSlc7RXFCS1g7QXNFb3FGSjtBdEVqcUZFO0VBR0U7RUFDQSx5QnJCWlc7RXFCYVgscUJyQmJXO0EyRjhxRmY7QXRFL3BGSTtFQUtJO0FzRTZwRlI7O0F2RXRyRkU7RUNQQSxjckJZYTtFcUJYYixxQnJCV2E7QTJGc3JGZjtBekZ0dkZFO0VtQndERSxjQUxnRDtFQU1oRCx5QnJCT1c7RXFCTlgscUJyQk1XO0EyRjJyRmY7QXRFOXJGRTtFQUVFO0FzRStyRko7QXRFNXJGRTtFQUVFLGNyQkpXO0VxQktYO0FzRTZyRko7QXRFMXJGRTtFQUdFO0VBQ0EseUJyQlpXO0VxQmFYLHFCckJiVztBMkZ1c0ZmO0F0RXhyRkk7RUFLSTtBc0VzckZSOztBdkUvc0ZFO0VDUEEsY3JCWWE7RXFCWGIscUJyQldhO0EyRitzRmY7QXpGL3dGRTtFbUJ3REUsV0FMZ0Q7RUFNaEQseUJyQk9XO0VxQk5YLHFCckJNVztBMkZvdEZmO0F0RXZ0RkU7RUFFRTtBc0V3dEZKO0F0RXJ0RkU7RUFFRSxjckJKVztFcUJLWDtBc0VzdEZKO0F0RW50RkU7RUFHRTtFQUNBLHlCckJaVztFcUJhWCxxQnJCYlc7QTJGZ3VGZjtBdEVqdEZJO0VBS0k7QXNFK3NGUjs7QXZFN3RGQTtFQUNFLGdCcEI0TTRCO0VvQjNNNUIsY3BCMkZ3QztFb0IxRnhDLHFCcEIyRndDO0EyRnFvRjFDO0F6Rnp5RkU7RWtCNEVFLGNwQnlGc0M7RW9CeEZ0QywwQnBCeUZzQztBMkZ1b0YxQztBdkU3dEZFO0VBRUUsMEJwQm9Gc0M7QTJGMG9GMUM7QXZFM3RGRTtFQUVFLGNwQnRGTztFb0J1RlA7QXVFNHRGSjs7QXZFanRGQTtFQ1BFO0VwQnVCSSxtQkF0Q2E7RW9CaUJqQixnQnJCK0g0QjtFT3ZOMUI7QW9GcXpGSjs7QXZFcHRGQTtFQ1hFO0VwQnVCSSxvQkF0Q2E7RW9CaUJqQixnQnJCZ0k0QjtFT3hOMUI7QW9GNHpGSjs7QXZFbHRGQTtFQUNFO0VBQ0E7QXVFcXRGRjtBdkVsdEZFO0VBQ0Usa0JwQnVUMEI7QTJGNjVFOUI7O0F2RTVzRkU7OztFQUNFO0F1RWl0Rko7O0FyRTUxRkE7RUxnQk0sZ0NLZko7QXFFKzFGRjtBMUU1MEZNO0VLcEJOO0lMcUJRO0UwRSswRk47QUFDRjtBckVsMkZFO0VBQ0U7QXFFbzJGSjs7QXJFLzFGRTtFQUNFO0FxRWsyRko7O0FyRTkxRkE7RUFDRTtFQUNBO0VBQ0E7RUxESSw2QktFSjtBcUVpMkZGO0ExRS8xRk07RUtOTjtJTE9RO0UwRWsyRk47QUFDRjs7QXBFdjNGQTs7OztFQUlFO0FvRTAzRkY7O0FwRXYzRkE7RUFDRTtBb0UwM0ZGO0FuRXQyRkk7RUFDRTtFQUNBLG9CeEIrTndCO0V3QjlOeEIsdUJ4QjZOd0I7RXdCNU54QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBbUV5NEZGO0FuRXAxRkk7RUFDRTtBbUVzMUZOOztBcEVoNEZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXZCd3BCa0M7RXVCdnBCbEM7RUFDQTtFQUNBLGdCdkJndUJrQztFdUIvdEJsQztFQUNBO0V0QnNHSSxpQkF0Q2E7RXNCOURqQixjdkJYUztFdUJZVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQmRFO0FvRms1Rko7O0FwRTMzRkk7RUFDRTtFQUNBO0FvRTgzRk47O0FwRTMzRkk7RUFDRTtFQUNBO0FvRTgzRk47O0FoRmwzRkk7RVluQkE7SUFDRTtJQUNBO0VvRXk0Rko7O0VwRXQ0RkU7SUFDRTtJQUNBO0VvRXk0Rko7QUFDRjtBaEY5M0ZJO0VZbkJBO0lBQ0U7SUFDQTtFb0VvNUZKOztFcEVqNUZFO0lBQ0U7SUFDQTtFb0VvNUZKO0FBQ0Y7QWhGejRGSTtFWW5CQTtJQUNFO0lBQ0E7RW9FKzVGSjs7RXBFNTVGRTtJQUNFO0lBQ0E7RW9FKzVGSjtBQUNGO0FoRnA1Rkk7RVluQkE7SUFDRTtJQUNBO0VvRTA2Rko7O0VwRXY2RkU7SUFDRTtJQUNBO0VvRTA2Rko7QUFDRjtBcEVuNkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsdUJ2QjhyQmdDO0EyRnV1RXBDO0FuRXA4Rkk7RUFDRTtFQUNBLG9CeEIrTndCO0V3QjlOeEIsdUJ4QjZOd0I7RXdCNU54QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBbUVnK0ZGO0FuRWw3Rkk7RUFDRTtBbUVvN0ZOOztBcEV6NkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQnZCZ3JCZ0M7QTJGNHZFcEM7QW5FejlGSTtFQUNFO0VBQ0Esb0J4QitOd0I7RXdCOU54Qix1QnhCNk53QjtFd0I1TnhCO0VBbEJKO0VBQ0E7RUFDQTtFQUNBO0FtRTgrRkY7QW5FdjhGSTtFQUNFO0FtRXk4Rk47QXBFcDdGSTtFQUNFO0FvRXM3Rk47O0FwRWg3RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCdkIrcEJnQztBMkZveEVwQztBbkVqL0ZJO0VBQ0U7RUFDQSxvQnhCK053QjtFd0I5TnhCLHVCeEI2TndCO0V3QjVOeEI7QW1FbS9GTjtBbkV4K0ZNO0VBQ0U7QW1FMCtGUjtBbkV2K0ZNO0VBQ0U7RUFDQSxxQnhCNE1zQjtFd0IzTXRCLHVCeEIwTXNCO0V3QnpNdEI7RUE5Qk47RUFDQTtFQUNBO0FtRXdnR0Y7QW5FditGSTtFQUNFO0FtRXkrRk47QXBFbjhGSTtFQUNFO0FvRXE4Rk47O0FwRTc3RkU7RUFJRTtFQUNBO0FvRTY3Rko7O0FwRXg3RkE7RUU5R0U7RUFDQTtFQUNBO0VBQ0E7QWtFMGlHRjs7QXBFeDdGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0J2QmdLNEI7RXVCL0o1QixjdkJoSFM7RXVCaUhUO0VBRUE7RUFDQTtFQUNBO0FvRTA3RkY7QXpGL2lHRTtFcUJvSUUsY3ZCbW5CZ0M7RXVCbG5CaEM7RUovSUEseUJuQkdPO0EyRjJqR1g7QXBFMzZGRTtFQUVFLFdxRTdISTtFckU4SEo7RUp0SkEseUJuQm9QMEI7QTJGKzBGOUI7QXBFejZGRTtFQUVFLGN2QnRKTztFdUJ1SlA7RUFDQTtBb0UwNkZKOztBcEVsNkZBO0VBQ0U7QW9FcTZGRjs7QXBFajZGQTtFQUNFO0VBQ0Esc0J2QmdtQmtDO0V1Qi9sQmxDO0V0QnJESSxvQkF0Q2E7RXNCNkZqQixjdkJ6S1M7RXVCMEtUO0FvRW82RkY7O0FwRWg2RkE7RUFDRTtFQUNBO0VBQ0EsY3ZCOUtTO0EyRmlsR1g7O0FqRTlsR0E7O0VBRUU7RUFDQTtFQUNBO0FpRWltR0Y7QWpFL2xHRTs7RUFDRTtFQUNBO0FpRWttR0o7QXpGam1HRTs7RXdCSUk7QWlFaW1HTjtBakUvbEdJOzs7O0VBR0U7QWlFa21HTjs7QWpFNWxHQTtFQUNFO0VBQ0E7RUFDQTtBaUUrbEdGO0FqRTdsR0U7RUFDRTtBaUUrbEdKOztBakV6bEdFOztFQUVFO0FpRTRsR0o7QWpFeGxHRTs7RW5CWEU7RUFDQTtBb0Z1bUdKO0FqRXhsR0U7O0VuQkZFO0VBQ0E7QW9GOGxHSjs7QWpFM2tHQTtFQUNFO0VBQ0E7QWlFOGtHRjtBakU1a0dFO0VBR0U7QWlFNGtHSjtBakV6a0dFO0VBQ0U7QWlFMmtHSjs7QWpFdmtHQTtFQUNFO0VBQ0E7QWlFMGtHRjs7QWpFdmtHQTtFQUNFO0VBQ0E7QWlFMGtHRjs7QWpFdGpHQTtFQUNFO0VBQ0E7RUFDQTtBaUV5akdGO0FqRXZqR0U7O0VBRUU7QWlFeWpHSjtBakV0akdFOztFQUVFO0FpRXdqR0o7QWpFcGpHRTs7RW5CckZFO0VBQ0E7QW9GNm9HSjtBakVwakdFOztFbkJ4R0U7RUFDQTtBb0ZncUdKOztBakVyaUdFOztFQUVFO0FpRXdpR0o7QWpFdGlHSTs7OztFQUVFO0VBQ0E7RUFDQTtBaUUwaUdOOztBaEVuc0dBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZ0Vzc0dGO0FoRXBzR0U7Ozs7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FnRXNzR0o7QWhFcHNHSTs7Ozs7Ozs7Ozs7O0VBR0U7QWdFK3NHTjtBaEUxc0dFOzs7RUFHRTtBZ0U0c0dKO0FoRXhzR0U7RUFDRTtBZ0Uwc0dKO0FoRXJzR0k7O0VwQklBO0VBQ0E7QW9GcXNHSjtBaEVyc0dFO0VBQ0U7RUFDQTtBZ0V1c0dKO0FoRXJzR0k7RXBCTEE7RUFDQTtBb0Y2c0dKO0FoRXBzR0k7OztFcEJ4QkE7RUFDQTtBb0ZpdUdKO0FoRWxzR0k7OztFcEJoQ0E7RUFDQTtBb0Z1dUdKOztBaEV6ckdBOztFQUVFO0FnRTRyR0Y7QWhFdnJHRTs7RUFDRTtFQUNBO0FnRTByR0o7QWhFeHJHSTs7RUFDRTtBZ0UyckdOO0FoRXZyR0U7Ozs7Ozs7O0VBSUU7QWdFNnJHSjs7QWhFenJHQTtFQUF1QjtBZ0U2ckd2Qjs7QWhFNXJHQTtFQUFzQjtBZ0Vnc0d0Qjs7QWhFeHJHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0UxQlNJLGlCQXRDYTtFMEIrQmpCLGdCM0J1SzRCO0UyQnRLNUIsZ0JpRW5IaUI7RWpFb0hqQixjM0I1R1M7RTJCNkdUO0VBQ0E7RUFDQSx5QjNCcEhTO0UyQnFIVDtFcEI1R0U7QW9Gd3lHSjtBaEV4ckdFOztFQUVFO0FnRTByR0o7O0FoRWhyR0E7O0VBRUUsZ0MzQnFXc0M7QTJGODBGeEM7O0FoRWhyR0E7Ozs7OztFQU1FO0UxQjFCSSxtQkF0Q2E7RTBCa0VqQixnQjNCOEU0QjtFT3ZOMUI7QW9GNnpHSjs7QWhFaHJHQTs7RUFFRSxrQzNCbVZzQztBMkZnMkZ4Qzs7QWhFaHJHQTs7Ozs7O0VBTUU7RTFCM0NJLG9CQXRDYTtFMEJtRmpCLGdCM0I4RDRCO0VPeE4xQjtBb0Y4MEdKOztBaEVockdBOztFQUVFO0FnRW1yR0Y7O0FoRXhxR0E7Ozs7Ozs7O0VwQjNKSTtFQUNBO0FvRjgwR0o7O0FoRXpxR0E7Ozs7OztFcEJ4Skk7RUFDQTtBb0YwMEdKOztBL0RsM0dBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QStEcTNHRjs7QS9EbDNHQTtFQUNFO0VBQ0Esa0I1Qndmc0M7QTJGNjNGeEM7O0EvRGwzR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxXNUJvZnNDO0U0Qm5mdEM7RUFDQTtBK0RxM0dGO0EvRG4zR0U7RUFDRSxXZ0VGSTtFaEVHSixxQjVCeU4wQjtFbUJwUDFCLHlCbkJvUDBCO0EyRjZwRzlCO0EvRGozR0U7RUFLSSxnRDVCK1Z3QjtBMkZnaEc5QjtBL0QzMkdFO0VBQ0UscUI1QnFib0M7QTJGdzdGeEM7QS9EMTJHRTtFQUNFLFdnRXRCSTtFaEV1QkoseUI1QmlmNEM7RTRCaGY1QyxxQjVCZ2Y0QztBMkY0M0ZoRDtBL0RyMkdJO0VBQ0UsYzVCakRLO0EyRnc1R1g7QS9EcjJHTTtFQUNFLHlCNUJ4REc7QTJGKzVHWDs7QS9ENzFHQTtFQUNFO0VBQ0E7RUFFQTtBK0QrMUdGO0EvRDMxR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFc1QnVib0M7RTRCdGJwQyxZNUJzYm9DO0U0QnJicEM7RUFDQTtFQUNBLHNCZ0U5REk7RWhFK0RKO0ErRDYxR0o7QS9EeDFHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzVCd2FvQztFNEJ2YXBDLFk1QnVhb0M7RTRCdGFwQztFQUNBO0ErRDAxR0o7O0EvRGgxR0U7RXJCbEdFO0FvRnM3R0o7QS9ELzBHSTtFQUNFO0ErRGkxR047QS9ENTBHSTtFQUNFLHFCNUIwSHdCO0VtQnBQMUIseUJuQm9QMEI7QTJGcXRHOUI7QS9EMzBHSTtFQUNFO0ErRDYwR047QS9EeDBHSTtFVHBJQSx3Q25Cd2hCNEM7QTJGdTdGaEQ7QS9EeDBHSTtFVHZJQSx3Q25Cd2hCNEM7QTJGMDdGaEQ7O0EvRGgwR0U7RUFFRSxrQjVCeVo0QztBMkZ5NkZoRDtBL0Q5ekdJO0VBQ0U7QStEZzBHTjtBL0QzekdJO0VUOUpBLHdDbkJ3aEI0QztBMkZvOEZoRDs7QS9EbnpHQTtFQUNFO0ErRHN6R0Y7QS9EbnpHSTtFQUNFO0VBQ0EsYzVCaVkwQztFNEJoWTFDO0VBRUEscUI1QitYMEM7QTJGcTdGaEQ7QS9EanpHSTtFQUNFO0VBQ0E7RUFDQSx1QjVCMFgwQztFNEJ6WDFDLHdCNUJ5WDBDO0U0QnhYMUMseUI1QnBMSztFNEJzTEwscUI1QnFYMEM7RWlCdmlCMUMseUlXbUxBO0ErRGt6R047QTFFaitHTTtFV3VLRjtJWHRLSTtFMEVvK0dOO0FBQ0Y7QS9EbHpHSTtFQUNFLHNCZ0UzS0U7RWhFNEtGO0ErRG96R047QS9EL3lHSTtFVHpNQSx3Q25Cd2hCNEM7QTJGbStGaEQ7O0EvRHJ5R0E7RUFDRTtFQUNBO0VBQ0EsbUM1Qm9Sc0M7RTRCblJ0QztFM0JqR0ksaUJBdENhO0UyQjBJakIsZ0I1QjRENEI7RTRCM0Q1QixnQmdFOU5pQjtFaEUrTmpCLGM1QnZOUztFNEJ3TlQ7RUFDQTtFQUNBO0VyQnRORTtFcUJ5TkY7S0FBQTtVQUFBO0ErRHN5R0Y7QS9EcHlHRTtFQUNFLHFCNUJ1UG9DO0U0QnRQcEM7RUFLRSxnRDVCa1c4QjtBMkZnOEZwQztBL0QveEdJO0VBTUUsYzVCL09LO0U0QmdQTCxzQmdFaE9FO0FENC9HUjtBL0R4eEdFO0VBRUU7RUFDQSxzQjVCOEgwQjtFNEI3SDFCO0ErRHl4R0o7QS9EdHhHRTtFQUNFLGM1QjdQTztFNEI4UFAseUI1QmxRTztBMkYwaEhYO0EvRHB4R0U7RUFDRTtBK0RzeEdKO0EvRGx4R0U7RUFDRTtFQUNBO0ErRG94R0o7O0EvRGh4R0E7RUFDRSxrQzVCeU5zQztFNEJ4TnRDLG9CNUJnSDRCO0U0Qi9HNUIsdUI1QitHNEI7RTRCOUc1QixvQjVCK0c0QjtFQzlReEIsb0JBdENhO0EwRnk5R25COztBL0RoeEdBO0VBQ0UsZ0M1QmtOc0M7RTRCak50QyxtQjVCNkc0QjtFNEI1RzVCLHNCNUI0RzRCO0U0QjNHNUIsa0I1QjRHNEI7RUNuUnhCLG1CQXRDYTtBMEZpK0duQjs7QS9EM3dHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1DNUJnTXNDO0U0Qi9MdEM7QStEOHdHRjs7QS9EM3dHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1DNUJ3THNDO0U0QnZMdEM7RUFDQTtFQUNBO0ErRDh3R0Y7QS9ENXdHRTtFQUNFLHFCNUJvS29DO0U0Qm5LcEMsZ0Q1QndFMEI7QTJGc3NHOUI7QS9EMXdHRTtFQUVFLHlCNUIvVE87QTJGMGtIWDtBL0R2d0dJO0VBQ0UsaUI1QjBUYTtBMkYrOEZuQjtBL0Ryd0dFO0VBQ0U7QStEdXdHSjs7QS9EbndHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQzVCdUpzQztFNEJ0SnRDO0VBQ0E7RUFFQSxnQjVCakU0QjtFNEJrRTVCLGdCZ0UzVmlCO0VoRTRWakIsYzVCcFZTO0U0QnFWVCxzQmdFclVNO0VoRXNVTjtFckJsVkU7QW9Gd2xISjtBL0Rsd0dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNkI1QmdJb0M7RTRCL0hwQztFQUNBLGdCZ0UzV2U7RWhFNFdmLGM1QnBXTztFNEJxV1A7RVQ3V0EseUJuQkdPO0U0QjRXUDtFckJuV0E7QW9Gd21ISjs7QS9EMXZHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtVQUFBO0ErRDZ2R0Y7QS9EM3ZHRTtFQUNFO0ErRDZ2R0o7QS9EenZHSTtFQUEwQixtRTVCbU9lO0EyRnloRzdDO0EvRDN2R0k7RUFBMEIsbUU1QmtPZTtBMkY0aEc3QztBL0Q3dkdJO0VBQTBCLG1FNUJpT2U7QTJGK2hHN0M7QS9EN3ZHRTtFQUNFO0ErRCt2R0o7QS9ENXZHRTtFQUNFLFc1Qm1OeUM7RTRCbE56QyxZNUJrTnlDO0U0QmpOekM7RVRsWkEseUJuQm9QMEI7RTRCZ0sxQixTNUJrTnlDO0VPMWxCekM7RVVGRSxvSFc2WUY7RVg3WUUsNEdXNllGO0VBQ0E7VUFBQTtBK0Q2dkdKO0ExRXZvSE07RVdpWUo7SVhoWU07SUFBQTtFMEUwb0hOO0FBQ0Y7QS9EaHdHSTtFVDFaQSx5Qm5CMm1CeUM7QTJGa2pHN0M7QS9EOXZHRTtFQUNFLFc1QjRMZ0M7RTRCM0xoQyxjNUI0TGdDO0U0QjNMaEM7RUFDQSxlNUIyTGdDO0U0QjFMaEMseUI1QmhhTztFNEJpYVA7RXJCelpBO0FvRjBwSEo7QS9ENXZHRTtFQUNFLFc1QndMeUM7RTRCdkx6QyxZNUJ1THlDO0VtQm5tQnpDLHlCbkJvUDBCO0U0QjBMMUIsUzVCd0x5QztFTzFsQnpDO0VVRkUsaUhXdWFGO0VYdmFFLDRHV3VhRjtFQUNBO09BQUE7QStENnZHSjtBMUVqcUhNO0VXNFpKO0lYM1pNO0lBQUE7RTBFb3FITjtBQUNGO0EvRGh3R0k7RVRwYkEseUJuQjJtQnlDO0EyRjRrRzdDO0EvRDl2R0U7RUFDRSxXNUJrS2dDO0U0QmpLaEMsYzVCa0tnQztFNEJqS2hDO0VBQ0EsZTVCaUtnQztFNEJoS2hDLHlCNUIxYk87RTRCMmJQO0VyQm5iQTtBb0ZvckhKO0EvRDV2R0U7RUFDRSxXNUI4SnlDO0U0QjdKekMsWTVCNkp5QztFNEI1SnpDO0VBQ0Esb0I1QnRFMEI7RTRCdUUxQixtQjVCdkUwQjtFbUJsWTFCLHlCbkJvUDBCO0U0QnVOMUIsUzVCMkp5QztFTzFsQnpDO0VVRkUsZ0hXb2NGO0VYcGNFLDRHV29jRjtFQUNBO0ErRDZ2R0o7QTFFOXJITTtFV3NiSjtJWHJiTTtJQUFBO0UwRWlzSE47QUFDRjtBL0Rod0dJO0VUamRBLHlCbkIybUJ5QztBMkZ5bUc3QztBL0Q5dkdFO0VBQ0UsVzVCcUlnQztFNEJwSWhDLGM1QnFJZ0M7RTRCcEloQztFQUNBLGU1Qm9JZ0M7RTRCbkloQztFQUNBO0VBQ0E7QStEZ3dHSjtBL0Q1dkdFO0VBQ0UseUI1QjlkTztFT1FQO0FvRnF0SEo7QS9EM3ZHRTtFQUNFO0VBQ0EseUI1QnBlTztFT1FQO0FvRjB0SEo7QS9EenZHSTtFQUNFLHlCNUJ4ZUs7QTJGbXVIWDtBL0R4dkdJO0VBQ0U7QStEMHZHTjtBL0R2dkdJO0VBQ0UseUI1QmhmSztBMkZ5dUhYO0EvRHR2R0k7RUFDRTtBK0R3dkdOO0EvRHJ2R0k7RUFDRSx5QjVCeGZLO0EyRit1SFg7O0EvRGx2R0E7OztFWHpmTSw0R1c0Zko7QStEcXZHRjtBMUU3dUhNO0VXcWZOOzs7SVhwZlE7RTBFa3ZITjtBQUNGOztBOURud0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOERzd0hGOztBOURud0hBO0VBQ0U7RUFDQTtBOERzd0hGO0F6RnJ3SEU7RTJCR0U7QThEcXdISjtBOURqd0hFO0VBQ0UsYzdCWE87RTZCWVA7RUFDQTtBOERtd0hKOztBOUQzdkhBO0VBQ0U7QThEOHZIRjtBOUQ1dkhFO0VBQ0U7RUFDQTtFdEJaQTtFQUNBO0FvRjJ3SEo7QXpGdnhIRTtFMkIyQkkscUM3Qm1wQjhCO0EyRjRtR3BDO0E5RDV2SEk7RUFDRSxjN0JsQ0s7RTZCbUNMO0VBQ0E7QThEOHZITjtBOUQxdkhFOztFQUVFLGM3QnpDTztFNkIwQ1AseUIrRHZETTtFL0R3RE4scUM3QndvQmdDO0EyRm9uR3BDO0E5RHp2SEU7RUFFRTtFdEJuQ0E7RUFDQTtBb0Y4eEhKOztBOURodkhFO0V0QnhERTtBb0Y0eUhKO0E5RGh2SEU7O0VBRUUsVytEbERJO0UvRG1ESix5QjdCeUswQjtBMkZ5a0g5Qjs7QTlEeHVIRTs7RUFFRTtFQUNBO0E4RDJ1SEo7O0E5RHR1SEU7O0VBRUU7RUFDQTtFQUNBO0E4RHl1SEo7O0E5RC90SEU7RUFDRTtBOERrdUhKO0E5RGh1SEU7RUFDRTtBOERrdUhKOztBN0R0MEhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E2RHkwSEY7QTdEcjBIRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTZENDBISjtBN0R4ekhBO0VBQ0U7RUFDQSxvQjlCaXFCa0M7RThCaHFCbEMsdUI5QmdxQmtDO0U4Qi9wQmxDLGtCOUJnRk87RUNSSCxtQkF0Q2E7RTZCaENqQjtFQUNBO0E2RDB6SEY7QXpGcDJIRTtFNEI2Q0U7QTZEMHpISjs7QTdEanpIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTZEb3pIRjtBN0RsekhFO0VBQ0U7RUFDQTtBNkRvekhKO0E3RGp6SEU7RUFDRTtFQUNBO0E2RG16SEo7O0E3RDF5SEE7RUFDRTtFQUNBLG1COUJ3bEJrQztFOEJ2bEJsQyxzQjlCdWxCa0M7QTJGc3RHcEM7O0E3RGp5SEE7RUFDRTtFQUNBO0VBR0E7QTZEa3lIRjs7QTdEOXhIQTtFQUNFO0U3QlNJLG1CQXRDYTtFNkIrQmpCO0VBQ0E7RUFDQTtFdkJ4R0U7QW9GMDRISjtBekY1NEhFO0U0QjhHRTtBNkRpeUhKOztBN0QzeEhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E2RDh4SEY7O0E3RDN4SEE7RUFDRSxnQjlCK2tCa0M7RThCOWtCbEM7QTZEOHhIRjs7QWhGcDJISTtFbUJrRkk7Ozs7OztJQUNFO0lBQ0E7RTZEMnhIUjtBQUNGO0FoRjczSEk7RW1CNkZBO0lBb0JJO0lBQ0E7RTZEZ3hITjtFN0Q5d0hNO0lBQ0U7RTZEZ3hIUjtFN0Q5d0hRO0lBQ0U7RTZEZ3hIVjtFN0Q3d0hRO0lBQ0UscUI5QndoQndCO0k4QnZoQnhCLG9COUJ1aEJ3QjtFMkZ3dkdsQztFN0Qxd0hNOzs7Ozs7SUFDRTtFNkRpeEhSO0U3RG53SE07SUFDRTtFNkRxd0hSO0U3RGx3SE07SUFDRTtJQUdBO0U2RGt3SFI7RTdEL3ZITTtJQUNFO0U2RGl3SFI7QUFDRjtBaEZsNUhJO0VtQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFNkR3MEhSO0FBQ0Y7QWhGMTZISTtFbUI2RkE7SUFvQkk7SUFDQTtFNkQ2ekhOO0U3RDN6SE07SUFDRTtFNkQ2ekhSO0U3RDN6SFE7SUFDRTtFNkQ2ekhWO0U3RDF6SFE7SUFDRSxxQjlCd2hCd0I7SThCdmhCeEIsb0I5QnVoQndCO0UyRnF5R2xDO0U3RHZ6SE07Ozs7OztJQUNFO0U2RDh6SFI7RTdEaHpITTtJQUNFO0U2RGt6SFI7RTdEL3lITTtJQUNFO0lBR0E7RTZEK3lIUjtFN0Q1eUhNO0lBQ0U7RTZEOHlIUjtBQUNGO0FoRi83SEk7RW1Ca0ZJOzs7Ozs7SUFDRTtJQUNBO0U2RHEzSFI7QUFDRjtBaEZ2OUhJO0VtQjZGQTtJQW9CSTtJQUNBO0U2RDAySE47RTdEeDJITTtJQUNFO0U2RDAySFI7RTdEeDJIUTtJQUNFO0U2RDAySFY7RTdEdjJIUTtJQUNFLHFCOUJ3aEJ3QjtJOEJ2aEJ4QixvQjlCdWhCd0I7RTJGazFHbEM7RTdEcDJITTs7Ozs7O0lBQ0U7RTZEMjJIUjtFN0Q3MUhNO0lBQ0U7RTZEKzFIUjtFN0Q1MUhNO0lBQ0U7SUFHQTtFNkQ0MUhSO0U3RHoxSE07SUFDRTtFNkQyMUhSO0FBQ0Y7QWhGNStISTtFbUJrRkk7Ozs7OztJQUNFO0lBQ0E7RTZEazZIUjtBQUNGO0FoRnBnSUk7RW1CNkZBO0lBb0JJO0lBQ0E7RTZEdTVITjtFN0RyNUhNO0lBQ0U7RTZEdTVIUjtFN0RyNUhRO0lBQ0U7RTZEdTVIVjtFN0RwNUhRO0lBQ0UscUI5QndoQndCO0k4QnZoQnhCLG9COUJ1aEJ3QjtFMkYrM0dsQztFN0RqNUhNOzs7Ozs7SUFDRTtFNkR3NUhSO0U3RDE0SE07SUFDRTtFNkQ0NEhSO0U3RHo0SE07SUFDRTtJQUdBO0U2RHk0SFI7RTdEdDRITTtJQUNFO0U2RHc0SFI7QUFDRjtBN0R6OEhJO0VBb0JJO0VBQ0E7QTZEdzdIUjtBN0QzOEhROzs7Ozs7RUFDRTtFQUNBO0E2RGs5SFY7QTdELzdIUTtFQUNFO0E2RGk4SFY7QTdELzdIVTtFQUNFO0E2RGk4SFo7QTdEOTdIVTtFQUNFLHFCOUJ3aEJ3QjtFOEJ2aEJ4QixvQjlCdWhCd0I7QTJGeTZHcEM7QTdEMzdIUTs7Ozs7O0VBQ0U7QTZEazhIVjtBN0RwN0hRO0VBQ0U7QTZEczdIVjtBN0RuN0hRO0VBQ0U7RUFHQTtBNkRtN0hWO0E3RGg3SFE7RUFDRTtBNkRrN0hWOztBN0RwNkhFO0VBQ0UseUI5QmdnQmdDO0EyRnU2R3BDO0F6Ri9uSUU7RTRCMk5JLHlCOUI2ZjhCO0EyRjA2R3BDO0E3RGw2SEk7RUFDRSx5QjlCcWY4QjtBMkYrNkdwQztBekZyb0lFO0U0Qm9PTSx5QjlCbWY0QjtBMkZpN0dwQztBN0RqNkhNO0VBQ0UseUI5QmlmNEI7QTJGazdHcEM7QTdELzVISTs7OztFQUlFLHlCOUJ3ZThCO0EyRnk3R3BDO0E3RDc1SEU7RUFDRSx5QjlCaWVnQztFOEJoZWhDLGdDOUJxZWdDO0EyRjA3R3BDO0E3RDU1SEU7RUFDRTtBNkQ4NUhKO0E3RDM1SEU7RUFDRSx5QjlCd2RnQztBMkZxOEdwQztBN0Q1NUhJO0VBQ0UseUI5QndkOEI7QTJGczhHcEM7QXpGOXBJRTtFNEJtUU0seUI5QnFkNEI7QTJGeThHcEM7O0E3RHQ1SEU7RUFDRSxXOEQ5UEk7QUR1cElSO0F6RnJxSUU7RTRCK1FJLFc4RGpRRTtBRDBwSVI7QTdEcDVISTtFQUNFLCtCOUIwYjhCO0EyRjQ5R3BDO0F6RjNxSUU7RTRCd1JNLGdDOUJ3YjRCO0EyRjg5R3BDO0E3RG41SE07RUFDRSxnQzlCc2I0QjtBMkYrOUdwQztBN0RqNUhJOzs7O0VBSUUsVzhEdFJFO0FEeXFJUjtBN0QvNEhFO0VBQ0UsK0I5QnNhZ0M7RThCcmFoQyxzQzlCMGFnQztBMkZ1K0dwQztBN0Q5NEhFO0VBQ0U7QTZEZzVISjtBN0Q3NEhFO0VBQ0UsK0I5QjZaZ0M7QTJGay9HcEM7QTdEOTRISTtFQUNFLFc4RHRTRTtBRHNySVI7QXpGcHNJRTtFNEJ1VE0sVzhEelNBO0FEeXJJUjs7QTVEbnRJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQjZEbUJNO0U3RGxCTjtFQUNBO0V4QktFO0FvRml0SUo7QTVEbnRJRTtFQUNFO0VBQ0E7QTREcXRJSjtBNURsdElFO0VBQ0U7RUFDQTtBNERvdElKO0E1RGx0SUk7RUFDRTtFeEJDRjtFQUNBO0FvRm90SUo7QTVEbHRJSTtFQUNFO0V4QlVGO0VBQ0E7QW9GMnNJSjtBNUQvc0lFOztFQUVFO0E0RGl0SUo7O0E1RDdzSUE7RUFHRTtFQUdBO0VBQ0EsZ0IvQjh3QmtDO0EyRjg3R3BDOztBNUR4c0lBO0VBQ0Usc0IvQnd3QmtDO0EyRm04R3BDOztBNUR4c0lBO0VBQ0U7RUFDQTtBNEQyc0lGOztBNUR4c0lBO0VBQ0U7QTREMnNJRjs7QXpGaHdJRTtFNkIwREU7QTREMHNJSjtBNUR2c0lFO0VBQ0Usb0IvQnV2QmdDO0EyRms5R3BDOztBNURqc0lBO0VBQ0U7RUFDQTtFQUVBLHFDL0JndkJrQztFK0IvdUJsQztBNERtc0lGO0E1RGpzSUU7RXhCdkVFO0FvRjJ3SUo7O0E1RC9ySUE7RUFDRTtFQUVBLHFDL0JxdUJrQztFK0JwdUJsQztBNERpc0lGO0E1RC9ySUU7RXhCbEZFO0FvRm94SUo7O0E1RHhySUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNEQycklGOztBNUR4cklBO0VBQ0U7RUFDQTtBNEQycklGOztBNUR2cklBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCL0Iyc0JrQztFTzF6QmhDO0FvRjB5SUo7O0E1RHZySUE7OztFQUdFO0VBQ0E7QTREMHJJRjs7QTVEdnJJQTs7RXhCakhJO0VBQ0E7QW9GNnlJSjs7QTVEeHJJQTs7RXhCeEdJO0VBQ0E7QW9GcXlJSjs7QTVEcnJJRTtFQUNFLG1CL0JtckJnQztBMkZxZ0hwQztBaEZ2eElJO0VvQjZGSjtJQU1JO0lBQ0E7SUFDQTtJQUNBO0U0RHdySUY7RTVEdHJJRTtJQUVFO0lBQ0Esa0IvQnVxQjhCO0krQnRxQjlCO0lBQ0EsaUIvQnFxQjhCO0UyRmtoSGxDO0FBQ0Y7O0E1RDNxSUU7RUFDRSxtQi9CdXBCZ0M7QTJGdWhIcEM7QWhGenlJSTtFb0J1SEo7SUFRSTtJQUNBO0U0RDhxSUY7RTVEM3FJRTtJQUVFO0lBQ0E7RTRENHFJSjtFNUQxcUlJO0lBQ0U7SUFDQTtFNEQ0cUlOO0U1RHZxSU07SXhCektKO0lBQ0E7RW9GbTFJRjtFNUR4cUlROztJQUdFO0U0RHlxSVY7RTVEdnFJUTs7SUFHRTtFNER3cUlWO0U1RHBxSU07SXhCMUtKO0lBQ0E7RW9GaTFJRjtFNURycUlROztJQUdFO0U0RHNxSVY7RTVEcHFJUTs7SUFHRTtFNERxcUlWO0FBQ0Y7O0E1RHhwSUU7RUFDRSxzQi9CNGtCZ0M7QTJGK2tIcEM7QWhGbjFJSTtFb0JzTEo7SUFNSSxvQi9CeWxCZ0M7UytCemxCaEMsZS9CeWxCZ0M7SStCeGxCaEMsd0IvQnlsQmdDO1MrQnpsQmhDLG1CL0J5bEJnQztJK0J4bEJoQztJQUNBO0U0RDJwSUY7RTVEenBJRTtJQUNFO0lBQ0E7RTREMnBJSjtBQUNGOztBNURscElBO0VBQ0U7QTREcXBJRjtBNURucElFO0VBQ0U7QTREcXBJSjtBNURucElJO0VBQ0U7RXhCdk9GO0VBQ0E7QW9GNjNJSjtBNURucElJO0V4QnpQQTtFQUNBO0FvRis0SUo7QTVEbnBJSTtFeEJ0UUE7RXdCd1FFO0E0RHFwSU47O0EzRC82SUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQmhDbWlDa0M7RWdDamlDbEM7RUFDQSx5QmhDRVM7RU9TUDtBb0Z1NklKOztBM0Q1NklFO0VBQ0Usb0JoQ3VoQ2dDO0EyRnc1R3BDO0EzRDc2SUk7RUFDRTtFQUNBLHFCaENtaEM4QjtFZ0NsaEM5QixjaENOSztFZ0NPTDtBMkQrNklOO0EzRHI2SUU7RUFDRTtBMkR1NklKO0EzRHA2SUU7RUFDRTtBMkRzNklKO0EzRG42SUU7RUFDRSxjaEMxQk87QTJGKzdJWDs7QTFENThJQTtFQUNFO0U3QkdBO0VBQ0E7RUdhRTtBb0ZpOElKOztBMUQ3OElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQmpDbXhCa0M7RWlDbHhCbEMsY2pDbUt3QztFaUNqS3hDLHNCMkRnQk07RTNEZk47QTBEKzhJRjtBMUQ3OElFO0VBQ0U7RUFDQSxjakM4SnNDO0VpQzdKdEM7RUFDQSx5QmpDWk87RWlDYVAscUJqQ1pPO0EyRjI5SVg7QTFENThJRTtFQUNFO0VBQ0EsVWpDMndCZ0M7RWlDMXdCaEMsZ0RqQzhXMEI7QTJGZ21JOUI7O0ExRHg4SUk7RUFDRTtFMUJhRjtFQUNBO0FvRis3SUo7QTFEeDhJSTtFMUJOQTtFQUNBO0FvRmk5SUo7QTFEdjhJRTtFQUNFO0VBQ0EsVzJEakJJO0UzRGtCSix5QmpDME0wQjtFaUN6TTFCLHFCakN5TTBCO0EyRmd3STlCO0ExRHQ4SUU7RUFDRSxjakN4Q087RWlDeUNQO0VBRUE7RUFDQSxzQjJEM0JJO0UzRDRCSixxQmpDaERPO0EyRnUvSVg7O0F6RDkvSUU7RUFDRTtFakMySEUsbUJBdENhO0VpQ25GZixnQmxDbU8wQjtBMkY4eEk5QjtBekQ1L0lNO0UzQnFDRjtFQUNBO0FvRjA5SUo7QXpEMy9JTTtFM0JrQkY7RUFDQTtBb0Y0K0lKOztBekQ1Z0pFO0VBQ0U7RWpDMkhFLG9CQXRDYTtFaUNuRmYsZ0JsQ29PMEI7QTJGMnlJOUI7QXpEMWdKTTtFM0JxQ0Y7RUFDQTtBb0Z3K0lKO0F6RHpnSk07RTNCa0JGO0VBQ0E7QW9GMC9JSjs7QXhEeGhKQTtFQUNFO0VBQ0E7RWxDaUVFO0VrQy9ERixnQm5DdVI0QjtFbUN0UjVCO0VBQ0E7RUFDQTtFQUNBO0U1QktFO0VVRkUscUlrQkRKO0F3RDJoSkY7QTFFdGhKTTtFa0JmTjtJbEJnQlE7RTBFeWhKTjtBQUNGO0F6Ri9oSkU7RWlDR0k7QXdEK2hKTjs7QXhEMWhKRTtFQUNFO0F3RDZoSko7O0F4RHhoSkE7RUFDRTtFQUNBO0F3RDJoSkY7O0F4RHBoSkE7RUFDRSxvQm5DKzNCa0M7RW1DOTNCbEMsbUJuQzgzQmtDO0VPcjVCaEM7QW9GK2lKSjs7QXhEL2dKRTtFQ2pEQTtFQUNBLHlCcEMwRWE7QTJGMC9JZjtBekZ0akpFO0VrQ1ZJO0VBQ0E7QXVEbWtKTjtBdkRoa0pJO0VBRUU7RUFDQTtBdURpa0pOOztBeEQ1aEpFO0VDakRBO0VBQ0EseUJwQzBFYTtBMkZ1Z0pmO0F6Rm5rSkU7RWtDVkk7RUFDQTtBdURnbEpOO0F2RDdrSkk7RUFFRTtFQUNBO0F1RDhrSk47O0F4RHppSkU7RUNqREE7RUFDQSx5QnBDMEVhO0EyRm9oSmY7QXpGaGxKRTtFa0NWSTtFQUNBO0F1RDZsSk47QXZEMWxKSTtFQUVFO0VBQ0E7QXVEMmxKTjs7QXhEdGpKRTtFQ2pEQTtFQUNBLHlCcEMwRWE7QTJGaWlKZjtBekY3bEpFO0VrQ1ZJO0VBQ0E7QXVEMG1KTjtBdkR2bUpJO0VBRUU7RUFDQTtBdUR3bUpOOztBeERua0pFO0VDakRBO0VBQ0EseUJwQzBFYTtBMkY4aUpmO0F6RjFtSkU7RWtDVkk7RUFDQTtBdUR1bkpOO0F2RHBuSkk7RUFFRTtFQUNBO0F1RHFuSk47O0F4RGhsSkU7RUNqREE7RUFDQSx5QnBDMEVhO0EyRjJqSmY7QXpGdm5KRTtFa0NWSTtFQUNBO0F1RG9vSk47QXZEam9KSTtFQUVFO0VBQ0E7QXVEa29KTjs7QXhEN2xKRTtFQ2pEQTtFQUNBLHlCcEMwRWE7QTJGd2tKZjtBekZwb0pFO0VrQ1ZJO0VBQ0E7QXVEaXBKTjtBdkQ5b0pJO0VBRUU7RUFDQTtBdUQrb0pOOztBeEQxbUpFO0VDakRBO0VBQ0EseUJwQzBFYTtBMkZxbEpmO0F6RmpwSkU7RWtDVkk7RUFDQTtBdUQ4cEpOO0F2RDNwSkk7RUFFRTtFQUNBO0F1RDRwSk47O0F0RHpxSkE7RUFDRTtFQUNBLG1CckN1ekJrQztFcUNyekJsQyx5QnJDS1M7RU9TUDtBb0Y4cEpKO0FoRnBuSkk7RTBCNURKO0lBUUk7RXNENHFKRjtBQUNGOztBdER6cUpBO0VBQ0U7RUFDQTtFOUJJRTtBb0Z5cUpKOztBckR2ckpBO0VBQ0U7RUFDQTtFQUNBLG1CdEN1OUJrQztFc0N0OUJsQztFL0JVRTtBb0ZpckpKOztBckR0ckpBO0VBRUU7QXFEd3JKRjs7QXJEcHJKQTtFQUNFLGdCdEM0UTRCO0EyRjI2STlCOztBckQvcUpBO0VBQ0U7QXFEa3JKRjtBckQvcUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FxRGlySko7O0FyRHZxSkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFENHFKdkU7QXBEeHRKRTtFQUNFO0FvRDB0Sko7QXBEdnRKRTtFQUNFO0FvRHl0Sko7O0FyRG5ySkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEd3JKdkU7QXBEcHVKRTtFQUNFO0FvRHN1Sko7QXBEbnVKRTtFQUNFO0FvRHF1Sko7O0FyRC9ySkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEb3NKdkU7QXBEaHZKRTtFQUNFO0FvRGt2Sko7QXBEL3VKRTtFQUNFO0FvRGl2Sko7O0FyRDNzSkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEZ3RKdkU7QXBENXZKRTtFQUNFO0FvRDh2Sko7QXBEM3ZKRTtFQUNFO0FvRDZ2Sko7O0FyRHZ0SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFENHRKdkU7QXBEeHdKRTtFQUNFO0FvRDB3Sko7QXBEdndKRTtFQUNFO0FvRHl3Sko7O0FyRG51SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEd3VKdkU7QXBEcHhKRTtFQUNFO0FvRHN4Sko7QXBEbnhKRTtFQUNFO0FvRHF4Sko7O0FyRC91SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEb3ZKdkU7QXBEaHlKRTtFQUNFO0FvRGt5Sko7QXBEL3hKRTtFQUNFO0FvRGl5Sko7O0FyRDN2SkU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QXFEZ3dKdkU7QXBENXlKRTtFQUNFO0FvRDh5Sko7QXBEM3lKRTtFQUNFO0FvRDZ5Sko7O0FuRHJ6SkU7RUFDRTtJQUFPO0VtRHl6SlQ7RW5EeHpKRTtJQUFLO0VtRDJ6SlA7QUFDRjs7QW5EOXpKRTtFQUNFO0lBQU87RW1EeXpKVDtFbkR4ekpFO0lBQUs7RW1EMnpKUDtBQUNGO0FuRHh6SkE7RUFDRTtFQUNBLFl4Q2crQmtDO0V3Qy85QmxDO0VBQ0E7RXZDbUhJLG1CQXRDYTtFdUMzRWpCLHlCeENMUztFT1NQO0FvRnV6Sko7O0FuRHR6SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdvRE1NO0VwRExOO0VBQ0E7RUFDQSx5QnhDcTlCa0M7RWlCaCtCOUIsMkJ1QllKO0FtRHl6SkY7QTFFajBKTTtFdUJETjtJdkJFUTtFMEVvMEpOO0FBQ0Y7O0FuRDN6SkE7RXJCWUU7RXFCVkE7QW1EOHpKRjs7QW5EMXpKRTtFQUNFO1VBQUE7QW1ENnpKSjtBbkQxekpNO0VBSko7SUFLTTtZQUFBO0VtRDZ6Sk47QUFDRjs7QWxEeDJKQTtFQUNFO0VBQ0E7QWtEMjJKRjs7QWxEeDJKQTtFQUNFO0FrRDIySkY7O0FqRDcySkE7RUFDRTtFQUNBO0VBR0E7RUFDQTtFbkNRRTtBb0Z1MkpKOztBakRyMkpBO0VBQ0U7RUFDQSxjMUNSUztFMENTVDtBaUR3MkpGO0F6Ri8ySkU7RXdDV0U7RUFDQSxjMUNkTztFMENlUDtFQUNBLHlCMUN0Qk87QTJGNjNKWDtBakRwMkpFO0VBQ0UsYzFDbEJPO0UwQ21CUCx5QjFDMUJPO0EyRmc0Slg7O0FqRDcxSkE7RUFDRTtFQUNBO0VBQ0E7RUFHQSxzQmtEcEJNO0VsRHFCTjtBaUQ4MUpGO0FqRDUxSkU7RW5DMUJFO0VBQ0E7QW9GeTNKSjtBakQ1MUpFO0VuQ2hCRTtFQUNBO0FvRisySko7QWpENTFKRTtFQUVFLGMxQ2xETztFMENtRFA7RUFDQSxzQmtEbkNJO0FEZzRKUjtBakR6MUpFO0VBQ0U7RUFDQSxXa0R6Q0k7RWxEMENKLHlCMUNrTDBCO0UwQ2pMMUIscUIxQ2lMMEI7QTJGMHFKOUI7QWpEeDFKRTtFQUNFO0FpRDAxSko7QWpEeDFKSTtFQUNFO0VBQ0EscUIxQzJKd0I7QTJGK3JKOUI7O0FqRDUwSkk7RUFDRTtBaUQrMEpOO0FqRDUwSlE7RW5DMUJKO0VBWkE7QW9GczNKSjtBakQzMEpRO0VuQzNDSjtFQVlBO0FvRjgySko7QWpEMTBKUTtFQUNFO0FpRDQwSlY7QWpEejBKUTtFQUNFLHFCMUMwSG9CO0UwQ3pIcEI7QWlEMjBKVjtBakR6MEpVO0VBQ0U7RUFDQSxzQjFDcUhrQjtBMkZzdEo5Qjs7QWhGdDRKSTtFK0JtQ0E7SUFDRTtFaUR1MkpKO0VqRHAySk07SW5DMUJKO0lBWkE7RW9GODRKRjtFakRuMkpNO0luQzNDSjtJQVlBO0VvRnM0SkY7RWpEbDJKTTtJQUNFO0VpRG8ySlI7RWpEajJKTTtJQUNFLHFCMUMwSG9CO0kwQ3pIcEI7RWlEbTJKUjtFakRqMkpRO0lBQ0U7SUFDQSxzQjFDcUhrQjtFMkY4dUo1QjtBQUNGO0FoRi81Skk7RStCbUNBO0lBQ0U7RWlEKzNKSjtFakQ1M0pNO0luQzFCSjtJQVpBO0VvRnM2SkY7RWpEMzNKTTtJbkMzQ0o7SUFZQTtFb0Y4NUpGO0VqRDEzSk07SUFDRTtFaUQ0M0pSO0VqRHozSk07SUFDRSxxQjFDMEhvQjtJMEN6SHBCO0VpRDIzSlI7RWpEejNKUTtJQUNFO0lBQ0Esc0IxQ3FIa0I7RTJGc3dKNUI7QUFDRjtBaEZ2N0pJO0UrQm1DQTtJQUNFO0VpRHU1Sko7RWpEcDVKTTtJbkMxQko7SUFaQTtFb0Y4N0pGO0VqRG41Sk07SW5DM0NKO0lBWUE7RW9GczdKRjtFakRsNUpNO0lBQ0U7RWlEbzVKUjtFakRqNUpNO0lBQ0UscUIxQzBIb0I7STBDekhwQjtFaURtNUpSO0VqRGo1SlE7SUFDRTtJQUNBLHNCMUNxSGtCO0UyRjh4SjVCO0FBQ0Y7QWhGLzhKSTtFK0JtQ0E7SUFDRTtFaUQrNkpKO0VqRDU2Sk07SW5DMUJKO0lBWkE7RW9GczlKRjtFakQzNkpNO0luQzNDSjtJQVlBO0VvRjg4SkY7RWpEMTZKTTtJQUNFO0VpRDQ2SlI7RWpEejZKTTtJQUNFLHFCMUMwSG9CO0kwQ3pIcEI7RWlEMjZKUjtFakR6NkpRO0lBQ0U7SUFDQSxzQjFDcUhrQjtFMkZzeko1QjtBQUNGO0FqRDk1SkE7RW5DbkhJO0FvRm9oS0o7QWpEOTVKRTtFQUNFO0FpRGc2Sko7QWpEOTVKSTtFQUNFO0FpRGc2Sk47O0FoRHppS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWlEeTVKM0M7QXpGamlLRTtFeUNQTSxjRCtJa0U7RUM5SWxFO0FnRDJpS1I7QWhEeGlLTTtFQUNFLFdpRGdCQTtFakRmQSx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FpRGs2SjFFOztBaER2aktFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FpRHU2SjNDO0F6Ri9pS0U7RXlDUE0sY0QrSWtFO0VDOUlsRTtBZ0R5aktSO0FoRHRqS007RUFDRSxXaURnQkE7RWpEZkEseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaURnN0oxRTs7QWhEcmtLRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBaURxN0ozQztBekY3aktFO0V5Q1BNLGNEK0lrRTtFQzlJbEU7QWdEdWtLUjtBaERwa0tNO0VBQ0UsV2lEZ0JBO0VqRGZBLHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QWlEODdKMUU7O0FoRG5sS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWlEbThKM0M7QXpGM2tLRTtFeUNQTSxjRCtJa0U7RUM5SWxFO0FnRHFsS1I7QWhEbGxLTTtFQUNFLFdpRGdCQTtFakRmQSx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FpRDQ4SjFFOztBaERqbUtFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FpRGk5SjNDO0F6RnpsS0U7RXlDUE0sY0QrSWtFO0VDOUlsRTtBZ0RtbUtSO0FoRGhtS007RUFDRSxXaURnQkE7RWpEZkEseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaUQwOUoxRTs7QWhEL21LRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBaUQrOUozQztBekZ2bUtFO0V5Q1BNLGNEK0lrRTtFQzlJbEU7QWdEaW5LUjtBaEQ5bUtNO0VBQ0UsV2lEZ0JBO0VqRGZBLHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QWlEdytKMUU7O0FoRDduS0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWlENitKM0M7QXpGcm5LRTtFeUNQTSxjRCtJa0U7RUM5SWxFO0FnRCtuS1I7QWhENW5LTTtFQUNFLFdpRGdCQTtFakRmQSx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FpRHMvSjFFOztBaEQzb0tFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FpRDIvSjNDO0F6Rm5vS0U7RXlDUE0sY0QrSWtFO0VDOUlsRTtBZ0Q2b0tSO0FoRDFvS007RUFDRSxXaURnQkE7RWpEZkEseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaURvZ0sxRTs7QS9DNXBLQTtFQUNFO0UzQzhISSxrQkF0Q2E7RTJDdEZqQixnQjVDNlI0QjtFNEM1UjVCO0VBQ0EsVzVDWVM7RTRDWFQseUI1Q3NsQ2tDO0U0Q3JsQ2xDO0ErQytwS0Y7QXpGMXBLRTtFMENERSxXNUNNTztFNENMUDtBK0M4cEtKO0F6RjFwS0U7RTBDQ0k7QStDNHBLTjs7QS9DanBLQTtFQUNFO0VBQ0E7RUFDQTtBK0NvcEtGOztBL0M5b0tBO0VBQ0U7QStDaXBLRjs7QTlDdnJLQTtFQUdFLGlCN0N5NEJrQztFNkN4NEJsQyxnQjdDdzRCa0M7RUM3d0I5QixtQkF0Q2E7RTRDbEZqQiwyQzdDMDRCa0M7RTZDejRCbEM7RUFDQTtFQUNBLGdEN0MyNEJrQztFNkMxNEJsQztFdENPRTtBb0ZpcktKO0E5Q3JyS0U7RUFDRSxzQjdDODNCZ0M7QTJGeXpJcEM7QTlDcHJLRTtFQUNFO0E4Q3NyS0o7QTlDbnJLRTtFQUNFO0VBQ0E7QThDcXJLSjtBOUNscktFO0VBQ0U7QThDb3JLSjs7QTlDaHJLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGM3Q3ZCUztFNkN3QlQsMkM3Q20zQmtDO0U2Q2wzQmxDO0VBQ0E7RXRDWkU7RUFDQTtBb0Znc0tKOztBOUNqcktBO0VBQ0UsZ0I3Q2kyQmtDO0EyRm0xSXBDOztBN0MxdEtBO0VBRUU7QTZDNHRLRjtBN0MxdEtFO0VBQ0U7RUFDQTtBNkM0dEtKOztBN0N2dEtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYTlDMnBCa0M7RThDMXBCbEM7RUFDQTtFQUNBO0VBQ0E7RUFHQTtBNkN3dEtGOztBN0NqdEtBO0VBQ0U7RUFDQTtFQUNBLGM5Qys0QmtDO0U4Qzc0QmxDO0E2Q210S0Y7QTdDaHRLRTtFN0IzQkksbUM2QjRCRjtFQUNBLDhCOUNxNkJnQztBMkY2eUlwQztBMUUzdUtNO0U2QnVCSjtJN0J0Qk07RTBFOHVLTjtBQUNGO0E3Q3J0S0U7RUFDRSxlOUNtNkJnQztBMkZveklwQztBN0NudEtFO0VBQ0Usc0I5Q2c2QmdDO0EyRnF6SXBDOztBN0NqdEtBO0VBQ0U7RUFDQTtBNkNvdEtGO0E3Q2x0S0U7RUFDRTtFQUNBO0E2Q290S0o7QTdDanRLRTs7RUFFRTtBNkNtdEtKO0E3Q2h0S0U7RUFDRTtBNkNrdEtKOztBN0M5c0tBO0VBQ0U7RUFDQTtFQUNBO0E2Q2l0S0Y7QTdDOXNLRTtFQUNFO0VBQ0E7RUFDQTtFQUFBO0VBQUE7RUFDQTtBNkNndEtKO0E3QzVzS0U7RUFDRTtFQUNBO0VBQ0E7QTZDOHNLSjtBN0M1c0tJO0VBQ0U7QTZDOHNLTjtBN0Mzc0tJO0VBQ0U7QTZDNnNLTjs7QTdDdnNLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxzQjhDcEZNO0U5Q3FGTjtFQUNBO0V2Q2xHRTtFdUNzR0Y7QTZDc3NLRjs7QTdDbHNLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE5QytpQmtDO0U4QzlpQmxDO0VBQ0E7RUFDQSxzQjlDbEhTO0EyRnV6S1g7QTdDbHNLRTtFQUFTO0E2Q3FzS1g7QTdDcHNLRTtFQUFTLFk5QzZ6QnlCO0EyRjA0SXBDOztBN0Nsc0tBO0VBQ0U7RUFDQTtFQUNBO0VBQ0Esa0I5QzJ6QmtDO0U4QzF6QmxDO0V2Q3RIRTtFQUNBO0FvRjR6S0o7QTdDcHNLRTtFQUNFLGtCOUNzekJnQztFOENwekJoQztBNkNxc0tKOztBN0Noc0tBO0VBQ0U7RUFDQSxnQjhDeEppQjtBRDIxS25COztBN0M5cktBO0VBQ0U7RUFHQTtFQUNBLGE5Q3d3QmtDO0EyRnU3SXBDOztBN0MzcktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V2Q3pJRTtFQUNBO0FvRncwS0o7QTdDMXJLRTtFQUNFO0E2QzRyS0o7O0E3Q3ZyS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E2QzByS0Y7O0FoRmowS0k7RW1DNklGO0lBQ0UsZ0I5Q3F3QmdDO0k4Q3B3QmhDO0U2Q3dyS0Y7O0U3Q3JyS0E7SUFDRTtFNkN3cktGO0U3Q3RyS0U7SUFDRTtFNkN3cktKOztFN0NwcktBO0lBQ0U7RTZDdXJLRjtFN0NycktFO0lBQ0U7SUFDQTtJQUFBO0lBQUE7RTZDdXJLSjs7RTdDL3FLQTtJQUFZLGdCOUM2dUJzQjtFMkZzOElsQztBQUNGO0FoRjMxS0k7RW1DMktGOztJQUVFLGdCOUNxdUJnQztFMkY4OElsQztBQUNGO0FoRmoyS0k7RW1Da0xGO0lBQVksaUI5Qyt0QnNCO0UyRm85SWxDO0FBQ0Y7QTVDajZLQTtFQUNFO0VBQ0EsYS9DK3FCa0M7RStDOXFCbEM7RUFDQSxTL0MyMUJrQztFZ0QvMUJsQyxpQzRDR3VCO0U1Q0R2QjtFQUNBLGdCaEQyUjRCO0VnRDFSNUIsZ0I0Q0NpQjtFNUNBakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DZ0hJLG9CQXRDYTtFOEM5RWpCO0VBQ0E7QTRDNjZLRjtBNUMzNktFO0VBQVMsWS9DKzBCeUI7QTJGK2xKcEM7QTVDNTZLRTtFQUNFO0VBQ0E7RUFDQSxhL0MrMEJnQztFK0M5MEJoQyxjL0MrMEJnQztBMkYrbEpwQztBNUM1NktJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTRDODZLTjs7QTVDejZLQTtFQUNFO0E0QzQ2S0Y7QTVDMTZLRTtFQUNFO0E0QzQ2S0o7QTVDMTZLSTtFQUNFO0VBQ0E7RUFDQSxzQi9DdkJLO0EyRm04S1g7O0E1Q3Y2S0E7RUFDRTtBNEMwNktGO0E1Q3g2S0U7RUFDRTtFQUNBLGEvQ2l6QmdDO0UrQ2h6QmhDLGMvQyt5QmdDO0EyRjJuSnBDO0E1Q3g2S0k7RUFDRTtFQUNBO0VBQ0Esd0IvQ3ZDSztBMkZpOUtYOztBNUNyNktBO0VBQ0U7QTRDdzZLRjtBNUN0NktFO0VBQ0U7QTRDdzZLSjtBNUN0NktJO0VBQ0U7RUFDQTtFQUNBLHlCL0NyREs7QTJGNjlLWDs7QTVDbjZLQTtFQUNFO0E0Q3M2S0Y7QTVDcDZLRTtFQUNFO0VBQ0EsYS9DbXhCZ0M7RStDbHhCaEMsYy9DaXhCZ0M7QTJGcXBKcEM7QTVDcDZLSTtFQUNFO0VBQ0E7RUFDQSx1Qi9DckVLO0EyRjIrS1g7O0E1Q2o1S0E7RUFDRSxnQi9DNnVCa0M7RStDNXVCbEM7RUFDQSxXNkNoRk07RTdDaUZOO0VBQ0Esc0IvQy9GUztFT0NQO0FvRm0vS0o7O0ExQ3JnTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhakQ2cUJrQztFaUQ1cUJsQztFQUNBLGdCakQ2MkJrQztFZ0RsM0JsQyxpQzRDR3VCO0U1Q0R2QjtFQUNBLGdCaEQyUjRCO0VnRDFSNUIsZ0I0Q0NpQjtFNUNBakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9DZ0hJLG9CQXRDYTtFZ0Q3RWpCO0VBQ0Esc0IyQ2lCTTtFM0NoQk47RUFDQTtFMUNHRTtBb0ZnaExKO0ExQy9nTEU7RUFDRTtFQUNBO0VBQ0EsV2pENjJCZ0M7RWlENTJCaEMsY2pENjJCZ0M7RWlENTJCaEM7QTBDaWhMSjtBMUMvZ0xJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMENnaExOOztBMUMzZ0xBO0VBQ0UscUJqRDgxQmtDO0EyRmdySnBDO0ExQzVnTEU7RUFDRTtBMEM4Z0xKO0ExQzVnTEk7RUFDRTtFQUNBO0VBQ0EscUNqRHkxQjhCO0EyRnFySnBDO0ExQzNnTEk7RUFDRSxXakQwTHdCO0VpRHpMeEI7RUFDQSxzQjJDdEJFO0FEbWlMUjs7QTFDeGdMQTtFQUNFLG1CakQwMEJrQztBMkZpc0pwQztBMUN6Z0xFO0VBQ0U7RUFDQSxhakRzMEJnQztFaURyMEJoQyxZakRvMEJnQztFaURuMEJoQztBMEMyZ0xKO0ExQ3pnTEk7RUFDRTtFQUNBO0VBQ0EsdUNqRGswQjhCO0EyRnlzSnBDO0ExQ3hnTEk7RUFDRSxTakRtS3dCO0VpRGxLeEI7RUFDQSx3QjJDN0NFO0FEdWpMUjs7QTFDcmdMQTtFQUNFLGtCakRtekJrQztBMkZxdEpwQztBMUN0Z0xFO0VBQ0U7QTBDd2dMSjtBMUN0Z0xJO0VBQ0U7RUFDQTtFQUNBLHdDakQ4eUI4QjtBMkYwdEpwQztBMUNyZ0xJO0VBQ0UsUWpEK0l3QjtFaUQ5SXhCO0VBQ0EseUIyQ2pFRTtBRHdrTFI7QTFDbGdMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2pEMHhCZ0M7RWlEenhCaEM7RUFDQTtFQUNBO0EwQ29nTEo7O0ExQ2hnTEE7RUFDRSxvQmpEbXhCa0M7QTJGZ3ZKcEM7QTFDamdMRTtFQUNFO0VBQ0EsYWpEK3dCZ0M7RWlEOXdCaEMsWWpENndCZ0M7RWlENXdCaEM7QTBDbWdMSjtBMUNqZ0xJO0VBQ0U7RUFDQTtFQUNBLHNDakQyd0I4QjtBMkZ3dkpwQztBMUNoZ0xJO0VBQ0UsVWpENEd3QjtFaUQzR3hCO0VBQ0EsdUIyQ3BHRTtBRHNtTFI7O0ExQzUrS0E7RUFDRTtFQUNBO0VoRDNCSSxpQkF0Q2E7RWdEb0VqQix5QmpENnRCa0M7RWlENXRCbEM7RTFDbklFO0VBQ0E7QW9Ga25MSjtBMUM3K0tFO0VBQ0U7QTBDKytLSjs7QTFDMytLQTtFQUNFO0VBQ0EsY2pEeEpTO0EyRnNvTFg7O0F6Q3pvTEE7RUFDRTtBeUM0b0xGOztBekN6b0xBO0VBQ0U7QXlDNG9MRjs7QXpDem9MQTtFQUNFO0VBQ0E7RUFDQTtBeUM0b0xGO0F4Q25xTEU7RUFDRTtFQUNBO0VBQ0E7QXdDcXFMSjs7QXpDN29MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0VqQ2xCSSxzQ2lDbUJKO0F5Q2dwTEY7QTFFL3BMTTtFaUNRTjtJakNQUTtFMEVrcUxOO0FBQ0Y7O0F6Q2xwTEE7OztFQUdFO0F5Q3FwTEY7O0F6Q2xwTEE7O0VBRUU7QXlDcXBMRjs7QXpDbHBMQTs7RUFFRTtBeUNxcExGOztBekM1b0xFO0VBQ0U7RUFDQTtFQUNBO0F5QytvTEo7QXpDNW9MRTs7O0VBR0U7RUFDQTtBeUM4b0xKO0F6QzNvTEU7O0VBRUU7RUFDQTtFakM1REUsMkJpQzZERjtBeUM2b0xKO0ExRXRzTE07RWlDcURKOztJakNwRE07RTBFMHNMTjtBQUNGOztBekMxb0xBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWxEbzlCbUM7RWtEbjlCbkMsVzBDbkVNO0UxQ29FTjtFQUNBLFlsRGs5Qm1DO0VpQnJpQy9CLDhCaUNvRko7QXlDNG9MRjtBMUU1dExNO0VpQ2tFTjs7SWpDakVRO0UwRWd1TE47QUFDRjtBekZ0dUxFOzs7RWdEd0ZFLFcwQzFFSTtFMUMyRUo7RUFDQTtFQUNBLFlsRDI4QmlDO0EyRndzSnJDOztBekNocExBO0VBQ0U7QXlDbXBMRjs7QXpDOW9MQTtFQUNFO0F5Q2lwTEY7O0F6QzFvTEE7O0VBRUU7RUFDQSxXbERvOEJtQztFa0RuOEJuQyxZbERtOEJtQztFa0RsOEJuQztBeUM2b0xGOztBekMzb0xBO0VBQ0U7QXlDOG9MRjs7QXpDNW9MQTtFQUNFO0F5QytvTEY7O0F6Q3RvTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsaUJsRDA1Qm1DO0VrRHo1Qm5DLGdCbER5NUJtQztFa0R4NUJuQztBeUN3b0xGO0F6Q3RvTEU7RUFDRTtFQUNBO0VBQ0EsV2xEdzVCaUM7RWtEdjVCakMsV2xEdzVCaUM7RWtEdjVCakMsaUJsRHk1QmlDO0VrRHg1QmpDLGdCbER3NUJpQztFa0R2NUJqQztFQUNBO0VBQ0Esc0IwQ3pJSTtFMUMwSUo7RUFFQTtFQUNBO0VBQ0E7RWpDNUpFLDZCaUM2SkY7QXlDdW9MSjtBMUVoeUxNO0VpQzBJSjtJakN6SU07RTBFbXlMTjtBQUNGO0F6Q3pvTEU7RUFDRTtBeUMyb0xKOztBekNsb0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXMENwS007RTFDcUtOO0F5Q3FvTEY7O0F2Q3AwTEE7RUFDRTtJQUFLO0V1Q3cwTEw7QUFDRjs7QXZDMTBMQTtFQUNFO0lBQUs7RXVDdzBMTDtBQUNGO0F2Q3QwTEE7RUFDRTtFQUNBLFdwRG9rQ3NCO0VvRG5rQ3RCLFlwRG1rQ3NCO0VvRGxrQ3RCO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7VUFBQTtBdUN1MExGOztBdkNwMExBO0VBQ0UsV3BENmpDd0I7RW9ENWpDeEIsWXBENGpDd0I7RW9EM2pDeEIsbUJwRDZqQ3dCO0EyRjB3SjFCOztBdkNoMExBO0VBQ0U7SUFDRTtFdUNtMExGO0V2Q2owTEE7SUFDRTtJQUNBO0V1Q20wTEY7QUFDRjs7QXZDMTBMQTtFQUNFO0lBQ0U7RXVDbTBMRjtFdkNqMExBO0lBQ0U7SUFDQTtFdUNtMExGO0FBQ0Y7QXZDaDBMQTtFQUNFO0VBQ0EsV3BEb2lDc0I7RW9EbmlDdEIsWXBEbWlDc0I7RW9EbGlDdEI7RUFDQTtFQUVBO0VBQ0E7RUFDQTtVQUFBO0F1Q2kwTEY7O0F2Qzl6TEE7RUFDRSxXcEQ2aEN3QjtFb0Q1aEN4QixZcEQ0aEN3QjtBMkZxeUoxQjs7QXZDN3pMRTtFQUNFOztJQUVFO1lBQUE7RXVDZzBMSjtBQUNGO0F0QzUzTEE7RUFBcUI7QXNDKzNMckI7O0F0QzkzTEE7RUFBcUI7QXNDazRMckI7O0F0Q2o0TEE7RUFBcUI7QXNDcTRMckI7O0F0Q3A0TEE7RUFBcUI7QXNDdzRMckI7O0F0Q3Y0TEE7RUFBcUI7QXNDMjRMckI7O0F0QzE0TEE7RUFBcUI7QXNDODRMckI7O0FyQ2g1TEU7RUFDRTtBcUNtNUxKOztBekZ6NExFOzs7RW9ETEk7QXFDbzVMTjs7QXJDMTVMRTtFQUNFO0FxQzY1TEo7O0F6Rm41TEU7OztFb0RMSTtBcUM4NUxOOztBckNwNkxFO0VBQ0U7QXFDdTZMSjs7QXpGNzVMRTs7O0VvRExJO0FxQ3c2TE47O0FyQzk2TEU7RUFDRTtBcUNpN0xKOztBekZ2NkxFOzs7RW9ETEk7QXFDazdMTjs7QXJDeDdMRTtFQUNFO0FxQzI3TEo7O0F6Rmo3TEU7OztFb0RMSTtBcUM0N0xOOztBckNsOExFO0VBQ0U7QXFDcThMSjs7QXpGMzdMRTs7O0VvRExJO0FxQ3M4TE47O0FyQzU4TEU7RUFDRTtBcUMrOExKOztBekZyOExFOzs7RW9ETEk7QXFDZzlMTjs7QXJDdDlMRTtFQUNFO0FxQ3k5TEo7O0F6Ri84TEU7OztFb0RMSTtBcUMwOUxOOztBcEN6OUxBO0VBQ0U7QW9DNDlMRjs7QXBDejlMQTtFQUNFO0FvQzQ5TEY7O0FuQ3YrTEE7RUFBa0I7QW1DMitMbEI7O0FuQzErTEE7RUFBa0I7QW1DOCtMbEI7O0FuQzcrTEE7RUFBa0I7QW1DaS9MbEI7O0FuQ2gvTEE7RUFBa0I7QW1Dby9MbEI7O0FuQ24vTEE7RUFBa0I7QW1DdS9MbEI7O0FuQ3IvTEE7RUFBbUI7QW1DeS9MbkI7O0FuQ3gvTEE7RUFBbUI7QW1DNC9MbkI7O0FuQzMvTEE7RUFBbUI7QW1DKy9MbkI7O0FuQzkvTEE7RUFBbUI7QW1Da2dNbkI7O0FuQ2pnTUE7RUFBbUI7QW1DcWdNbkI7O0FuQ2xnTUU7RUFDRTtBbUNxZ01KOztBbkN0Z01FO0VBQ0U7QW1DeWdNSjs7QW5DMWdNRTtFQUNFO0FtQzZnTUo7O0FuQzlnTUU7RUFDRTtBbUNpaE1KOztBbkNsaE1FO0VBQ0U7QW1DcWhNSjs7QW5DdGhNRTtFQUNFO0FtQ3loTUo7O0FuQzFoTUU7RUFDRTtBbUM2aE1KOztBbkM5aE1FO0VBQ0U7QW1DaWlNSjs7QW5DN2hNQTtFQUNFO0FtQ2dpTUY7O0FuQ3poTUE7RUFDRTtBbUM0aE1GOztBbkN6aE1BO0VBQ0U7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0VBQ0E7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0FtQzRoTUY7O0FuQ3poTUE7RUFDRTtBbUM0aE1GOztBbkN6aE1BO0VBQ0U7QW1DNGhNRjs7QW5DemhNQTtFQUNFO0FtQzRoTUY7O0F4Q3BtTUU7RUFDRTtFQUNBO0VBQ0E7QXdDdW1NSjs7QWxDaG1NTTtFQUF3QjtBa0NvbU05Qjs7QWxDcG1NTTtFQUF3QjtBa0N3bU05Qjs7QWxDeG1NTTtFQUF3QjtBa0M0bU05Qjs7QWxDNW1NTTtFQUF3QjtBa0Nnbk05Qjs7QWxDaG5NTTtFQUF3QjtBa0Nvbk05Qjs7QWxDcG5NTTtFQUF3QjtBa0N3bk05Qjs7QWxDeG5NTTtFQUF3QjtBa0M0bk05Qjs7QWxDNW5NTTtFQUF3QjtBa0Nnb005Qjs7QWxDaG9NTTtFQUF3QjtBa0Nvb005Qjs7QWhGbmxNSTtFOENqREU7SUFBd0I7RWtDeW9NNUI7O0VsQ3pvTUk7SUFBd0I7RWtDNm9NNUI7O0VsQzdvTUk7SUFBd0I7RWtDaXBNNUI7O0VsQ2pwTUk7SUFBd0I7RWtDcXBNNUI7O0VsQ3JwTUk7SUFBd0I7RWtDeXBNNUI7O0VsQ3pwTUk7SUFBd0I7RWtDNnBNNUI7O0VsQzdwTUk7SUFBd0I7RWtDaXFNNUI7O0VsQ2pxTUk7SUFBd0I7RWtDcXFNNUI7O0VsQ3JxTUk7SUFBd0I7RWtDeXFNNUI7QUFDRjtBaEZ6bk1JO0U4Q2pERTtJQUF3QjtFa0M4cU01Qjs7RWxDOXFNSTtJQUF3QjtFa0Nrck01Qjs7RWxDbHJNSTtJQUF3QjtFa0Nzck01Qjs7RWxDdHJNSTtJQUF3QjtFa0Mwck01Qjs7RWxDMXJNSTtJQUF3QjtFa0M4ck01Qjs7RWxDOXJNSTtJQUF3QjtFa0Nrc001Qjs7RWxDbHNNSTtJQUF3QjtFa0Nzc001Qjs7RWxDdHNNSTtJQUF3QjtFa0Mwc001Qjs7RWxDMXNNSTtJQUF3QjtFa0M4c001QjtBQUNGO0FoRjlwTUk7RThDakRFO0lBQXdCO0VrQ210TTVCOztFbENudE1JO0lBQXdCO0VrQ3V0TTVCOztFbEN2dE1JO0lBQXdCO0VrQzJ0TTVCOztFbEMzdE1JO0lBQXdCO0VrQyt0TTVCOztFbEMvdE1JO0lBQXdCO0VrQ211TTVCOztFbENudU1JO0lBQXdCO0VrQ3V1TTVCOztFbEN2dU1JO0lBQXdCO0VrQzJ1TTVCOztFbEMzdU1JO0lBQXdCO0VrQyt1TTVCOztFbEMvdU1JO0lBQXdCO0VrQ212TTVCO0FBQ0Y7QWhGbnNNSTtFOENqREU7SUFBd0I7RWtDd3ZNNUI7O0VsQ3h2TUk7SUFBd0I7RWtDNHZNNUI7O0VsQzV2TUk7SUFBd0I7RWtDZ3dNNUI7O0VsQ2h3TUk7SUFBd0I7RWtDb3dNNUI7O0VsQ3B3TUk7SUFBd0I7RWtDd3dNNUI7O0VsQ3h3TUk7SUFBd0I7RWtDNHdNNUI7O0VsQzV3TUk7SUFBd0I7RWtDZ3hNNUI7O0VsQ2h4TUk7SUFBd0I7RWtDb3hNNUI7O0VsQ3B4TUk7SUFBd0I7RWtDd3hNNUI7QUFDRjtBbEMvd01BO0VBRUk7SUFBcUI7RWtDaXhNdkI7O0VsQ2p4TUU7SUFBcUI7RWtDcXhNdkI7O0VsQ3J4TUU7SUFBcUI7RWtDeXhNdkI7O0VsQ3p4TUU7SUFBcUI7RWtDNnhNdkI7O0VsQzd4TUU7SUFBcUI7RWtDaXlNdkI7O0VsQ2p5TUU7SUFBcUI7RWtDcXlNdkI7O0VsQ3J5TUU7SUFBcUI7RWtDeXlNdkI7O0VsQ3p5TUU7SUFBcUI7RWtDNnlNdkI7O0VsQzd5TUU7SUFBcUI7RWtDaXpNdkI7QUFDRjtBakN2ME1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaUN5ME1GO0FqQ3YwTUU7RUFDRTtFQUNBO0FpQ3kwTUo7QWpDdDBNRTs7Ozs7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaUN3ME1KOztBakMvek1JO0VBQ0U7QWlDazBNTjs7QWpDbjBNSTtFQUNFO0FpQ3MwTU47O0FqQ3YwTUk7RUFDRTtBaUMwME1OOztBakMzME1JO0VBQ0U7QWlDODBNTjs7QWhDdjJNSTtFQUFnQztBZ0MyMk1wQzs7QWhDMTJNSTtFQUFnQztBZ0M4Mk1wQzs7QWhDNzJNSTtFQUFnQztBZ0NpM01wQzs7QWhDaDNNSTtFQUFnQztBZ0NvM01wQzs7QWhDbDNNSTtFQUE4QjtBZ0NzM01sQzs7QWhDcjNNSTtFQUE4QjtBZ0N5M01sQzs7QWhDeDNNSTtFQUE4QjtBZ0M0M01sQzs7QWhDMzNNSTtFQUE4QjtBZ0MrM01sQzs7QWhDOTNNSTtFQUE4QjtBZ0NrNE1sQzs7QWhDajRNSTtFQUE4QjtBZ0NxNE1sQzs7QWhDcDRNSTtFQUE4QjtBZ0N3NE1sQzs7QWhDdjRNSTtFQUE4QjtBZ0MyNE1sQzs7QWhDejRNSTtFQUFvQztBZ0M2NE14Qzs7QWhDNTRNSTtFQUFvQztBZ0NnNU14Qzs7QWhDLzRNSTtFQUFvQztBZ0NtNU14Qzs7QWhDbDVNSTtFQUFvQztBZ0NzNU14Qzs7QWhDcjVNSTtFQUFvQztBZ0N5NU14Qzs7QWhDdjVNSTtFQUFpQztBZ0MyNU1yQzs7QWhDMTVNSTtFQUFpQztBZ0M4NU1yQzs7QWhDNzVNSTtFQUFpQztBZ0NpNk1yQzs7QWhDaDZNSTtFQUFpQztBZ0NvNk1yQzs7QWhDbjZNSTtFQUFpQztBZ0N1Nk1yQzs7QWhDcjZNSTtFQUFrQztBZ0N5Nk10Qzs7QWhDeDZNSTtFQUFrQztBZ0M0Nk10Qzs7QWhDMzZNSTtFQUFrQztBZ0MrNk10Qzs7QWhDOTZNSTtFQUFrQztBZ0NrN010Qzs7QWhDajdNSTtFQUFrQztBZ0NxN010Qzs7QWhDcDdNSTtFQUFrQztBZ0N3N010Qzs7QWhDdDdNSTtFQUFnQztBZ0MwN01wQzs7QWhDejdNSTtFQUFnQztBZ0M2N01wQzs7QWhDNTdNSTtFQUFnQztBZ0NnOE1wQzs7QWhDLzdNSTtFQUFnQztBZ0NtOE1wQzs7QWhDbDhNSTtFQUFnQztBZ0NzOE1wQzs7QWhDcjhNSTtFQUFnQztBZ0N5OE1wQzs7QWhGNzdNSTtFZ0RsREE7SUFBZ0M7RWdDby9NbEM7O0VoQ24vTUU7SUFBZ0M7RWdDdS9NbEM7O0VoQ3QvTUU7SUFBZ0M7RWdDMC9NbEM7O0VoQ3ovTUU7SUFBZ0M7RWdDNi9NbEM7O0VoQzMvTUU7SUFBOEI7RWdDKy9NaEM7O0VoQzkvTUU7SUFBOEI7RWdDa2dOaEM7O0VoQ2pnTkU7SUFBOEI7RWdDcWdOaEM7O0VoQ3BnTkU7SUFBOEI7RWdDd2dOaEM7O0VoQ3ZnTkU7SUFBOEI7RWdDMmdOaEM7O0VoQzFnTkU7SUFBOEI7RWdDOGdOaEM7O0VoQzdnTkU7SUFBOEI7RWdDaWhOaEM7O0VoQ2hoTkU7SUFBOEI7RWdDb2hOaEM7O0VoQ2xoTkU7SUFBb0M7RWdDc2hOdEM7O0VoQ3JoTkU7SUFBb0M7RWdDeWhOdEM7O0VoQ3hoTkU7SUFBb0M7RWdDNGhOdEM7O0VoQzNoTkU7SUFBb0M7RWdDK2hOdEM7O0VoQzloTkU7SUFBb0M7RWdDa2lOdEM7O0VoQ2hpTkU7SUFBaUM7RWdDb2lObkM7O0VoQ25pTkU7SUFBaUM7RWdDdWlObkM7O0VoQ3RpTkU7SUFBaUM7RWdDMGlObkM7O0VoQ3ppTkU7SUFBaUM7RWdDNmlObkM7O0VoQzVpTkU7SUFBaUM7RWdDZ2pObkM7O0VoQzlpTkU7SUFBa0M7RWdDa2pOcEM7O0VoQ2pqTkU7SUFBa0M7RWdDcWpOcEM7O0VoQ3BqTkU7SUFBa0M7RWdDd2pOcEM7O0VoQ3ZqTkU7SUFBa0M7RWdDMmpOcEM7O0VoQzFqTkU7SUFBa0M7RWdDOGpOcEM7O0VoQzdqTkU7SUFBa0M7RWdDaWtOcEM7O0VoQy9qTkU7SUFBZ0M7RWdDbWtObEM7O0VoQ2xrTkU7SUFBZ0M7RWdDc2tObEM7O0VoQ3JrTkU7SUFBZ0M7RWdDeWtObEM7O0VoQ3hrTkU7SUFBZ0M7RWdDNGtObEM7O0VoQzNrTkU7SUFBZ0M7RWdDK2tObEM7O0VoQzlrTkU7SUFBZ0M7RWdDa2xObEM7QUFDRjtBaEZ2a05JO0VnRGxEQTtJQUFnQztFZ0M2bk5sQzs7RWhDNW5ORTtJQUFnQztFZ0Nnb05sQzs7RWhDL25ORTtJQUFnQztFZ0Ntb05sQzs7RWhDbG9ORTtJQUFnQztFZ0Nzb05sQzs7RWhDcG9ORTtJQUE4QjtFZ0N3b05oQzs7RWhDdm9ORTtJQUE4QjtFZ0Myb05oQzs7RWhDMW9ORTtJQUE4QjtFZ0M4b05oQzs7RWhDN29ORTtJQUE4QjtFZ0NpcE5oQzs7RWhDaHBORTtJQUE4QjtFZ0NvcE5oQzs7RWhDbnBORTtJQUE4QjtFZ0N1cE5oQzs7RWhDdHBORTtJQUE4QjtFZ0MwcE5oQzs7RWhDenBORTtJQUE4QjtFZ0M2cE5oQzs7RWhDM3BORTtJQUFvQztFZ0MrcE50Qzs7RWhDOXBORTtJQUFvQztFZ0NrcU50Qzs7RWhDanFORTtJQUFvQztFZ0NxcU50Qzs7RWhDcHFORTtJQUFvQztFZ0N3cU50Qzs7RWhDdnFORTtJQUFvQztFZ0MycU50Qzs7RWhDenFORTtJQUFpQztFZ0M2cU5uQzs7RWhDNXFORTtJQUFpQztFZ0Nnck5uQzs7RWhDL3FORTtJQUFpQztFZ0Ntck5uQzs7RWhDbHJORTtJQUFpQztFZ0Nzck5uQzs7RWhDcnJORTtJQUFpQztFZ0N5ck5uQzs7RWhDdnJORTtJQUFrQztFZ0Myck5wQzs7RWhDMXJORTtJQUFrQztFZ0M4ck5wQzs7RWhDN3JORTtJQUFrQztFZ0Npc05wQzs7RWhDaHNORTtJQUFrQztFZ0Nvc05wQzs7RWhDbnNORTtJQUFrQztFZ0N1c05wQzs7RWhDdHNORTtJQUFrQztFZ0Mwc05wQzs7RWhDeHNORTtJQUFnQztFZ0M0c05sQzs7RWhDM3NORTtJQUFnQztFZ0Mrc05sQzs7RWhDOXNORTtJQUFnQztFZ0NrdE5sQzs7RWhDanRORTtJQUFnQztFZ0NxdE5sQzs7RWhDcHRORTtJQUFnQztFZ0N3dE5sQzs7RWhDdnRORTtJQUFnQztFZ0MydE5sQztBQUNGO0FoRmh0Tkk7RWdEbERBO0lBQWdDO0VnQ3N3TmxDOztFaENyd05FO0lBQWdDO0VnQ3l3TmxDOztFaEN4d05FO0lBQWdDO0VnQzR3TmxDOztFaEMzd05FO0lBQWdDO0VnQyt3TmxDOztFaEM3d05FO0lBQThCO0VnQ2l4TmhDOztFaENoeE5FO0lBQThCO0VnQ294TmhDOztFaENueE5FO0lBQThCO0VnQ3V4TmhDOztFaEN0eE5FO0lBQThCO0VnQzB4TmhDOztFaEN6eE5FO0lBQThCO0VnQzZ4TmhDOztFaEM1eE5FO0lBQThCO0VnQ2d5TmhDOztFaEMveE5FO0lBQThCO0VnQ215TmhDOztFaENseU5FO0lBQThCO0VnQ3N5TmhDOztFaENweU5FO0lBQW9DO0VnQ3d5TnRDOztFaEN2eU5FO0lBQW9DO0VnQzJ5TnRDOztFaEMxeU5FO0lBQW9DO0VnQzh5TnRDOztFaEM3eU5FO0lBQW9DO0VnQ2l6TnRDOztFaENoek5FO0lBQW9DO0VnQ296TnRDOztFaENsek5FO0lBQWlDO0VnQ3N6Tm5DOztFaENyek5FO0lBQWlDO0VnQ3l6Tm5DOztFaEN4ek5FO0lBQWlDO0VnQzR6Tm5DOztFaEMzek5FO0lBQWlDO0VnQyt6Tm5DOztFaEM5ek5FO0lBQWlDO0VnQ2swTm5DOztFaENoME5FO0lBQWtDO0VnQ28wTnBDOztFaENuME5FO0lBQWtDO0VnQ3UwTnBDOztFaEN0ME5FO0lBQWtDO0VnQzAwTnBDOztFaEN6ME5FO0lBQWtDO0VnQzYwTnBDOztFaEM1ME5FO0lBQWtDO0VnQ2cxTnBDOztFaEMvME5FO0lBQWtDO0VnQ20xTnBDOztFaENqMU5FO0lBQWdDO0VnQ3ExTmxDOztFaENwMU5FO0lBQWdDO0VnQ3cxTmxDOztFaEN2MU5FO0lBQWdDO0VnQzIxTmxDOztFaEMxMU5FO0lBQWdDO0VnQzgxTmxDOztFaEM3MU5FO0lBQWdDO0VnQ2kyTmxDOztFaENoMk5FO0lBQWdDO0VnQ28yTmxDO0FBQ0Y7QWhGejFOSTtFZ0RsREE7SUFBZ0M7RWdDKzRObEM7O0VoQzk0TkU7SUFBZ0M7RWdDazVObEM7O0VoQ2o1TkU7SUFBZ0M7RWdDcTVObEM7O0VoQ3A1TkU7SUFBZ0M7RWdDdzVObEM7O0VoQ3Q1TkU7SUFBOEI7RWdDMDVOaEM7O0VoQ3o1TkU7SUFBOEI7RWdDNjVOaEM7O0VoQzU1TkU7SUFBOEI7RWdDZzZOaEM7O0VoQy81TkU7SUFBOEI7RWdDbTZOaEM7O0VoQ2w2TkU7SUFBOEI7RWdDczZOaEM7O0VoQ3I2TkU7SUFBOEI7RWdDeTZOaEM7O0VoQ3g2TkU7SUFBOEI7RWdDNDZOaEM7O0VoQzM2TkU7SUFBOEI7RWdDKzZOaEM7O0VoQzc2TkU7SUFBb0M7RWdDaTdOdEM7O0VoQ2g3TkU7SUFBb0M7RWdDbzdOdEM7O0VoQ243TkU7SUFBb0M7RWdDdTdOdEM7O0VoQ3Q3TkU7SUFBb0M7RWdDMDdOdEM7O0VoQ3o3TkU7SUFBb0M7RWdDNjdOdEM7O0VoQzM3TkU7SUFBaUM7RWdDKzdObkM7O0VoQzk3TkU7SUFBaUM7RWdDazhObkM7O0VoQ2o4TkU7SUFBaUM7RWdDcThObkM7O0VoQ3A4TkU7SUFBaUM7RWdDdzhObkM7O0VoQ3Y4TkU7SUFBaUM7RWdDMjhObkM7O0VoQ3o4TkU7SUFBa0M7RWdDNjhOcEM7O0VoQzU4TkU7SUFBa0M7RWdDZzlOcEM7O0VoQy84TkU7SUFBa0M7RWdDbTlOcEM7O0VoQ2w5TkU7SUFBa0M7RWdDczlOcEM7O0VoQ3I5TkU7SUFBa0M7RWdDeTlOcEM7O0VoQ3g5TkU7SUFBa0M7RWdDNDlOcEM7O0VoQzE5TkU7SUFBZ0M7RWdDODlObEM7O0VoQzc5TkU7SUFBZ0M7RWdDaStObEM7O0VoQ2grTkU7SUFBZ0M7RWdDbytObEM7O0VoQ24rTkU7SUFBZ0M7RWdDdStObEM7O0VoQ3QrTkU7SUFBZ0M7RWdDMCtObEM7O0VoQ3orTkU7SUFBZ0M7RWdDNitObEM7QUFDRjtBL0J4aE9JO0VBQXdCO0ErQjJoTzVCOztBL0IxaE9JO0VBQXdCO0ErQjhoTzVCOztBL0I3aE9JO0VBQXdCO0ErQmlpTzVCOztBaEY3K05JO0VpRHREQTtJQUF3QjtFK0J3aU8xQjs7RS9CdmlPRTtJQUF3QjtFK0IyaU8xQjs7RS9CMWlPRTtJQUF3QjtFK0I4aU8xQjtBQUNGO0FoRjMvTkk7RWlEdERBO0lBQXdCO0UrQnFqTzFCOztFL0Jwak9FO0lBQXdCO0UrQndqTzFCOztFL0J2ak9FO0lBQXdCO0UrQjJqTzFCO0FBQ0Y7QWhGeGdPSTtFaUR0REE7SUFBd0I7RStCa2tPMUI7O0UvQmprT0U7SUFBd0I7RStCcWtPMUI7O0UvQnBrT0U7SUFBd0I7RStCd2tPMUI7QUFDRjtBaEZyaE9JO0VpRHREQTtJQUF3QjtFK0Ira08xQjs7RS9COWtPRTtJQUF3QjtFK0JrbE8xQjs7RS9CamxPRTtJQUF3QjtFK0JxbE8xQjtBQUNGO0E5QjNsT0U7RUFBeUI7S0FBQTtVQUFBO0E4QjhsTzNCOztBOUI5bE9FO0VBQXlCO0tBQUE7TUFBQTtVQUFBO0E4QmttTzNCOztBOUJsbU9FO0VBQXlCO0tBQUE7TUFBQTtVQUFBO0E4QnNtTzNCOztBN0J0bU9FO0VBQXNCO0E2QjBtT3hCOztBN0IxbU9FO0VBQXNCO0E2QjhtT3hCOztBNUI3bU9FO0VBQXlCO0E0QmluTzNCOztBNUJqbk9FO0VBQXlCO0E0QnFuTzNCOztBNUJybk9FO0VBQXlCO0E0QnluTzNCOztBNUJ6bk9FO0VBQXlCO0E0QjZuTzNCOztBNUI3bk9FO0VBQXlCO0E0QmlvTzNCOztBNUI1bk9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhL0RncUJrQztBMkYrOU1wQzs7QTVCNW5PQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYS9Ed3BCa0M7QTJGdStNcEM7O0E1QjNuT0U7RUFERjtJQUVJO0lBQ0E7SUFDQSxhL0RncEJnQztFMkYrK01sQztBQUNGOztBM0J6cE9BO0VDRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EwQjJwT0Y7O0ExQmpwT0U7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTBCbXBPSjs7QXpCaHJPQTtFQUFhO0F5Qm9yT2I7O0F6Qm5yT0E7RUFBVTtBeUJ1ck9WOztBekJ0ck9BO0VBQWE7QXlCMHJPYjs7QXpCenJPQTtFQUFlO0F5QjZyT2Y7O0F4QjVyT0k7RUFBdUI7QXdCZ3NPM0I7O0F4QmhzT0k7RUFBdUI7QXdCb3NPM0I7O0F4QnBzT0k7RUFBdUI7QXdCd3NPM0I7O0F4QnhzT0k7RUFBdUI7QXdCNHNPM0I7O0F4QjVzT0k7RUFBdUI7QXdCZ3RPM0I7O0F4Qmh0T0k7RUFBdUI7QXdCb3RPM0I7O0F4QnB0T0k7RUFBdUI7QXdCd3RPM0I7O0F4Qnh0T0k7RUFBdUI7QXdCNHRPM0I7O0F4QjV0T0k7RUFBdUI7QXdCZ3VPM0I7O0F4Qmh1T0k7RUFBdUI7QXdCb3VPM0I7O0F4Qmh1T0E7RUFBVTtBd0JvdU9WOztBeEJudU9BO0VBQVU7QXdCdXVPVjs7QXhCbnVPQTtFQUFjO0F3QnV1T2Q7O0F4QnR1T0E7RUFBYztBd0IwdU9kOztBeEJ4dU9BO0VBQVU7QXdCNHVPVjs7QXhCM3VPQTtFQUFVO0F3Qit1T1Y7O0F2Qnh2T1E7RUFBZ0M7QXVCNHZPeEM7O0F2QjN2T1E7O0VBRUU7QXVCOHZPVjs7QXZCNXZPUTs7RUFFRTtBdUIrdk9WOztBdkI3dk9ROztFQUVFO0F1Qmd3T1Y7O0F2Qjl2T1E7O0VBRUU7QXVCaXdPVjs7QXZCaHhPUTtFQUFnQztBdUJveE94Qzs7QXZCbnhPUTs7RUFFRTtBdUJzeE9WOztBdkJweE9ROztFQUVFO0F1QnV4T1Y7O0F2QnJ4T1E7O0VBRUU7QXVCd3hPVjs7QXZCdHhPUTs7RUFFRTtBdUJ5eE9WOztBdkJ4eU9RO0VBQWdDO0F1QjR5T3hDOztBdkIzeU9ROztFQUVFO0F1Qjh5T1Y7O0F2QjV5T1E7O0VBRUU7QXVCK3lPVjs7QXZCN3lPUTs7RUFFRTtBdUJnek9WOztBdkI5eU9ROztFQUVFO0F1Qml6T1Y7O0F2QmgwT1E7RUFBZ0M7QXVCbzBPeEM7O0F2Qm4wT1E7O0VBRUU7QXVCczBPVjs7QXZCcDBPUTs7RUFFRTtBdUJ1ME9WOztBdkJyME9ROztFQUVFO0F1QncwT1Y7O0F2QnQwT1E7O0VBRUU7QXVCeTBPVjs7QXZCeDFPUTtFQUFnQztBdUI0MU94Qzs7QXZCMzFPUTs7RUFFRTtBdUI4MU9WOztBdkI1MU9ROztFQUVFO0F1QisxT1Y7O0F2QjcxT1E7O0VBRUU7QXVCZzJPVjs7QXZCOTFPUTs7RUFFRTtBdUJpMk9WOztBdkJoM09RO0VBQWdDO0F1Qm8zT3hDOztBdkJuM09ROztFQUVFO0F1QnMzT1Y7O0F2QnAzT1E7O0VBRUU7QXVCdTNPVjs7QXZCcjNPUTs7RUFFRTtBdUJ3M09WOztBdkJ0M09ROztFQUVFO0F1QnkzT1Y7O0F2Qng0T1E7RUFBZ0M7QXVCNDRPeEM7O0F2QjM0T1E7O0VBRUU7QXVCODRPVjs7QXZCNTRPUTs7RUFFRTtBdUIrNE9WOztBdkI3NE9ROztFQUVFO0F1Qmc1T1Y7O0F2Qjk0T1E7O0VBRUU7QXVCaTVPVjs7QXZCaDZPUTtFQUFnQztBdUJvNk94Qzs7QXZCbjZPUTs7RUFFRTtBdUJzNk9WOztBdkJwNk9ROztFQUVFO0F1QnU2T1Y7O0F2QnI2T1E7O0VBRUU7QXVCdzZPVjs7QXZCdDZPUTs7RUFFRTtBdUJ5Nk9WOztBdkJ4N09RO0VBQWdDO0F1QjQ3T3hDOztBdkIzN09ROztFQUVFO0F1Qjg3T1Y7O0F2QjU3T1E7O0VBRUU7QXVCKzdPVjs7QXZCNzdPUTs7RUFFRTtBdUJnOE9WOztBdkI5N09ROztFQUVFO0F1Qmk4T1Y7O0F2Qmg5T1E7RUFBZ0M7QXVCbzlPeEM7O0F2Qm45T1E7O0VBRUU7QXVCczlPVjs7QXZCcDlPUTs7RUFFRTtBdUJ1OU9WOztBdkJyOU9ROztFQUVFO0F1Qnc5T1Y7O0F2QnQ5T1E7O0VBRUU7QXVCeTlPVjs7QXZCeCtPUTtFQUFnQztBdUI0K094Qzs7QXZCMytPUTs7RUFFRTtBdUI4K09WOztBdkI1K09ROztFQUVFO0F1QisrT1Y7O0F2QjcrT1E7O0VBRUU7QXVCZy9PVjs7QXZCOStPUTs7RUFFRTtBdUJpL09WOztBdkJoZ1BRO0VBQWdDO0F1Qm9nUHhDOztBdkJuZ1BROztFQUVFO0F1QnNnUFY7O0F2QnBnUFE7O0VBRUU7QXVCdWdQVjs7QXZCcmdQUTs7RUFFRTtBdUJ3Z1BWOztBdkJ0Z1BROztFQUVFO0F1QnlnUFY7O0F2QmpnUFE7RUFBd0I7QXVCcWdQaEM7O0F2QnBnUFE7O0VBRUU7QXVCdWdQVjs7QXZCcmdQUTs7RUFFRTtBdUJ3Z1BWOztBdkJ0Z1BROztFQUVFO0F1QnlnUFY7O0F2QnZnUFE7O0VBRUU7QXVCMGdQVjs7QXZCemhQUTtFQUF3QjtBdUI2aFBoQzs7QXZCNWhQUTs7RUFFRTtBdUIraFBWOztBdkI3aFBROztFQUVFO0F1QmdpUFY7O0F2QjloUFE7O0VBRUU7QXVCaWlQVjs7QXZCL2hQUTs7RUFFRTtBdUJraVBWOztBdkJqalBRO0VBQXdCO0F1QnFqUGhDOztBdkJwalBROztFQUVFO0F1QnVqUFY7O0F2QnJqUFE7O0VBRUU7QXVCd2pQVjs7QXZCdGpQUTs7RUFFRTtBdUJ5alBWOztBdkJ2alBROztFQUVFO0F1QjBqUFY7O0F2QnprUFE7RUFBd0I7QXVCNmtQaEM7O0F2QjVrUFE7O0VBRUU7QXVCK2tQVjs7QXZCN2tQUTs7RUFFRTtBdUJnbFBWOztBdkI5a1BROztFQUVFO0F1QmlsUFY7O0F2Qi9rUFE7O0VBRUU7QXVCa2xQVjs7QXZCam1QUTtFQUF3QjtBdUJxbVBoQzs7QXZCcG1QUTs7RUFFRTtBdUJ1bVBWOztBdkJybVBROztFQUVFO0F1QndtUFY7O0F2QnRtUFE7O0VBRUU7QXVCeW1QVjs7QXZCdm1QUTs7RUFFRTtBdUIwbVBWOztBdkJwbVBJO0VBQW1CO0F1QndtUHZCOztBdkJ2bVBJOztFQUVFO0F1QjBtUE47O0F2QnhtUEk7O0VBRUU7QXVCMm1QTjs7QXZCem1QSTs7RUFFRTtBdUI0bVBOOztBdkIxbVBJOztFQUVFO0F1QjZtUE47O0FoRnRuUEk7RXlEbERJO0lBQWdDO0V1QjZxUHRDOztFdkI1cVBNOztJQUVFO0V1QitxUFI7O0V2QjdxUE07O0lBRUU7RXVCZ3JQUjs7RXZCOXFQTTs7SUFFRTtFdUJpclBSOztFdkIvcVBNOztJQUVFO0V1QmtyUFI7O0V2QmpzUE07SUFBZ0M7RXVCcXNQdEM7O0V2QnBzUE07O0lBRUU7RXVCdXNQUjs7RXZCcnNQTTs7SUFFRTtFdUJ3c1BSOztFdkJ0c1BNOztJQUVFO0V1QnlzUFI7O0V2QnZzUE07O0lBRUU7RXVCMHNQUjs7RXZCenRQTTtJQUFnQztFdUI2dFB0Qzs7RXZCNXRQTTs7SUFFRTtFdUIrdFBSOztFdkI3dFBNOztJQUVFO0V1Qmd1UFI7O0V2Qjl0UE07O0lBRUU7RXVCaXVQUjs7RXZCL3RQTTs7SUFFRTtFdUJrdVBSOztFdkJqdlBNO0lBQWdDO0V1QnF2UHRDOztFdkJwdlBNOztJQUVFO0V1QnV2UFI7O0V2QnJ2UE07O0lBRUU7RXVCd3ZQUjs7RXZCdHZQTTs7SUFFRTtFdUJ5dlBSOztFdkJ2dlBNOztJQUVFO0V1QjB2UFI7O0V2Qnp3UE07SUFBZ0M7RXVCNndQdEM7O0V2QjV3UE07O0lBRUU7RXVCK3dQUjs7RXZCN3dQTTs7SUFFRTtFdUJneFBSOztFdkI5d1BNOztJQUVFO0V1Qml4UFI7O0V2Qi93UE07O0lBRUU7RXVCa3hQUjs7RXZCanlQTTtJQUFnQztFdUJxeVB0Qzs7RXZCcHlQTTs7SUFFRTtFdUJ1eVBSOztFdkJyeVBNOztJQUVFO0V1Qnd5UFI7O0V2QnR5UE07O0lBRUU7RXVCeXlQUjs7RXZCdnlQTTs7SUFFRTtFdUIweVBSOztFdkJ6elBNO0lBQWdDO0V1QjZ6UHRDOztFdkI1elBNOztJQUVFO0V1Qit6UFI7O0V2Qjd6UE07O0lBRUU7RXVCZzBQUjs7RXZCOXpQTTs7SUFFRTtFdUJpMFBSOztFdkIvelBNOztJQUVFO0V1QmswUFI7O0V2QmoxUE07SUFBZ0M7RXVCcTFQdEM7O0V2QnAxUE07O0lBRUU7RXVCdTFQUjs7RXZCcjFQTTs7SUFFRTtFdUJ3MVBSOztFdkJ0MVBNOztJQUVFO0V1QnkxUFI7O0V2QnYxUE07O0lBRUU7RXVCMDFQUjs7RXZCejJQTTtJQUFnQztFdUI2MlB0Qzs7RXZCNTJQTTs7SUFFRTtFdUIrMlBSOztFdkI3MlBNOztJQUVFO0V1QmczUFI7O0V2QjkyUE07O0lBRUU7RXVCaTNQUjs7RXZCLzJQTTs7SUFFRTtFdUJrM1BSOztFdkJqNFBNO0lBQWdDO0V1QnE0UHRDOztFdkJwNFBNOztJQUVFO0V1QnU0UFI7O0V2QnI0UE07O0lBRUU7RXVCdzRQUjs7RXZCdDRQTTs7SUFFRTtFdUJ5NFBSOztFdkJ2NFBNOztJQUVFO0V1QjA0UFI7O0V2Qno1UE07SUFBZ0M7RXVCNjVQdEM7O0V2QjU1UE07O0lBRUU7RXVCKzVQUjs7RXZCNzVQTTs7SUFFRTtFdUJnNlBSOztFdkI5NVBNOztJQUVFO0V1Qmk2UFI7O0V2Qi81UE07O0lBRUU7RXVCazZQUjs7RXZCajdQTTtJQUFnQztFdUJxN1B0Qzs7RXZCcDdQTTs7SUFFRTtFdUJ1N1BSOztFdkJyN1BNOztJQUVFO0V1Qnc3UFI7O0V2QnQ3UE07O0lBRUU7RXVCeTdQUjs7RXZCdjdQTTs7SUFFRTtFdUIwN1BSOztFdkJsN1BNO0lBQXdCO0V1QnM3UDlCOztFdkJyN1BNOztJQUVFO0V1Qnc3UFI7O0V2QnQ3UE07O0lBRUU7RXVCeTdQUjs7RXZCdjdQTTs7SUFFRTtFdUIwN1BSOztFdkJ4N1BNOztJQUVFO0V1QjI3UFI7O0V2QjE4UE07SUFBd0I7RXVCODhQOUI7O0V2Qjc4UE07O0lBRUU7RXVCZzlQUjs7RXZCOThQTTs7SUFFRTtFdUJpOVBSOztFdkIvOFBNOztJQUVFO0V1Qms5UFI7O0V2Qmg5UE07O0lBRUU7RXVCbTlQUjs7RXZCbCtQTTtJQUF3QjtFdUJzK1A5Qjs7RXZCcitQTTs7SUFFRTtFdUJ3K1BSOztFdkJ0K1BNOztJQUVFO0V1QnkrUFI7O0V2QnYrUE07O0lBRUU7RXVCMCtQUjs7RXZCeCtQTTs7SUFFRTtFdUIyK1BSOztFdkIxL1BNO0lBQXdCO0V1QjgvUDlCOztFdkI3L1BNOztJQUVFO0V1QmdnUVI7O0V2QjkvUE07O0lBRUU7RXVCaWdRUjs7RXZCLy9QTTs7SUFFRTtFdUJrZ1FSOztFdkJoZ1FNOztJQUVFO0V1Qm1nUVI7O0V2QmxoUU07SUFBd0I7RXVCc2hROUI7O0V2QnJoUU07O0lBRUU7RXVCd2hRUjs7RXZCdGhRTTs7SUFFRTtFdUJ5aFFSOztFdkJ2aFFNOztJQUVFO0V1QjBoUVI7O0V2QnhoUU07O0lBRUU7RXVCMmhRUjs7RXZCcmhRRTtJQUFtQjtFdUJ5aFFyQjs7RXZCeGhRRTs7SUFFRTtFdUIyaFFKOztFdkJ6aFFFOztJQUVFO0V1QjRoUUo7O0V2QjFoUUU7O0lBRUU7RXVCNmhRSjs7RXZCM2hRRTs7SUFFRTtFdUI4aFFKO0FBQ0Y7QWhGeGlRSTtFeURsREk7SUFBZ0M7RXVCOGxRdEM7O0V2QjdsUU07O0lBRUU7RXVCZ21RUjs7RXZCOWxRTTs7SUFFRTtFdUJpbVFSOztFdkIvbFFNOztJQUVFO0V1QmttUVI7O0V2QmhtUU07O0lBRUU7RXVCbW1RUjs7RXZCbG5RTTtJQUFnQztFdUJzblF0Qzs7RXZCcm5RTTs7SUFFRTtFdUJ3blFSOztFdkJ0blFNOztJQUVFO0V1QnluUVI7O0V2QnZuUU07O0lBRUU7RXVCMG5RUjs7RXZCeG5RTTs7SUFFRTtFdUIyblFSOztFdkIxb1FNO0lBQWdDO0V1QjhvUXRDOztFdkI3b1FNOztJQUVFO0V1QmdwUVI7O0V2QjlvUU07O0lBRUU7RXVCaXBRUjs7RXZCL29RTTs7SUFFRTtFdUJrcFFSOztFdkJocFFNOztJQUVFO0V1Qm1wUVI7O0V2QmxxUU07SUFBZ0M7RXVCc3FRdEM7O0V2QnJxUU07O0lBRUU7RXVCd3FRUjs7RXZCdHFRTTs7SUFFRTtFdUJ5cVFSOztFdkJ2cVFNOztJQUVFO0V1QjBxUVI7O0V2QnhxUU07O0lBRUU7RXVCMnFRUjs7RXZCMXJRTTtJQUFnQztFdUI4clF0Qzs7RXZCN3JRTTs7SUFFRTtFdUJnc1FSOztFdkI5clFNOztJQUVFO0V1QmlzUVI7O0V2Qi9yUU07O0lBRUU7RXVCa3NRUjs7RXZCaHNRTTs7SUFFRTtFdUJtc1FSOztFdkJsdFFNO0lBQWdDO0V1QnN0UXRDOztFdkJydFFNOztJQUVFO0V1Qnd0UVI7O0V2QnR0UU07O0lBRUU7RXVCeXRRUjs7RXZCdnRRTTs7SUFFRTtFdUIwdFFSOztFdkJ4dFFNOztJQUVFO0V1QjJ0UVI7O0V2QjF1UU07SUFBZ0M7RXVCOHVRdEM7O0V2Qjd1UU07O0lBRUU7RXVCZ3ZRUjs7RXZCOXVRTTs7SUFFRTtFdUJpdlFSOztFdkIvdVFNOztJQUVFO0V1Qmt2UVI7O0V2Qmh2UU07O0lBRUU7RXVCbXZRUjs7RXZCbHdRTTtJQUFnQztFdUJzd1F0Qzs7RXZCcndRTTs7SUFFRTtFdUJ3d1FSOztFdkJ0d1FNOztJQUVFO0V1Qnl3UVI7O0V2QnZ3UU07O0lBRUU7RXVCMHdRUjs7RXZCeHdRTTs7SUFFRTtFdUIyd1FSOztFdkIxeFFNO0lBQWdDO0V1Qjh4UXRDOztFdkI3eFFNOztJQUVFO0V1Qmd5UVI7O0V2Qjl4UU07O0lBRUU7RXVCaXlRUjs7RXZCL3hRTTs7SUFFRTtFdUJreVFSOztFdkJoeVFNOztJQUVFO0V1Qm15UVI7O0V2Qmx6UU07SUFBZ0M7RXVCc3pRdEM7O0V2QnJ6UU07O0lBRUU7RXVCd3pRUjs7RXZCdHpRTTs7SUFFRTtFdUJ5elFSOztFdkJ2elFNOztJQUVFO0V1QjB6UVI7O0V2Qnh6UU07O0lBRUU7RXVCMnpRUjs7RXZCMTBRTTtJQUFnQztFdUI4MFF0Qzs7RXZCNzBRTTs7SUFFRTtFdUJnMVFSOztFdkI5MFFNOztJQUVFO0V1QmkxUVI7O0V2Qi8wUU07O0lBRUU7RXVCazFRUjs7RXZCaDFRTTs7SUFFRTtFdUJtMVFSOztFdkJsMlFNO0lBQWdDO0V1QnMyUXRDOztFdkJyMlFNOztJQUVFO0V1QncyUVI7O0V2QnQyUU07O0lBRUU7RXVCeTJRUjs7RXZCdjJRTTs7SUFFRTtFdUIwMlFSOztFdkJ4MlFNOztJQUVFO0V1QjIyUVI7O0V2Qm4yUU07SUFBd0I7RXVCdTJROUI7O0V2QnQyUU07O0lBRUU7RXVCeTJRUjs7RXZCdjJRTTs7SUFFRTtFdUIwMlFSOztFdkJ4MlFNOztJQUVFO0V1QjIyUVI7O0V2QnoyUU07O0lBRUU7RXVCNDJRUjs7RXZCMzNRTTtJQUF3QjtFdUIrM1E5Qjs7RXZCOTNRTTs7SUFFRTtFdUJpNFFSOztFdkIvM1FNOztJQUVFO0V1Qms0UVI7O0V2Qmg0UU07O0lBRUU7RXVCbTRRUjs7RXZCajRRTTs7SUFFRTtFdUJvNFFSOztFdkJuNVFNO0lBQXdCO0V1QnU1UTlCOztFdkJ0NVFNOztJQUVFO0V1Qnk1UVI7O0V2QnY1UU07O0lBRUU7RXVCMDVRUjs7RXZCeDVRTTs7SUFFRTtFdUIyNVFSOztFdkJ6NVFNOztJQUVFO0V1QjQ1UVI7O0V2QjM2UU07SUFBd0I7RXVCKzZROUI7O0V2Qjk2UU07O0lBRUU7RXVCaTdRUjs7RXZCLzZRTTs7SUFFRTtFdUJrN1FSOztFdkJoN1FNOztJQUVFO0V1Qm03UVI7O0V2Qmo3UU07O0lBRUU7RXVCbzdRUjs7RXZCbjhRTTtJQUF3QjtFdUJ1OFE5Qjs7RXZCdDhRTTs7SUFFRTtFdUJ5OFFSOztFdkJ2OFFNOztJQUVFO0V1QjA4UVI7O0V2Qng4UU07O0lBRUU7RXVCMjhRUjs7RXZCejhRTTs7SUFFRTtFdUI0OFFSOztFdkJ0OFFFO0lBQW1CO0V1QjA4UXJCOztFdkJ6OFFFOztJQUVFO0V1QjQ4UUo7O0V2QjE4UUU7O0lBRUU7RXVCNjhRSjs7RXZCMzhRRTs7SUFFRTtFdUI4OFFKOztFdkI1OFFFOztJQUVFO0V1Qis4UUo7QUFDRjtBaEZ6OVFJO0V5RGxESTtJQUFnQztFdUIrZ1J0Qzs7RXZCOWdSTTs7SUFFRTtFdUJpaFJSOztFdkIvZ1JNOztJQUVFO0V1QmtoUlI7O0V2QmhoUk07O0lBRUU7RXVCbWhSUjs7RXZCamhSTTs7SUFFRTtFdUJvaFJSOztFdkJuaVJNO0lBQWdDO0V1QnVpUnRDOztFdkJ0aVJNOztJQUVFO0V1QnlpUlI7O0V2QnZpUk07O0lBRUU7RXVCMGlSUjs7RXZCeGlSTTs7SUFFRTtFdUIyaVJSOztFdkJ6aVJNOztJQUVFO0V1QjRpUlI7O0V2QjNqUk07SUFBZ0M7RXVCK2pSdEM7O0V2QjlqUk07O0lBRUU7RXVCaWtSUjs7RXZCL2pSTTs7SUFFRTtFdUJra1JSOztFdkJoa1JNOztJQUVFO0V1Qm1rUlI7O0V2QmprUk07O0lBRUU7RXVCb2tSUjs7RXZCbmxSTTtJQUFnQztFdUJ1bFJ0Qzs7RXZCdGxSTTs7SUFFRTtFdUJ5bFJSOztFdkJ2bFJNOztJQUVFO0V1QjBsUlI7O0V2QnhsUk07O0lBRUU7RXVCMmxSUjs7RXZCemxSTTs7SUFFRTtFdUI0bFJSOztFdkIzbVJNO0lBQWdDO0V1QittUnRDOztFdkI5bVJNOztJQUVFO0V1QmluUlI7O0V2Qi9tUk07O0lBRUU7RXVCa25SUjs7RXZCaG5STTs7SUFFRTtFdUJtblJSOztFdkJqblJNOztJQUVFO0V1Qm9uUlI7O0V2Qm5vUk07SUFBZ0M7RXVCdW9SdEM7O0V2QnRvUk07O0lBRUU7RXVCeW9SUjs7RXZCdm9STTs7SUFFRTtFdUIwb1JSOztFdkJ4b1JNOztJQUVFO0V1QjJvUlI7O0V2QnpvUk07O0lBRUU7RXVCNG9SUjs7RXZCM3BSTTtJQUFnQztFdUIrcFJ0Qzs7RXZCOXBSTTs7SUFFRTtFdUJpcVJSOztFdkIvcFJNOztJQUVFO0V1QmtxUlI7O0V2QmhxUk07O0lBRUU7RXVCbXFSUjs7RXZCanFSTTs7SUFFRTtFdUJvcVJSOztFdkJuclJNO0lBQWdDO0V1QnVyUnRDOztFdkJ0clJNOztJQUVFO0V1QnlyUlI7O0V2QnZyUk07O0lBRUU7RXVCMHJSUjs7RXZCeHJSTTs7SUFFRTtFdUIyclJSOztFdkJ6clJNOztJQUVFO0V1QjRyUlI7O0V2QjNzUk07SUFBZ0M7RXVCK3NSdEM7O0V2QjlzUk07O0lBRUU7RXVCaXRSUjs7RXZCL3NSTTs7SUFFRTtFdUJrdFJSOztFdkJodFJNOztJQUVFO0V1Qm10UlI7O0V2Qmp0Uk07O0lBRUU7RXVCb3RSUjs7RXZCbnVSTTtJQUFnQztFdUJ1dVJ0Qzs7RXZCdHVSTTs7SUFFRTtFdUJ5dVJSOztFdkJ2dVJNOztJQUVFO0V1QjB1UlI7O0V2Qnh1Uk07O0lBRUU7RXVCMnVSUjs7RXZCenVSTTs7SUFFRTtFdUI0dVJSOztFdkIzdlJNO0lBQWdDO0V1Qit2UnRDOztFdkI5dlJNOztJQUVFO0V1Qml3UlI7O0V2Qi92Uk07O0lBRUU7RXVCa3dSUjs7RXZCaHdSTTs7SUFFRTtFdUJtd1JSOztFdkJqd1JNOztJQUVFO0V1Qm93UlI7O0V2Qm54Uk07SUFBZ0M7RXVCdXhSdEM7O0V2QnR4Uk07O0lBRUU7RXVCeXhSUjs7RXZCdnhSTTs7SUFFRTtFdUIweFJSOztFdkJ4eFJNOztJQUVFO0V1QjJ4UlI7O0V2Qnp4Uk07O0lBRUU7RXVCNHhSUjs7RXZCcHhSTTtJQUF3QjtFdUJ3eFI5Qjs7RXZCdnhSTTs7SUFFRTtFdUIweFJSOztFdkJ4eFJNOztJQUVFO0V1QjJ4UlI7O0V2Qnp4Uk07O0lBRUU7RXVCNHhSUjs7RXZCMXhSTTs7SUFFRTtFdUI2eFJSOztFdkI1eVJNO0lBQXdCO0V1Qmd6UjlCOztFdkIveVJNOztJQUVFO0V1Qmt6UlI7O0V2Qmh6Uk07O0lBRUU7RXVCbXpSUjs7RXZCanpSTTs7SUFFRTtFdUJvelJSOztFdkJselJNOztJQUVFO0V1QnF6UlI7O0V2QnAwUk07SUFBd0I7RXVCdzBSOUI7O0V2QnYwUk07O0lBRUU7RXVCMDBSUjs7RXZCeDBSTTs7SUFFRTtFdUIyMFJSOztFdkJ6MFJNOztJQUVFO0V1QjQwUlI7O0V2QjEwUk07O0lBRUU7RXVCNjBSUjs7RXZCNTFSTTtJQUF3QjtFdUJnMlI5Qjs7RXZCLzFSTTs7SUFFRTtFdUJrMlJSOztFdkJoMlJNOztJQUVFO0V1Qm0yUlI7O0V2QmoyUk07O0lBRUU7RXVCbzJSUjs7RXZCbDJSTTs7SUFFRTtFdUJxMlJSOztFdkJwM1JNO0lBQXdCO0V1QnczUjlCOztFdkJ2M1JNOztJQUVFO0V1QjAzUlI7O0V2QngzUk07O0lBRUU7RXVCMjNSUjs7RXZCejNSTTs7SUFFRTtFdUI0M1JSOztFdkIxM1JNOztJQUVFO0V1QjYzUlI7O0V2QnYzUkU7SUFBbUI7RXVCMjNSckI7O0V2QjEzUkU7O0lBRUU7RXVCNjNSSjs7RXZCMzNSRTs7SUFFRTtFdUI4M1JKOztFdkI1M1JFOztJQUVFO0V1QiszUko7O0V2QjczUkU7O0lBRUU7RXVCZzRSSjtBQUNGO0FoRjE0Ukk7RXlEbERJO0lBQWdDO0V1Qmc4UnRDOztFdkIvN1JNOztJQUVFO0V1Qms4UlI7O0V2Qmg4Uk07O0lBRUU7RXVCbThSUjs7RXZCajhSTTs7SUFFRTtFdUJvOFJSOztFdkJsOFJNOztJQUVFO0V1QnE4UlI7O0V2QnA5Uk07SUFBZ0M7RXVCdzlSdEM7O0V2QnY5Uk07O0lBRUU7RXVCMDlSUjs7RXZCeDlSTTs7SUFFRTtFdUIyOVJSOztFdkJ6OVJNOztJQUVFO0V1QjQ5UlI7O0V2QjE5Uk07O0lBRUU7RXVCNjlSUjs7RXZCNStSTTtJQUFnQztFdUJnL1J0Qzs7RXZCLytSTTs7SUFFRTtFdUJrL1JSOztFdkJoL1JNOztJQUVFO0V1Qm0vUlI7O0V2QmovUk07O0lBRUU7RXVCby9SUjs7RXZCbC9STTs7SUFFRTtFdUJxL1JSOztFdkJwZ1NNO0lBQWdDO0V1QndnU3RDOztFdkJ2Z1NNOztJQUVFO0V1QjBnU1I7O0V2QnhnU007O0lBRUU7RXVCMmdTUjs7RXZCemdTTTs7SUFFRTtFdUI0Z1NSOztFdkIxZ1NNOztJQUVFO0V1QjZnU1I7O0V2QjVoU007SUFBZ0M7RXVCZ2lTdEM7O0V2Qi9oU007O0lBRUU7RXVCa2lTUjs7RXZCaGlTTTs7SUFFRTtFdUJtaVNSOztFdkJqaVNNOztJQUVFO0V1Qm9pU1I7O0V2QmxpU007O0lBRUU7RXVCcWlTUjs7RXZCcGpTTTtJQUFnQztFdUJ3alN0Qzs7RXZCdmpTTTs7SUFFRTtFdUIwalNSOztFdkJ4alNNOztJQUVFO0V1QjJqU1I7O0V2QnpqU007O0lBRUU7RXVCNGpTUjs7RXZCMWpTTTs7SUFFRTtFdUI2alNSOztFdkI1a1NNO0lBQWdDO0V1QmdsU3RDOztFdkIva1NNOztJQUVFO0V1QmtsU1I7O0V2QmhsU007O0lBRUU7RXVCbWxTUjs7RXZCamxTTTs7SUFFRTtFdUJvbFNSOztFdkJsbFNNOztJQUVFO0V1QnFsU1I7O0V2QnBtU007SUFBZ0M7RXVCd21TdEM7O0V2QnZtU007O0lBRUU7RXVCMG1TUjs7RXZCeG1TTTs7SUFFRTtFdUIybVNSOztFdkJ6bVNNOztJQUVFO0V1QjRtU1I7O0V2QjFtU007O0lBRUU7RXVCNm1TUjs7RXZCNW5TTTtJQUFnQztFdUJnb1N0Qzs7RXZCL25TTTs7SUFFRTtFdUJrb1NSOztFdkJob1NNOztJQUVFO0V1Qm1vU1I7O0V2QmpvU007O0lBRUU7RXVCb29TUjs7RXZCbG9TTTs7SUFFRTtFdUJxb1NSOztFdkJwcFNNO0lBQWdDO0V1QndwU3RDOztFdkJ2cFNNOztJQUVFO0V1QjBwU1I7O0V2QnhwU007O0lBRUU7RXVCMnBTUjs7RXZCenBTTTs7SUFFRTtFdUI0cFNSOztFdkIxcFNNOztJQUVFO0V1QjZwU1I7O0V2QjVxU007SUFBZ0M7RXVCZ3JTdEM7O0V2Qi9xU007O0lBRUU7RXVCa3JTUjs7RXZCaHJTTTs7SUFFRTtFdUJtclNSOztFdkJqclNNOztJQUVFO0V1Qm9yU1I7O0V2QmxyU007O0lBRUU7RXVCcXJTUjs7RXZCcHNTTTtJQUFnQztFdUJ3c1N0Qzs7RXZCdnNTTTs7SUFFRTtFdUIwc1NSOztFdkJ4c1NNOztJQUVFO0V1QjJzU1I7O0V2QnpzU007O0lBRUU7RXVCNHNTUjs7RXZCMXNTTTs7SUFFRTtFdUI2c1NSOztFdkJyc1NNO0lBQXdCO0V1QnlzUzlCOztFdkJ4c1NNOztJQUVFO0V1QjJzU1I7O0V2QnpzU007O0lBRUU7RXVCNHNTUjs7RXZCMXNTTTs7SUFFRTtFdUI2c1NSOztFdkIzc1NNOztJQUVFO0V1QjhzU1I7O0V2Qjd0U007SUFBd0I7RXVCaXVTOUI7O0V2Qmh1U007O0lBRUU7RXVCbXVTUjs7RXZCanVTTTs7SUFFRTtFdUJvdVNSOztFdkJsdVNNOztJQUVFO0V1QnF1U1I7O0V2Qm51U007O0lBRUU7RXVCc3VTUjs7RXZCcnZTTTtJQUF3QjtFdUJ5dlM5Qjs7RXZCeHZTTTs7SUFFRTtFdUIydlNSOztFdkJ6dlNNOztJQUVFO0V1QjR2U1I7O0V2QjF2U007O0lBRUU7RXVCNnZTUjs7RXZCM3ZTTTs7SUFFRTtFdUI4dlNSOztFdkI3d1NNO0lBQXdCO0V1Qml4UzlCOztFdkJoeFNNOztJQUVFO0V1Qm14U1I7O0V2Qmp4U007O0lBRUU7RXVCb3hTUjs7RXZCbHhTTTs7SUFFRTtFdUJxeFNSOztFdkJueFNNOztJQUVFO0V1QnN4U1I7O0V2QnJ5U007SUFBd0I7RXVCeXlTOUI7O0V2Qnh5U007O0lBRUU7RXVCMnlTUjs7RXZCenlTTTs7SUFFRTtFdUI0eVNSOztFdkIxeVNNOztJQUVFO0V1QjZ5U1I7O0V2QjN5U007O0lBRUU7RXVCOHlTUjs7RXZCeHlTRTtJQUFtQjtFdUI0eVNyQjs7RXZCM3lTRTs7SUFFRTtFdUI4eVNKOztFdkI1eVNFOztJQUVFO0V1Qit5U0o7O0V2Qjd5U0U7O0lBRUU7RXVCZ3pTSjs7RXZCOXlTRTs7SUFFRTtFdUJpelNKO0FBQ0Y7QXRCbDNTRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtBc0JrM1NKOztBckI1M1NBO0VBQWtCO0FxQmc0U2xCOztBckI1M1NBO0VBQWlCO0FxQmc0U2pCOztBckIvM1NBO0VBQWlCO0FxQm00U2pCOztBckJsNFNBO0VBQWlCO0FxQnM0U2pCOztBckJyNFNBO0VDVEU7RUFDQTtFQUNBO0FvQms1U0Y7O0FyQm40U0k7RUFBd0I7QXFCdTRTNUI7O0FyQnQ0U0k7RUFBd0I7QXFCMDRTNUI7O0FyQno0U0k7RUFBd0I7QXFCNjRTNUI7O0FoRngyU0k7RTJEdkNBO0lBQXdCO0VxQm81UzFCOztFckJuNVNFO0lBQXdCO0VxQnU1UzFCOztFckJ0NVNFO0lBQXdCO0VxQjA1UzFCO0FBQ0Y7QWhGdDNTSTtFMkR2Q0E7SUFBd0I7RXFCaTZTMUI7O0VyQmg2U0U7SUFBd0I7RXFCbzZTMUI7O0VyQm42U0U7SUFBd0I7RXFCdTZTMUI7QUFDRjtBaEZuNFNJO0UyRHZDQTtJQUF3QjtFcUI4NlMxQjs7RXJCNzZTRTtJQUF3QjtFcUJpN1MxQjs7RXJCaDdTRTtJQUF3QjtFcUJvN1MxQjtBQUNGO0FoRmg1U0k7RTJEdkNBO0lBQXdCO0VxQjI3UzFCOztFckIxN1NFO0lBQXdCO0VxQjg3UzFCOztFckI3N1NFO0lBQXdCO0VxQmk4UzFCO0FBQ0Y7QXJCNTdTQTtFQUFtQjtBcUIrN1NuQjs7QXJCOTdTQTtFQUFtQjtBcUJrOFNuQjs7QXJCajhTQTtFQUFtQjtBcUJxOFNuQjs7QXJCajhTQTtFQUF1QjtBcUJxOFN2Qjs7QXJCcDhTQTtFQUF1QjtBcUJ3OFN2Qjs7QXJCdjhTQTtFQUF1QjtBcUIyOFN2Qjs7QXJCMThTQTtFQUF1QjtBcUI4OFN2Qjs7QXJCNzhTQTtFQUF1QjtBcUJpOVN2Qjs7QXJCaDlTQTtFQUF1QjtBcUJvOVN2Qjs7QXJCaDlTQTtFQUFjO0FxQm85U2Q7O0FuQjMvU0U7RUFDRTtBbUI4L1NKOztBekZwL1NFO0VzRUxNO0FtQjYvU1I7O0FuQm5nVEU7RUFDRTtBbUJzZ1RKOztBekY1L1NFO0VzRUxNO0FtQnFnVFI7O0FuQjNnVEU7RUFDRTtBbUI4Z1RKOztBekZwZ1RFO0VzRUxNO0FtQjZnVFI7O0FuQm5oVEU7RUFDRTtBbUJzaFRKOztBekY1Z1RFO0VzRUxNO0FtQnFoVFI7O0FuQjNoVEU7RUFDRTtBbUI4aFRKOztBekZwaFRFO0VzRUxNO0FtQjZoVFI7O0FuQm5pVEU7RUFDRTtBbUJzaVRKOztBekY1aFRFO0VzRUxNO0FtQnFpVFI7O0FuQjNpVEU7RUFDRTtBbUI4aVRKOztBekZwaVRFO0VzRUxNO0FtQjZpVFI7O0FuQm5qVEU7RUFDRTtBbUJzalRKOztBekY1aVRFO0VzRUxNO0FtQnFqVFI7O0FyQjlnVEE7RUFBYTtBcUJraFRiOztBckJqaFRBO0VBQWM7QXFCcWhUZDs7QXJCbmhUQTtFQUFpQjtBcUJ1aFRqQjs7QXJCdGhUQTtFQUFpQjtBcUIwaFRqQjs7QXJCdGhUQTtFR3ZERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FrQmlsVEY7O0FyQjFoVEE7RUFBd0I7QXFCOGhUeEI7O0FyQjVoVEE7RUFDRTtFQUNBO0FxQitoVEY7O0FyQjFoVEE7RUFBYztBcUI4aFRkOztBakIvbFRBO0VBQ0U7QWlCa21URjs7QWpCL2xUQTtFQUNFO0FpQmttVEY7O0FoQmxtVEU7RUFDRTs7O0lBS0U7SUFFQTtFZ0JrbVRKOztFaEI5bFRJO0lBQ0U7RWdCaW1UTjs7RWhCeGxURTtJQUNFO0VnQjJsVEo7O0VoQjdrVEU7SUFDRTtFZ0JnbFRKOztFaEI5a1RFOztJQUVFO0lBQ0E7RWdCaWxUSjs7RWhCemtURTtJQUNFO0VnQjRrVEo7O0VoQnprVEU7O0lBRUU7RWdCNGtUSjs7RWhCemtURTs7O0lBR0U7SUFDQTtFZ0I0a1RKOztFaEJ6a1RFOztJQUVFO0VnQjRrVEo7O0VoQnBrVEU7SUFDRSxRM0UraEM4QjtFMkZ3aVJsQztFaEJya1RFO0lBQ0U7RWdCdWtUSjs7RWhCcmtURTtJQUNFO0VnQndrVEo7O0VoQnBrVEU7SUFDRTtFZ0J1a1RKOztFaEJya1RFO0lBQ0U7RWdCd2tUSjs7RWhCcmtURTtJQUNFO0VnQndrVEo7RWhCdGtUSTs7SUFFRTtFZ0J3a1ROOztFaEJua1RJOztJQUVFO0VnQnNrVE47O0VoQmxrVEU7SUFDRTtFZ0Jxa1RKO0VoQm5rVEk7Ozs7SUFJRSxxQjNFdkhHO0UyRjRyVFQ7O0VoQmprVEU7SUFDRTtJQUNBLHFCM0U3SEs7RTJGaXNUVDtBQUNGO0FFbnNURTtFQUNFO0FGcXNUSjs7QWhGdG9USTtFa0Z6REU7SUFDRTtFRm1zVE47QUFDRjtBaEY1b1RJO0VrRnpERTtJQUNFO0VGd3NUTjtBQUNGO0FoRmpwVEk7RWtGekRFO0lBQ0U7RUY2c1ROO0FBQ0Y7QWhGdHBUSTtFa0Z6REU7SUFDRTtFRmt0VE47QUFDRjtBRXB0VE07RUFDRTtBRnN0VFI7O0FHL3RURTtFQUNFLGM5RktPO0U4RkpQLHNCRm9CSTtFRW5CSixxQjlGMGRvQztFOEZ6ZHBDO0VBSUUsZ0Q5RjBYd0I7QTJGcTJTOUI7QUc1dFRJO0VBQ0UscUI5RjRuQjhCO0U4RjNuQjlCO0FIOHRUTjtBRzN0VEk7RUFDRSxxQjlGd25COEI7RThGdm5COUI7QUg2dFROOztBSXJ2VEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYUNxSmM7RURwSmQsY0NvSmM7RURuSmQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKd3ZURjtBSXJ2VEU7RUFDRTtBSnV2VEo7QUlwdlRFO0VBRUU7RUFDQTtBSnF2VEo7QUludlRJO0VBQ0U7QUpxdlROO0FJbHZUSTtFQUNFO0FKb3ZUTjtBSWp2VFE7RUFDRTtBSm12VFY7QUk3dVRFO0VBR0UsYS9Gb1kwQjtFK0ZuWTFCO0FKNnVUSjtBSTF1VEU7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7VUFBQTtBSjJ1VEo7QUl4dVRFO0VBQ0U7RUFDQTtBSjB1VEo7QUl2dVRFO0VBQ0U7QUp5dVRKO0FJdHVURTtFQUNFO0VBQ0E7RUFDQTtBSnd1VEo7QUlydVRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFHQTtLQUFBO0FKcXVUSjtBSWx1VEU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUptdVRKOztBSS90VEE7RUFDRSxhQ29EaUI7RURuRGpCLGNDbURpQjtBTCtxVG5CO0FJaHVURTtFQUNFO0FKa3VUSjtBSS90VEU7RUFDRTtBSml1VEo7O0FJN3RUQTtFQUNFLGFDd0NpQjtFRHZDakIsY0N1Q2lCO0FMeXJUbkI7QUk5dFRFO0VBQ0U7QUpndVRKO0FJN3RURTtFQUNFO0FKK3RUSjs7QUkxdFRFO0VBQ0U7RUFDQTtBSjZ0VEo7QUkxdFRFO0VBQ0U7QUo0dFRKO0FJdnRUSTs7RUFDRTtBSjB0VE47O0FNeDJUQTtFQUNFO0FOMjJURjtBTXoyVEU7RUFFRTtBTjAyVEo7QU12MlRFOztFQUVFO0FOeTJUSjtBTXQyVEU7RUFDRTtBTncyVEo7QU1yMlRFO0VBQ0U7RUFDQTtBTnUyVEo7QU1yMlRJO0VBQ0UseUJqR2ZLO0VpR2dCTDtBTnUyVE47QU1uMlRFO0VBQ0U7QU5xMlRKO0FNbDJURTtFQUNFO0VBQ0E7RUFHQTtBTmsyVEo7QU1oMlRJO0VBRUU7QU5pMlROO0FNNzFURTtFQUNFO0FOKzFUSjtBTXgxVE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU4wMVRSO0FNaDFUSTtFQUdFO0VBQ0E7QU5nMVROOztBTzE1VEE7RTNGZ0RJO0VBQ0E7QW9GODJUSjs7QU8zNVRBO0UzRjhCSTtFQUNBO0FvRmk0VEo7O0FReDVUUTtFQUNFO0FSMjVUVjtBUW41VFE7RUFDRTtBUnE1VFY7QVE3NFRJO0VBQ0U7QVIrNFROOztBU3Q2VEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCcEdrUjBCO0EyRnVwVDlCO0FTdjZUSTtFQU1FO0VBQ0E7QVRvNlROO0FTajZUSTtFQUVFO0VBQ0EsY3BHaEJLO0VvR2lCTDtBVGs2VE47O0FVdjdURTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxvQnJHK1EwQjtBMkYycVQ5Qjs7QVd0OFRBOztFQUVFLG1CdEdzUjRCO0VzR3JSNUIsZ0J0R29PNEI7RXNHbk81QjtBWHk4VEY7QVd2OFRFOztFQUNFO0VBQ0E7RUFDQSxjTkRpQztFTUVqQyxlTkZpQztFekZRakM7QW9GcThUSjtBV3Y4VEU7O0VBQ0U7RUFDQTtFQUNBLGNOVGlDO0VNVWpDLGVOVmlDO0VNV2pDLHdCdEc2Zm9DO0EyRjY4U3hDOztBV3Q4VEE7O0VBRUUsb0J0R2dRNEI7RXNHL1A1QixnQnRHOE00QjtFc0c3TTVCO0FYeThURjtBV3Y4VEU7O0VBQ0U7RUFDQTtFQUNBLGVOdkJpQztFTXdCakMsZ0JOeEJpQztFekZPakM7QW9GNDlUSjtBV3Y4VEU7O0VBQ0U7RUFDQTtFQUNBLGVOL0JpQztFTWdDakMsZ0JOaENpQztFTWlDakMsd0J0R3Nlb0M7QTJGbytTeEM7O0FXdDhUQTs7RUFFRTtBWHk4VEY7QVd2OFRFOztFQUNFLG1CdEdxTzBCO0VzR3BPMUIsZ0J0R21MMEI7QTJGdXhUOUI7QVd4OFRJOztFQUNFO0VBQ0EsZU5oRCtCO0VNaUQvQjtFQUNBLGdCTjlCcUI7RU0rQnJCLHVCTjdCdUM7QUx3K1Q3QztBV3g4VEk7O0VBQ0U7RUFJQTtFQUlBLDRCTnZDOEI7RU13QzlCLDZCTnhDOEI7RU15QzlCLHVCTjNDdUM7RU00Q3ZDLHdCdEdzY2tDO0EyRisvU3hDO0FXaDhUSTs7RUFDRTtBWG04VE47O0FXOTdUQTs7RUFFRTtBWGk4VEY7QVcvN1RFOztFQUNFLG9CdEcrTDBCO0VzRzlMMUIsZ0J0RzZJMEI7QTJGcXpUOUI7QVdoOFRJOztFQUNFO0VBQ0E7RUFDQSxpQk5uRXFCO0VNb0VyQixnQk54RitCO0VNeUYvQix3Qk5uRXVDO0FMc2dVN0M7QVdoOFRJOztFQUNFO0VBSUE7RUFJQSw2Qk4zRThCO0VNNEU5Qiw4Qk41RThCO0VNNkU5Qix3Qk5qRnVDO0VNa0Z2Qyx3QnRHK1prQztBMkY4aFR4QztBV3g3VEk7O0VBQ0U7QVgyN1ROOztBWXZpVU07OztFQUNFO0VBQ0E7QVo0aVVSO0FZcmlVTTs7O0VBQ0U7RUFDQTtBWnlpVVI7O0FheGpVRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QWJ5alVKO0FhcmpVTTtFQUNFO0FidWpVUjs7QWFqalVNO0VBRUU7QWJtalVSO0FhampVUTtFQUNFO0FibWpVVjs7QWE5aVVJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWJpalVOO0FhL2lVTTtFQUNFO0FiaWpVUjtBYTdpVUk7RUFDRSxjeEcrbEI4QjtBMkZnOVNwQztBYTVpVUk7RUFDRSxjeEc0bEI4QjtBMkZrOVNwQztBYTNpVUk7RUFDRTtBYjZpVU47QWExaVVJO0VBQ0U7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFRTtBYndpVVI7QWFyaVVNO0VBQ0U7QWJ1aVVSO0FhcGlVTTtFQUNFO0Fic2lVUjtBYWppVVE7RUFDRTtFQUNBLG9CeEdrVG9CO0V3R2pUcEIsdUJ4R2lUb0I7QTJGa3ZUOUI7O0FhaGlVUTtFQUNFO0VBQ0EsbUJ4R2lUb0I7RXdHaFRwQixzQnhHZ1RvQjtBMkZtdlQ5Qjs7QWE3aFVJO0VBRUUseUJ4R2hHSztFd0dpR0w7QWIraFVOO0FhNWhVSTtFQUNFO0FiOGhVTjtBYTVoVU07RUFDRTtBYjhoVVI7O0FhdmhVSTtFQUNFO0FiMGhVTjs7QWM5b1VBO0VBQ0U7RUFDQTtBZGlwVUY7O0FjNW9VRTs7Ozs7O0VBR0UsbUJ6RzJRMEI7RXlHMVExQixnQ3pHcWVvQztBMkY2cVR4QztBYy9vVUU7Ozs7RUFFRTtFQUNBLGdCekdtTjBCO0EyRmc4VDlCO0FjaHBVRTs7RWxHUEU7QW9GMnBVSjtBY2pwVUk7O0VBQ0U7RUFDQSw0QlR3QjBCO0V6RnBDNUI7QW9GaXFVSjs7QWM3b1VFOzs7Ozs7RUFHRSxvQnpHa1AwQjtFeUdqUDFCLGtDekcwY29DO0EyRnlzVHhDO0FjaHBVRTs7OztFQUVFO0VBQ0EsZ0J6RzBMMEI7QTJGMDlUOUI7QWNqcFVFOztFbEdqQ0U7QW9Gc3JVSjtBY2xwVUk7O0VBQ0U7RUFDQSw4QlRDMEI7RXpGdkM1QjtBb0Y0clVKOztBZXpzVUk7RUFJRTtBZnlzVU47O0FlbHNVQTtFQUNFLG1DMUdrZXNDO0UwR2hldEM7QWZvc1VGOztBZWpzVUE7O0VBRUUsa0MxRzRkc0M7RTBHMWR0QztBZm1zVUY7O0FlaHNVQTs7RUFFRSxnQzFHc2RzQztFMEdyZHRDO0FmbXNVRjs7QWVoc1VBO0VBRUUseUIxR3pCUztFMEcwQlQsYTFHOFk0QjtBMkZvelQ5Qjs7QWU3clVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWZnc1VKO0FlOXJVSTs7Ozs7RUFLRTtBZmdzVU47QWV2clVJOzs7OztFQUNFO0FmNnJVTjtBZXpyVUU7RUFDRTtBZjJyVUo7QWV2clVJO0VuR3ZDQTtFQUNBO0FvRml1VUo7QWV4clVJO0VuRzVCQTtFQUNBO0FvRnV0VUo7QWV2clVFO0VBQ0UsbUMxR2lhb0M7RTBHaGFwQztFQUNBLHNCZHRESTtFY3VESjtFQUNBO0VBQ0EsbUMxRzRab0M7RTBHelpsQyxzQjFHcUp3QjtFaUIvTnhCLHdFeUZnRkY7QWZrclVKO0ExRTl2VU07RXlGNkRKO0l6RjVETTtFMEVpd1VOO0FBQ0Y7QWVuclVJO0VBQ0UsYzFHdkZLO0UwR3dGTCxzQmR4RUU7RWN5RUYscUIxRzhYa0M7RTBHN1hsQztFQUlFLGdEMUc4UnNCO0EyRm81VDlCO0FlOXFVSTtFQUVFLHlCMUd6R0s7QTJGd3hVWDs7QWUxcVVBO0VBQ0UsZ0MxRzZYc0M7RTBHNVh0QztFbkd2R0U7QW9GcXhVSjs7QWUxcVVBO0VBQ0Usa0MxR3NYc0M7RTBHclh0QztFbkc3R0U7QW9GMnhVSjs7QWV0cVVJO0VBRUUscUIxR3VnQjhCO0EyRmlxVHBDO0FldHFVTTtFQUNFLHFCMUdvZ0I0QjtFMEduZ0I1QjtBZndxVVI7O0FlOXBVUTtFQUNFO0FmaXFVVjtBZS9wVVE7RUFDRTtBZmlxVVY7QWUvcFVRO0VBQ0U7QWZpcVVWO0FlN3BVTTtFQUNFLHlCMUc2ZTRCO0UwRzVlNUI7QWYrcFVSO0FlN3BVUTtFQUNFO0VBQ0E7QWYrcFVWO0FlM3BVTTtFQUNFO0FmNnBVUjtBZTFwVU07RUFDRSx5QjFHK2Q0QjtFMEc5ZDVCO0FmNHBVUjtBZTFwVVE7RUFDRTtFQUNBO0FmNHBVVjtBZXhwVU07RUFDRTtBZjBwVVI7QWV2cFVNOzs7RUFFRTtBZjBwVVI7QWV2cFVNO0VBQ0UseUIxRzRjNEI7RTBHM2M1QjtBZnlwVVI7QWV2cFVRO0VBQ0U7RUFDQTtBZnlwVVY7QWVycFVNO0VBQ0U7QWZ1cFVSO0FlcnBVTTtFQUNFO0FmdXBVUjs7QWVqdVVJO0VBRUUscUIxR3dnQjhCO0EyRjJ0VHBDO0FlanVVTTtFQUNFLHFCMUdxZ0I0QjtFMEdwZ0I1QjtBZm11VVI7O0FlenRVUTtFQUNFO0FmNHRVVjtBZTF0VVE7RUFDRTtBZjR0VVY7QWUxdFVRO0VBQ0U7QWY0dFVWO0FleHRVTTtFQUNFLHlCMUc4ZTRCO0UwRzdlNUI7QWYwdFVSO0FleHRVUTtFQUNFO0VBQ0E7QWYwdFVWO0FldHRVTTtFQUNFO0Fmd3RVUjtBZXJ0VU07RUFDRSx5QjFHZ2U0QjtFMEcvZDVCO0FmdXRVUjtBZXJ0VVE7RUFDRTtFQUNBO0FmdXRVVjtBZW50VU07RUFDRTtBZnF0VVI7QWVsdFVNOzs7RUFFRTtBZnF0VVI7QWVsdFVNO0VBQ0UseUIxRzZjNEI7RTBHNWM1QjtBZm90VVI7QWVsdFVRO0VBQ0U7RUFDQTtBZm90VVY7QWVodFVNO0VBQ0U7QWZrdFVSO0FlaHRVTTtFQUNFO0Fma3RVUjs7QWdCajZVQTs7RUFFRSxtQjNHc1I0QjtFMkdyUjVCLGdCM0dvTzRCO0UyR25PNUI7QWhCbzZVRjtBZ0JsNlVFOztFQUNFO0VBQ0E7RUFDQSxjWERpQztFV0VqQyxlWEZpQztFV0dqQyxrQjNHc2lCNEM7QTJGKzNUaEQ7QWdCbDZVRTs7RUFDRTtFQUNBO0VBQ0EsY1hUaUM7RVdVakMsZVhWaUM7RVdXakM7QWhCcTZVSjs7QWdCajZVQTs7RUFFRSxvQjNHZ1E0QjtFMkcvUDVCLGdCM0c4TTRCO0UyRzdNNUI7QWhCbzZVRjtBZ0JsNlVFOztFQUNFO0VBQ0E7RUFDQSxlWHZCaUM7RVd3QmpDLGdCWHhCaUM7RVd5QmpDLGtCM0crZ0I0QztBMkZzNVRoRDtBZ0JsNlVFOztFQUNFO0VBQ0E7RUFDQSxlWC9CaUM7RVdnQ2pDLGdCWGhDaUM7RVdpQ2pDO0FoQnE2VUo7O0FpQmo5VUE7RUFDRTtBakJvOVVGO0FpQmw5VUU7RUFDRTtBakJvOVVKO0FpQmo5VUU7O0VBRUU7QWpCbTlVSjtBaUJoOVVFO0VBRUU7QWpCaTlVSjtBaUI5OFVFO0VBQ0U7RUFDQTtFQUNBO0FqQmc5VUo7QWlCOThVSTtFQUNFO0VBQ0E7QWpCZzlVTjtBaUI1OFVFO0VBRUUseUI1R3JCTztFNEdzQlAsYzVHbEJPO0EyRis5VVg7QWlCejhVSTtFQUNFO0FqQjI4VU47QWlCcjhVTTs7RUFDRTtBakJ3OFVSO0FpQi83VUk7RUFDRTtBakJpOFVOOztBa0J0L1VBO0VBQ0U7RUFFQTtFQUVBO0VBQ0E7QWxCdS9VRjtBa0JuL1VJO0VBRUU7QWxCby9VTjs7QWtCaC9VRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQm0vVUo7QWtCai9VSTs7RUFFRTtFQUNBO0VBRUE7QWxCay9VTjtBa0I5K1VFO0VBQ0U7RUFDQTtBbEJnL1VKO0FrQjkrVUk7RUFDRTtFQUNBO0FsQmcvVU47QWtCNStVRTtFQUVJO0FsQjYrVU47QWtCeitVRTtFQUNFO0FsQjIrVUo7QWtCeCtVRTtFQUNFO0VBQ0E7QWxCMCtVSjtBa0J4K1VJO0VBQ0U7QWxCMCtVTjtBa0J2K1VJO0VBQ0U7QWxCeStVTjtBa0JyK1VFO0VBRUUseUI3RzVETztBMkZraVZYO0FrQm4rVUU7RUFDRTtBbEJxK1VKOztBbUI3aVZFO0VBQ0U7QW5CZ2pWSjtBbUI5aVZJOztFQUVFO0FuQmdqVk47QW1CNWlWRTtFQUNFLGM5R0dPO0U4R0ZQLHNCbEJrQkk7RWtCakJKLHFCOUd3ZG9DO0U4R3ZkcEM7RUFJRSxnRDlHd1h3QjtBMkZtclU5QjtBbUJ4aVZJO0VBQ0UscUI5RzBuQjhCO0U4R3puQjlCO0FuQjBpVk47QW1CdmlWSTtFQUNFLHFCOUdzbkI4QjtFOEdybkI5QjtBbkJ5aVZOO0FtQnJpVkU7RUFDRSx5QjlHeEJPO0EyRitqVlg7O0FtQm5pVkE7RUFHRTtFQUNBO0VBQ0EsZ0JsQnBDaUI7RWtCcUNqQjtBbkJvaVZGO0FtQmxpVkU7RUFDRTtBbkJvaVZKO0FtQmhpVkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQmtpVko7O0FtQjloVkE7RUFDRSxnQjlHOEs0QjtBMkZtM1U5Qjs7QW1COWhWQTtFQUNFLGdCOUd5SzRCO0EyRnczVTlCOztBb0JqbVZBO0VBQ0U7RUFDQTtBcEJvbVZGOztBb0JqbVZBO0VBQ0U7RUFDQTtBcEJvbVZGOztBcUJ6bVZBO0VBQ0UsWWhIaThCa0M7QTJGMnFUcEM7O0FzQm5tVk07RUFDRTtFQUNBO0VBQ0E7QXRCc21WUjtBc0JsbVZRO0VBQ0U7QXRCb21WVjs7QXVCdm5WQTtFQUNFO0VBQ0E7RUFFQTtBdkJ5blZGO0F1QnZuVkU7RUFDRTtBdkJ5blZKO0F1QnRuVkU7RUFDRTtBdkJ3blZKOztBdUJ4bVZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcW5WeEI7QXVCdG1WVTtFQUNFLHlCQVZpQjtBdkJrblY3QjtBdUJybVZVO0VBQ0UseUJBckJRO0F2QjRuVnBCO0F1QmhtVlU7RUFDRSwyQkF0QmlCO0F2QnduVjdCO0F1Qi9sVlU7RUFDRSwyQkFqQ1E7QXZCa29WcEI7QXVCMWxWVTtFQUNFLDRCQWxDaUI7QXZCOG5WN0I7QXVCemxWVTtFQUVFLDRCQTNDUztBdkJxb1ZyQjtBdUJ0bFZRO0VBQ0UsNEJBaERXO0F2QndvVnJCO0F1QmxsVlU7RUFDRSwwQkFuRGlCO0F2QnVvVjdCO0F1QmpsVlU7RUFDRSwwQkE5RFE7QXZCaXBWcEI7QXVCL2pWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QmlrVlI7QXVCOWpWTTtFQUNFLGNBdkZTO0F2QnVwVmpCOztBdUJocFZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNnBWeEI7QXVCOW9WVTtFQUNFLHlCQVZpQjtBdkIwcFY3QjtBdUI3b1ZVO0VBQ0UseUJBckJRO0F2Qm9xVnBCO0F1QnhvVlU7RUFDRSwyQkF0QmlCO0F2QmdxVjdCO0F1QnZvVlU7RUFDRSwyQkFqQ1E7QXZCMHFWcEI7QXVCbG9WVTtFQUNFLDRCQWxDaUI7QXZCc3FWN0I7QXVCam9WVTtFQUVFLDRCQTNDUztBdkI2cVZyQjtBdUI5blZRO0VBQ0UsNEJBaERXO0F2QmdyVnJCO0F1QjFuVlU7RUFDRSwwQkFuRGlCO0F2QitxVjdCO0F1QnpuVlU7RUFDRSwwQkE5RFE7QXZCeXJWcEI7QXVCdm1WTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QnltVlI7QXVCdG1WTTtFQUNFLGNBdkZTO0F2QityVmpCOztBdUJ4clZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcXNWeEI7QXVCdHJWVTtFQUNFLHlCQVZpQjtBdkJrc1Y3QjtBdUJyclZVO0VBQ0UseUJBckJRO0F2QjRzVnBCO0F1QmhyVlU7RUFDRSwyQkF0QmlCO0F2QndzVjdCO0F1Qi9xVlU7RUFDRSwyQkFqQ1E7QXZCa3RWcEI7QXVCMXFWVTtFQUNFLDRCQWxDaUI7QXZCOHNWN0I7QXVCenFWVTtFQUVFLDRCQTNDUztBdkJxdFZyQjtBdUJ0cVZRO0VBQ0UsNEJBaERXO0F2Qnd0VnJCO0F1QmxxVlU7RUFDRSwwQkFuRGlCO0F2QnV0VjdCO0F1QmpxVlU7RUFDRSwwQkE5RFE7QXZCaXVWcEI7QXVCL29WTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QmlwVlI7QXVCOW9WTTtFQUNFLGNBdkZTO0F2QnV1VmpCOztBdUJodVZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNnVWeEI7QXVCOXRWVTtFQUNFLHlCQVZpQjtBdkIwdVY3QjtBdUI3dFZVO0VBQ0UseUJBckJRO0F2Qm92VnBCO0F1Qnh0VlU7RUFDRSwyQkF0QmlCO0F2Qmd2VjdCO0F1QnZ0VlU7RUFDRSwyQkFqQ1E7QXZCMHZWcEI7QXVCbHRWVTtFQUNFLDRCQWxDaUI7QXZCc3ZWN0I7QXVCanRWVTtFQUVFLDRCQTNDUztBdkI2dlZyQjtBdUI5c1ZRO0VBQ0UsNEJBaERXO0F2Qmd3VnJCO0F1QjFzVlU7RUFDRSwwQkFuRGlCO0F2Qit2VjdCO0F1QnpzVlU7RUFDRSwwQkE5RFE7QXZCeXdWcEI7QXVCdnJWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QnlyVlI7QXVCdHJWTTtFQUNFLGNBdkZTO0F2Qit3VmpCOztBdUJ4d1ZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcXhWeEI7QXVCdHdWVTtFQUNFLHlCQVZpQjtBdkJreFY3QjtBdUJyd1ZVO0VBQ0UseUJBckJRO0F2QjR4VnBCO0F1Qmh3VlU7RUFDRSwyQkF0QmlCO0F2Qnd4VjdCO0F1Qi92VlU7RUFDRSwyQkFqQ1E7QXZCa3lWcEI7QXVCMXZWVTtFQUNFLDRCQWxDaUI7QXZCOHhWN0I7QXVCenZWVTtFQUVFLDRCQTNDUztBdkJxeVZyQjtBdUJ0dlZRO0VBQ0UsNEJBaERXO0F2Qnd5VnJCO0F1Qmx2VlU7RUFDRSwwQkFuRGlCO0F2QnV5VjdCO0F1Qmp2VlU7RUFDRSwwQkE5RFE7QXZCaXpWcEI7QXVCL3RWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2Qml1VlI7QXVCOXRWTTtFQUNFLGNBdkZTO0F2QnV6VmpCOztBdUJoelZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNnpWeEI7QXVCOXlWVTtFQUNFLHlCQVZpQjtBdkIwelY3QjtBdUI3eVZVO0VBQ0UseUJBckJRO0F2Qm8wVnBCO0F1Qnh5VlU7RUFDRSwyQkF0QmlCO0F2QmcwVjdCO0F1QnZ5VlU7RUFDRSwyQkFqQ1E7QXZCMDBWcEI7QXVCbHlWVTtFQUNFLDRCQWxDaUI7QXZCczBWN0I7QXVCanlWVTtFQUVFLDRCQTNDUztBdkI2MFZyQjtBdUI5eFZRO0VBQ0UsNEJBaERXO0F2QmcxVnJCO0F1QjF4VlU7RUFDRSwwQkFuRGlCO0F2QiswVjdCO0F1Qnp4VlU7RUFDRSwwQkE5RFE7QXZCeTFWcEI7QXVCdndWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2Qnl3VlI7QXVCdHdWTTtFQUNFLGNBdkZTO0F2QisxVmpCOztBdUJ4MVZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCcTJWeEI7QXVCdDFWVTtFQUNFLHlCQVZpQjtBdkJrMlY3QjtBdUJyMVZVO0VBQ0UseUJBckJRO0F2QjQyVnBCO0F1QmgxVlU7RUFDRSwyQkF0QmlCO0F2QncyVjdCO0F1Qi8wVlU7RUFDRSwyQkFqQ1E7QXZCazNWcEI7QXVCMTBWVTtFQUNFLDRCQWxDaUI7QXZCODJWN0I7QXVCejBWVTtFQUVFLDRCQTNDUztBdkJxM1ZyQjtBdUJ0MFZRO0VBQ0UsNEJBaERXO0F2QnczVnJCO0F1QmwwVlU7RUFDRSwwQkFuRGlCO0F2QnUzVjdCO0F1QmowVlU7RUFDRSwwQkE5RFE7QXZCaTRWcEI7QXVCL3lWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2Qml6VlI7QXVCOXlWTTtFQUNFLGNBdkZTO0F2QnU0VmpCOztBdUJoNFZNO0VBQ0UseUJBVlk7RUFXWixxQkFWZ0I7QXZCNjRWeEI7QXVCOTNWVTtFQUNFLHlCQVZpQjtBdkIwNFY3QjtBdUI3M1ZVO0VBQ0UseUJBckJRO0F2Qm81VnBCO0F1QngzVlU7RUFDRSwyQkF0QmlCO0F2Qmc1VjdCO0F1QnYzVlU7RUFDRSwyQkFqQ1E7QXZCMDVWcEI7QXVCbDNWVTtFQUNFLDRCQWxDaUI7QXZCczVWN0I7QXVCajNWVTtFQUVFLDRCQTNDUztBdkI2NVZyQjtBdUI5MlZRO0VBQ0UsNEJBaERXO0F2Qmc2VnJCO0F1QjEyVlU7RUFDRSwwQkFuRGlCO0F2Qis1VjdCO0F1QnoyVlU7RUFDRSwwQkE5RFE7QXZCeTZWcEI7QXVCdjFWTTtFQUNFLGNBL0VnQjtFQWdGaEIseUJBakZhO0VBa0ZiO0F2QnkxVlI7QXVCdDFWTTtFQUNFLGNBdkZTO0F2Qis2VmpCOztBd0JwOFZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsdUJuQndFaUI7QUwrM1ZuQjs7QXdCcDhWQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QnU4VkY7O0F3QnA4VkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFluQm9EZ0I7RW1CbkRoQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCdThWRjtBd0JyOFZFO0VBQ0U7QXhCdThWSjtBd0J0OFZJO0VBRkY7SUFHSTtFeEJ5OFZKO0FBQ0Y7QXdCdDhWRTtFQUNFO0VBQ0E7QXhCdzhWSjtBd0J0OFZJO0VBQ0U7QXhCdzhWTjtBd0JyOFZJO0VBQ0U7QXhCdThWTjtBd0JuOFZFO0VBQ0U7RUFDQTtBeEJxOFZKO0F3Qm44Vkk7RUFDRTtBeEJxOFZOO0F3Qmw4Vkk7RUFDRTtBeEJvOFZOO0F3Qmg4VkU7RUFDRSxpQm5CYXlCO0VtQlp6QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Qms4Vko7QXdCOTdWTTtFQUNFO0F4Qmc4VlI7O0F3QjU3Vkk7RUFDRTtFQUNBLGlCbkJIdUI7QUxrOFY3QjtBd0IzN1ZFO0VBQ0U7RUFDQTtFQUNBO0F4QjY3Vko7QXdCMTdWRTtFQUNFO0F4QjQ3Vko7O0F5QnpoV0E7RUFDRSxZcEJvSzBCO0FMdzNWNUI7O0F5QnhoV0E7RUFDRTtFQUNBO0VBQ0EscUNwQjRKNEI7RW9CM0o1QixZcEI0SjBCO0VvQjFKMUI7VUFBQTtBekIwaFdGO0F5QnZoV0U7RUFDRTtBekJ5aFdKOztBeUJwaFdBO0VBQ0UsY3hCakJlO0V3QmtCZixzQnBCaUp3QjtFb0I5SXRCO0F6QnFoV0o7O0F5QmhoV0E7RUFDRSxXcEJ5SXFCO0VvQnhJckI7RUFDQSxpQnhCN0JlO0V3QjhCZixnQnhCN0JpQjtFd0JnQ2Ysc0JwSHlNMEI7QTJGdzBWOUI7O0F5QjVnV0E7RUFDRTtFQUNBO0VBQ0E7QXpCK2dXRjs7QXlCM2dXQTtFQUNFLG1DcEhnY3NDO0VvSC9idEM7RUFDQSxnQnhCL0NpQjtFd0JnRGpCO0VBR0Usc0JwSHNMMEI7QTJGczFWOUI7O0F5QnRnV0U7RUFDRSwwQnBCcUcwQjtBTG82VjlCOztBeUJwZ1dBO0VBQ0U7RUFDQTtBekJ1Z1dGOztBeUJsZ1dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO1VBQUE7QXpCb2dXSjtBeUJsZ1dJO0VBWkY7SUFhSTtJQUNBO1lBQUE7RXpCcWdXSjtBQUNGOztBeUJqZ1dBO0VBQ0U7SUFDRTtFekJvZ1dGO0V5QmxnV0E7SUFDRTtFekJvZ1dGO0FBQ0Y7O0F5QjFnV0E7RUFDRTtJQUNFO0V6Qm9nV0Y7RXlCbGdXQTtJQUNFO0V6Qm9nV0Y7QUFDRjtBeUJoZ1dBO0VBQ0U7VUFBQTtBekJrZ1dGO0F5Qi8vVkU7RUFKRjtJQUtJO1lBQUE7RXpCa2dXRjtBQUNGOztBeUIvL1ZBO0VBQ0U7SUFDRTtFekJrZ1dGO0V5QmhnV0E7SUFDRTtFekJrZ1dGO0FBQ0Y7O0F5QnhnV0E7RUFDRTtJQUNFO0V6QmtnV0Y7RXlCaGdXQTtJQUNFO0V6QmtnV0Y7QUFDRjtBeUI5L1ZBO0VBQ0U7VUFBQTtBekJnZ1dGO0F5QjcvVkU7RUFKRjtJQUtJO1lBQUE7RXpCZ2dXRjtBQUNGOztBeUI3L1ZBO0VBQ0U7SUFDRTtFekJnZ1dGO0V5QjkvVkE7SUFDRTtFekJnZ1dGO0FBQ0Y7O0F5QnRnV0E7RUFDRTtJQUNFO0V6QmdnV0Y7RXlCOS9WQTtJQUNFO0V6QmdnV0Y7QUFDRjtBMEJ2b1dFO0VBRUU7QTFCd29XSjtBMEJub1dFO0VBQ0U7RUFDQTtBMUJxb1dKO0EwQmpvV0U7RUFDRSxhckJxRW1CO0FMOGpXdkI7QTBCL25XRTtFQUNFO0ExQmlvV0o7QTBCN25XRTtFQUNFO0ExQituV0o7QTBCM25XSTtFQUNFO0ExQjZuV047QTBCcm5XSTs7O0VBR0Usc0NySHlUd0I7QTJGOHpWOUI7QTBCam5XSTs7RUFFRSxjckhwQ0s7RXFId0NMO0VBQ0E7QTFCZ25XTjtBMEJ4bVdJOzs7RUFLRTtBMUJ3bVdOO0EwQmxtV0k7O0VBRUUsV3pCaERFO0V5Qm9ERjtFQUNBO0ExQmltV047O0EwQnpsV0U7OztFQUlFLG1Cckh3Q0s7QTJGbWpXVDtBMEJ6bFdJOzs7RUFHRTtBMUIybFdOOztBMEJ2bFdFO0VBQ0U7RUFNQSxpQnJCTitCO0FMMmxXbkM7O0EwQmxsV0U7RUFHRTtJQUNFO0lBQ0E7RTFCbWxXSjtBQUNGO0EwQmhsV0U7RUFFRTtJQUVFO0lBQ0E7SUFDQTtFMUJnbFdKOztFMEJua1dROzs7Ozs7Ozs7SUFDRTtJQUNBO0UxQjhrV1Y7RTBCemtXUTs7O0lBR0U7RTFCMmtXVjtFMEJya1dROzs7Ozs7SUFHRTtFMUIwa1dWOztFMEJ2aldNOzs7SUFFRSxjckh0S0M7SXFIeUtEO0UxQnlqV1I7RTBCampXUTs7O0lBRUUsV3pCcktKO0l5QnVLSSx5QnJIdExEO0UyRnl1V1Q7RTBCM2lXTTtJQUlFO0lBQ0E7RTFCMGlXUjtFMEJ0aVdRO0lBSUU7SUFDQTtFMUJxaVdWO0UwQjdoV007SUFDRSxjckhwTkM7SXFId05EO0lBQ0E7RTFCNGhXUjtFMEJ4aFdRO0lBQ0UsV3pCaE5KO0l5Qm9OSTtJQUNBO0UxQnVoV1Y7QUFDRjtBMEJ6L1ZNOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExQjQvVlI7QTBCMS9WUTs7RUFFRTtFQUNBO0ExQjQvVlY7QTBCei9WUTs7RUFFRTtFQUNBO0ExQjIvVlY7QTBCdi9WTTs7RUFDRTtBMUIwL1ZSO0EwQnYvVk07O0VBQ0U7QTFCMC9WUjtBMEJ2L1ZNOztFQUNFO0ExQjAvVlI7QTBCai9WSTs7RUFDRTtBMUJvL1ZOO0EwQmovVkk7O0VBQ0U7QTFCby9WTjtBMEJqL1ZJOztFQUNFO0ExQm8vVk47QTBCNytWSTs7RUFDRTtBMUJnL1ZOO0EwQjcrVkk7O0VBQ0U7QTFCZy9WTjtBMEI3K1ZJOztFQUNFO0ExQmcvVk47QTBCditWUTs7RUFFRTtFQUNBO0ExQnkrVlY7QTBCdCtWUTs7RUFFRTtFQUNBO0ExQncrVlY7O0EwQjk5Vkk7RUFDRTtBMUJpK1ZOO0EwQjM5Vk07RUFDRTtLQUFBO01BQUE7VUFBQTtBMUI2OVZSOztBaEZ4d1dJO0UwR3lUSTtJQUVJO0lBQ0E7RTFCazlWVjtFMEIvOFZVOzs7OztJQUtFO0UxQmk5Vlo7RTBCNzhWVTs7SUFFRTtFMUIrOFZaO0UwQjc4Vlk7Ozs7SUFFRTtFMUJpOVZkO0UwQjU4VlU7SUFDRTtFMUI4OFZaO0UwQnQ4VmdCO0lBQ0U7SUFDQSxVckJ6VFk7SXFCMFRaO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQnc4VmxCO0UwQnA4VmdCO0lBQ0U7SUFDQTtJQUNBO0UxQnM4VmxCO0UwQmw4VmdCO0lBQ0U7SUFDQTtJQUVBO0lBQ0E7RTFCbThWbEI7RTBCOTdWYztJQUVFO0UxQis3VmhCO0UwQjM3VmM7SUFDRTtFMUI2N1ZoQjtFMEJ6N1ZjOztJQUVFO0UxQjI3VmhCO0FBQ0Y7QWhGbjBXSTtFMEd5VEk7SUFFSTtJQUNBO0UxQjRnV1Y7RTBCemdXVTs7Ozs7SUFLRTtFMUIyZ1daO0UwQnZnV1U7O0lBRUU7RTFCeWdXWjtFMEJ2Z1dZOzs7O0lBRUU7RTFCMmdXZDtFMEJ0Z1dVO0lBQ0U7RTFCd2dXWjtFMEJoZ1dnQjtJQUNFO0lBQ0EsVXJCelRZO0lxQjBUWjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUJrZ1dsQjtFMEI5L1ZnQjtJQUNFO0lBQ0E7SUFDQTtFMUJnZ1dsQjtFMEI1L1ZnQjtJQUNFO0lBQ0E7SUFFQTtJQUNBO0UxQjYvVmxCO0UwQngvVmM7SUFFRTtFMUJ5L1ZoQjtFMEJyL1ZjO0lBQ0U7RTFCdS9WaEI7RTBCbi9WYzs7SUFFRTtFMUJxL1ZoQjtBQUNGO0FoRjczV0k7RTBHeVRJO0lBRUk7SUFDQTtFMUJza1dWO0UwQm5rV1U7Ozs7O0lBS0U7RTFCcWtXWjtFMEJqa1dVOztJQUVFO0UxQm1rV1o7RTBCamtXWTs7OztJQUVFO0UxQnFrV2Q7RTBCaGtXVTtJQUNFO0UxQmtrV1o7RTBCMWpXZ0I7SUFDRTtJQUNBLFVyQnpUWTtJcUIwVFo7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFCNGpXbEI7RTBCeGpXZ0I7SUFDRTtJQUNBO0lBQ0E7RTFCMGpXbEI7RTBCdGpXZ0I7SUFDRTtJQUNBO0lBRUE7SUFDQTtFMUJ1aldsQjtFMEJsaldjO0lBRUU7RTFCbWpXaEI7RTBCL2lXYztJQUNFO0UxQmlqV2hCO0UwQjdpV2M7O0lBRUU7RTFCK2lXaEI7QUFDRjtBaEZ2N1dJO0UwR3lUSTtJQUVJO0lBQ0E7RTFCZ29XVjtFMEI3bldVOzs7OztJQUtFO0UxQituV1o7RTBCM25XVTs7SUFFRTtFMUI2bldaO0UwQjNuV1k7Ozs7SUFFRTtFMUIrbldkO0UwQjFuV1U7SUFDRTtFMUI0bldaO0UwQnBuV2dCO0lBQ0U7SUFDQSxVckJ6VFk7SXFCMFRaO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQnNuV2xCO0UwQmxuV2dCO0lBQ0U7SUFDQTtJQUNBO0UxQm9uV2xCO0UwQmhuV2dCO0lBQ0U7SUFDQTtJQUVBO0lBQ0E7RTFCaW5XbEI7RTBCNW1XYztJQUVFO0UxQjZtV2hCO0UwQnptV2M7SUFDRTtFMUIybVdoQjtFMEJ2bVdjOztJQUVFO0UxQnltV2hCO0FBQ0Y7QTBCeHJXUTtFQUVJO0VBQ0E7QTFCeXJXWjtBMEJ0cldZOzs7OztFQUtFO0ExQndyV2Q7QTBCcHJXWTs7RUFFRTtBMUJzcldkO0EwQnByV2M7Ozs7RUFFRTtBMUJ3cldoQjtBMEJucldZO0VBQ0U7QTFCcXJXZDtBMEI3cVdrQjtFQUNFO0VBQ0EsVXJCelRZO0VxQjBUWjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUIrcVdwQjtBMEIzcVdrQjtFQUNFO0VBQ0E7RUFDQTtBMUI2cVdwQjtBMEJ6cVdrQjtFQUNFO0VBQ0E7RUFFQTtFQUNBO0ExQjBxV3BCO0EwQnJxV2dCO0VBRUU7QTFCc3FXbEI7QTBCbHFXZ0I7RUFDRTtBMUJvcVdsQjtBMEJocVdnQjs7RUFFRTtBMUJrcVdsQjs7QTJCaG5YQTtFQUNFO0EzQm1uWEY7QTJCam5YRTs7RUFHRSx5QnRIQ087RXNIQVA7QTNCa25YSjtBMkIvbVhFO0VBQ0U7QTNCaW5YSjtBMkIzbVhJO0VBQ0U7QTNCNm1YTjs7QTJCem1YRTtFQUNFO0EzQjRtWEo7QTJCMW1YSTtFQUNFO0VBQ0E7QTNCNG1YTjtBMkJ4bVhFO0VBQ0U7QTNCMG1YSjtBMkJ2bVhFO0VBQ0U7QTNCeW1YSjs7QTRCNW9YQTtFQUNFO0VBQ0E7RUFDQSxnQnZIczRCa0M7RXVIcjRCbEM7VUFBQTtFQUNBO0VBRUE7RWhIUUU7QW9GdW9YSjtBNEI1b1hFO0VBR0U7QTVCNG9YSjtBNEJ6b1hFO0VBQ0Usc0J2SHkzQmdDO0EyRmt4VnBDO0E0QnZvWEk7RUFDRTtBNUJ5b1hOO0E0QnJvWEU7RUFHRTtBNUJxb1hKO0E0Qm5vWEk7RUFDRTtBNUJxb1hOO0E0QmxvWEk7RUFDRTtBNUJvb1hOOztBNEI3blhFO0VBQ0U7RUFDQTtFQUNBLGNBMEJFO0E1QnNtWE47QTRCOW5YSTtFQUNFLGNBdUJBO0VBdEJBO0VBQ0E7QTVCZ29YTjtBNEJ2blhJO0VBQ0U7QTVCeW5YTjs7QTRCM29YRTtFQUNFO0VBQ0E7RUFDQSxjQTBCRTtBNUJvblhOO0E0QjVvWEk7RUFDRSxjQXVCQTtFQXRCQTtFQUNBO0E1QjhvWE47QTRCcm9YSTtFQUNFO0E1QnVvWE47O0E0QnpwWEU7RUFDRTtFQUNBO0VBQ0EsY0EwQkU7QTVCa29YTjtBNEIxcFhJO0VBQ0UsY0F1QkE7RUF0QkE7RUFDQTtBNUI0cFhOO0E0Qm5wWEk7RUFDRTtBNUJxcFhOOztBNEJ2cVhFO0VBQ0U7RUFDQTtFQUNBLGNBMEJFO0E1QmdwWE47QTRCeHFYSTtFQUNFLGNBdUJBO0VBdEJBO0VBQ0E7QTVCMHFYTjtBNEJqcVhJO0VBQ0U7QTVCbXFYTjs7QTRCcnJYRTtFQUNFO0VBQ0E7RUFDQSxjQTBCRTtBNUI4cFhOO0E0QnRyWEk7RUFDRSxjQXVCQTtFQXRCQTtFQUNBO0E1QndyWE47QTRCL3FYSTtFQUNFO0E1QmlyWE47O0E0Qm5zWEU7RUFDRTtFQUNBO0VBQ0EsY0EwQkU7QTVCNHFYTjtBNEJwc1hJO0VBQ0UsY0F1QkE7RUF0QkE7RUFDQTtBNUJzc1hOO0E0QjdyWEk7RUFDRTtBNUIrclhOOztBNEJqdFhFO0VBQ0U7RUFDQTtFQUNBLGNBMEJFO0E1QjByWE47QTRCbHRYSTtFQUNFLGNBdUJBO0VBdEJBO0VBQ0E7QTVCb3RYTjtBNEIzc1hJO0VBQ0U7QTVCNnNYTjs7QTRCL3RYRTtFQUNFO0VBQ0E7RUFDQSxjQTBCRTtBNUJ3c1hOO0E0Qmh1WEk7RUFDRSxjQXVCQTtFQXRCQTtFQUNBO0E1Qmt1WE47QTRCenRYSTtFQUNFO0E1QjJ0WE47O0E2Qnh4WEE7RUFDRSxheEJvSGlCO0FMdXFYbkI7QTZCenhYRTtFQUNFO0VBQ0E7QTdCMnhYSjtBNkJ6eFhJO0VBQ0U7QTdCMnhYTjs7QTZCNXdYRTtFQVFFO0VBQ0EsWXhCc0ZtQjtFd0JyRm5CLGF4QnFGbUI7RXdCcEZuQjtFQUNBO0VBQ0E7RUFDQTtBN0J3d1hKO0E2QnR3WEk7RUFDRTtFQUNBLGdCeEhnMkI4QjtFd0gvMUI5QjtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7QTdCeXdYTjtBNkJud1hJO0VBQ0U7RUFDQTtBN0Jxd1hOO0E2Qm53WE07OztFQUdFO0VBQ0E7QTdCcXdYUjtBNkJod1hFO0VBSUU7QTdCK3ZYSjtBNkI3dlhJO0VBQ0UsV3hCOENpQjtBTGl0WHZCO0E2QjN2WEU7RUFJRTtBN0IwdlhKO0E2Qnh2WEk7RUFDRSxjeEJtQ2lCO0FMdXRYdkI7QTZCbHZYSTtFQUNFO0E3Qm92WE47QTZCNXVYSTtFQUNFO0E3Qjh1WE47O0E4QjUwWE07RUFHRTtBOUI2MFhSO0E4QnIwWFE7RUFHRTtBOUJxMFhWO0E4Qjl6WE07RUFDRTtFQUNBO0E5QmcwWFI7QThCOXpYUTtFQUNFO0E5QmcwWFY7QStCbjJYQTtFQUNFO0VBQ0EsWTFIMDFCa0M7RTBIeDFCbEM7QS9CbzJYRjtBK0JsMlhFO0VBQ0U7QS9CbzJYSjtBK0JqMlhFO0VBQ0UsWTFIaTFCZ0M7QTJGa2hXcEM7QStCOTFYRTtFQUNFO0EvQmcyWEo7QStCNzFYRTtFQUNFO0EvQisxWEo7QStCMTFYSTtFQUNFO0EvQjQxWE47O0ErQi8wWFE7RUFDRSx5QkFMVztBL0J1MVhyQjtBK0I3MFhRO0VBQ0UsMkJBWFc7QS9CMDFYckI7QStCMTBYUTtFQUNFLDRCQWpCVztBL0I2MVhyQjtBK0J2MFhRO0VBQ0UsMEJBdkJXO0EvQmcyWHJCO0ErQnR6WE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CbzJYckI7O0ErQmgyWFE7RUFDRSx5QkFMVztBL0J3MlhyQjtBK0I5MVhRO0VBQ0UsMkJBWFc7QS9CMjJYckI7QStCMzFYUTtFQUNFLDRCQWpCVztBL0I4MlhyQjtBK0J4MVhRO0VBQ0UsMEJBdkJXO0EvQmkzWHJCO0ErQnYwWE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CcTNYckI7O0ErQmozWFE7RUFDRSx5QkFMVztBL0J5M1hyQjtBK0IvMlhRO0VBQ0UsMkJBWFc7QS9CNDNYckI7QStCNTJYUTtFQUNFLDRCQWpCVztBL0IrM1hyQjtBK0J6MlhRO0VBQ0UsMEJBdkJXO0EvQms0WHJCO0ErQngxWE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CczRYckI7O0ErQmw0WFE7RUFDRSx5QkFMVztBL0IwNFhyQjtBK0JoNFhRO0VBQ0UsMkJBWFc7QS9CNjRYckI7QStCNzNYUTtFQUNFLDRCQWpCVztBL0JnNVhyQjtBK0IxM1hRO0VBQ0UsMEJBdkJXO0EvQm01WHJCO0ErQnoyWE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CdTVYckI7O0ErQm41WFE7RUFDRSx5QkFMVztBL0IyNVhyQjtBK0JqNVhRO0VBQ0UsMkJBWFc7QS9CODVYckI7QStCOTRYUTtFQUNFLDRCQWpCVztBL0JpNlhyQjtBK0IzNFhRO0VBQ0UsMEJBdkJXO0EvQm82WHJCO0ErQjEzWE07RUFDRSxjQTFDZTtFQTJDZix5QkE1Q2E7QS9CdzZYckI7O0ErQnA2WFE7RUFDRSx5QkFMVztBL0I0NlhyQjtBK0JsNlhRO0VBQ0UsMkJBWFc7QS9CKzZYckI7QStCLzVYUTtFQUNFLDRCQWpCVztBL0JrN1hyQjtBK0I1NVhRO0VBQ0UsMEJBdkJXO0EvQnE3WHJCO0ErQjM0WE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CeTdYckI7O0ErQnI3WFE7RUFDRSx5QkFMVztBL0I2N1hyQjtBK0JuN1hRO0VBQ0UsMkJBWFc7QS9CZzhYckI7QStCaDdYUTtFQUNFLDRCQWpCVztBL0JtOFhyQjtBK0I3NlhRO0VBQ0UsMEJBdkJXO0EvQnM4WHJCO0ErQjU1WE07RUFDRSxjQTFDZTtFQTJDZix5QkE1Q2E7QS9CMDhYckI7O0ErQnQ4WFE7RUFDRSx5QkFMVztBL0I4OFhyQjtBK0JwOFhRO0VBQ0UsMkJBWFc7QS9CaTlYckI7QStCajhYUTtFQUNFLDRCQWpCVztBL0JvOVhyQjtBK0I5N1hRO0VBQ0UsMEJBdkJXO0EvQnU5WHJCO0ErQjc2WE07RUFDRSxXQTFDZTtFQTJDZix5QkE1Q2E7QS9CMjlYckI7O0FnQzkvWEU7RUFDRTtFQUNBO0VBR0EsdUIzQndEcUI7QUx1OFh6QjtBZ0M1L1hFO0VBRUU7RUFDQTtVQUFBO0FoQzYvWEo7QWdDMS9YSTtFQU5GO0lBT0k7WUFBQTtFaEM2L1hKO0FBQ0Y7QWdDMS9YRTtFQUVFO0VBQ0E7VUFBQTtBaEMyL1hKO0FnQ3gvWEk7RUFORjtJQU9JO1lBQUE7RWhDMi9YSjtBQUNGO0FnQ3gvWEU7RUFFRTtFQUNBO1VBQUE7QWhDeS9YSjtBZ0N2L1hJO0VBTEY7SUFNSTtZQUFBO0VoQzAvWEo7QUFDRjtBZ0N2L1hFO0VBRUU7RUFDQTtVQUFBO0FoQ3cvWEo7QWdDdC9YSTtFQUxGO0lBTUk7WUFBQTtFaEN5L1hKO0FBQ0Y7QWdDdC9YRTtFQUVFO0VBQ0E7QWhDdS9YSjtBZ0NyL1hJO0VBTEY7SUFNSTtZQUFBO0VoQ3cvWEo7QUFDRjtBZ0NyL1hFO0VBRUU7RUFDQTtVQUFBO0FoQ3MvWEo7QWdDcC9YSTtFQUxGO0lBTUk7WUFBQTtFaEN1L1hKO0FBQ0Y7QWdDcC9YRTtFQUVFO0VBQ0E7QWhDcS9YSjtBZ0NsL1hJO0VBTkY7SUFPSTtZQUFBO0VoQ3EvWEo7QUFDRjtBZ0NsL1hFO0VBRUU7RUFDQTtVQUFBO0FoQ20vWEo7QWdDaC9YSTtFQU5GO0lBT0k7WUFBQTtFaENtL1hKO0FBQ0Y7O0FnQzkrWEE7RUFDRTtJQUNFO0VoQ2kvWEY7RWdDLytYQTtJQUNFO0VoQ2kvWEY7QUFDRjs7QWdDdi9YQTtFQUNFO0lBQ0U7RWhDaS9YRjtFZ0MvK1hBO0lBQ0U7RWhDaS9YRjtBQUNGO0FnQzkrWEE7RUFDRTtJQUNFO0VoQ2cvWEY7RWdDOStYQTtJQUNFO0VoQ2cvWEY7QUFDRjtBZ0N0L1hBO0VBQ0U7SUFDRTtFaENnL1hGO0VnQzkrWEE7SUFDRTtFaENnL1hGO0FBQ0Y7QWdDNytYQTtFQUNFO0lBQ0U7RWhDKytYRjtFZ0M3K1hBO0lBQ0U7RWhDKytYRjtBQUNGO0FnQ3IvWEE7RUFDRTtJQUNFO0VoQysrWEY7RWdDNytYQTtJQUNFO0VoQysrWEY7QUFDRjtBZ0M1K1hBO0VBQ0U7SUFDRTtFaEM4K1hGO0VnQzUrWEE7SUFDRTtFaEM4K1hGO0FBQ0Y7QWdDcC9YQTtFQUNFO0lBQ0U7RWhDOCtYRjtFZ0M1K1hBO0lBQ0U7RWhDOCtYRjtBQUNGO0FnQzMrWEE7RUFDRTtJQUNFO0lBQ0E7RWhDNitYRjtFZ0MzK1hBO0lBQ0U7SUFDQTtFaEM2K1hGO0FBQ0Y7QWdDci9YQTtFQUNFO0lBQ0U7SUFDQTtFaEM2K1hGO0VnQzMrWEE7SUFDRTtJQUNBO0VoQzYrWEY7QUFDRjtBZ0NuK1hJOzs7OztFQUNFO0VBQ0E7QWhDeStYTjs7QUE5bFlBO0VBQ0k7RUFDQTtBQWltWUo7QUE3bFlBO0VBRVE7SUFDSTtJQUNBO0VBOGxZVjtBQUNGO0FBemxZQTtFQUNJO0VBQ0E7RUFDQTtBQTJsWUo7QUExbFlJO0VBQ0k7QUE0bFlSOztBQXRsWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBeWxZUjtBQXZsWVE7RUFDSTtBQXlsWVo7QUF2bFlZO0VBQ0k7QUF5bFloQjtBQXBsWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFzbFlSO0FBcGxZUTtFQUNJO0FBc2xZWjtBQXBsWVk7RUFDSTtBQXNsWWhCO0FBaGxZUTtFQUNJO0FBa2xZWjs7QUE1a1lBO0VBQ0k7RUFDQTtBQStrWUo7O0FBN2tZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBZ2xZSjs7QUE5a1lBO0VBQ0k7RUFDQTtFQUNBO0FBaWxZSjs7QUEva1lBO0VBQ0k7RUFDQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0FBa2xZSjtBQS9rWVE7RUFDSTtFQUNBO0VBQ0E7QUFpbFlaOztBQTFrWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FBNGtZUjtBQTFrWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTRrWVo7QUF2a1lJO0VBQ0k7QUF5a1lSO0FBdmtZUTtFQUNJO0VBQ0E7QUF5a1laO0FBcmtZb0I7RUFDSTtBQXVrWXhCO0FBcGtZZ0I7RUFDSSx5QkN4SWI7QUQ4c1lQO0FBbGtZWTtFQUNJO0FBb2tZaEI7QUFqa1lZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7R0FBQTtPQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW1rWWhCO0FBaGtZWTtFQUNJO0FBa2tZaEI7QUFqa1lnQjtFQUNJO0FBbWtZcEI7QUFqa1lnQjtFQUNJO0FBbWtZcEI7QUE1allJO0VBQ0k7QUE4allSO0FBNWpZUTtFQUNJO0VBQ0E7QUE4allaO0FBdGpZZ0I7RUFDSSx5QkMxTGI7QURrdllQO0FBcGpZWTtFQUNJO0FBc2pZaEI7QUFuallZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7R0FBQTtPQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXFqWWhCO0FBbGpZWTtFQUNJO0FBb2pZaEI7QUFuallnQjtFQUNJO0FBcWpZcEI7QUFuallnQjtFQUNJO0FBcWpZcEI7QUE3aVlRO0VBQ0k7RUFDQTtFQUNBO0FBK2lZWjtBQTdpWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQStpWVo7QUExaVlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUE0aVlSO0FBdmlZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXlpWVo7QUFyaVlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdWlZUjtBQXJpWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF1aVlaO0FBcGlZUTtFQUNJO0FBc2lZWjs7QUEvaFlJO0V0RTlURjtFRkFFLHlCeUVvQ0k7RXZFbENOLHFCdUVrQ007RURnU0E7QUFnaVlSO0F6RjkxWUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRTAyWXpHO0F0RTkxWUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFMjFZTjtBdEV0MVlFO0VBRUU7RUFDQSx5QnVFUUk7RXZFUEoscUJ1RU9JO0FEZzFZUjtBdEVoMVlFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRTAzWTdMO0F0RTMwWUk7RUFLSTtBc0V5MFlSO0FBdGpZSTtFQUNJO0VBQ0E7QUF3allSO0FBdGpZUTtFQUNJO0VBQ0E7QUF3allaO0FBcmpZSTtFQUNJO0VBQ0E7QUF1allSO0FBcmpZUTtFQUNJO0VBQ0E7QUF1allaO0FBcGpZSTtFQUNJO0VBQ0E7QUFzallSO0FBcGpZUTtFQUNJO0VBQ0E7QUFzallaO0FBbGpZUTtFQUNJO0VBQ0E7QUFvallaO0FBbGpZWTtFQUNJO0VBQ0E7QUFvalloQjtBQWhqWUk7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFpallSO0FBL2lZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBaWpZWjtBQTdpWVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQStpWVo7QUE3aVlRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUEraVlaO0FBMWlZWTtFQUNJO0VBQ0E7QUE0aVloQjs7QUFsaVlRO0VBQ0k7QUFxaVlaO0FBaGlZWTtFQUNJO0VBQ0E7RUFDQTtBQWtpWWhCOztBQTNoWUk7RUFDSTtFQUNBO0VBQ0E7QUE4aFlSOztBQTFoWUE7RUFDSTtBQTZoWUo7QUE1aFlJO0VBQ0k7RUFDQTtFQUNBO0FBOGhZUjs7QUEzaFlBO0VBQ0k7QUE4aFlKOztBQXJoWWdCO0V0RWpjZDtFRkFFLHlCeUVvQ0k7RXZFbENOLHFCdUVrQ007QUR3N1lSO0F6RnQ5WUU7RW1CQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0FzRWsrWXpHO0F0RXQ5WUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXNFbTlZTjtBdEU5OFlFO0VBRUU7RUFDQSx5QnVFUUk7RXZFUEoscUJ1RU9JO0FEdzhZUjtBdEV4OFlFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0FzRWsvWTdMO0F0RW44WUk7RUFLSTtBc0VpOFlSO0FBNWlZZ0I7RUFDSTtFdEUvWWxCLGN1RTlCVTtFdkUrQlYscUJ1RS9CVTtBRDY5WVo7QXpGbi9ZRTtFbUJ3REUsV0FMZ0Q7RUFNaEQseUJ1RW5DUTtFdkVvQ1IscUJ1RXBDUTtBRGsrWVo7QXRFMzdZRTtFQUVFO0FzRTQ3WUo7QXRFejdZRTtFQUVFLGN1RTlDUTtFdkUrQ1I7QXNFMDdZSjtBdEV2N1lFO0VBR0U7RUFDQSx5QnVFdERRO0V2RXVEUixxQnVFdkRRO0FEOCtZWjtBdEVyN1lJO0VBS0k7QXNFbTdZUjtBQXBqWWdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFzallwQjtBQW5qWWdCO0VBQ0k7RUFDQTtFQUNBO0FBcWpZcEI7QUE5aFlBO0VBQ0k7QUFnaVlKOztBQTloWUE7RUFDSTtBQWlpWUo7O0FBL2hZQTtFQUNJO0FBa2lZSjs7QUFoaVlBO0VBQ0k7QUFtaVlKOztBQWppWUE7RUFDSTtBQW9pWUo7O0FBbGlZQTtFQUNJO0FBcWlZSjs7QUFuaVlBO0VBQ0k7QUFzaVlKOztBQXBpWUE7RUFDSTtBQXVpWUo7O0FBcmlZQTtFQUNJO0FBd2lZSjs7QUF0aVlBO0VBQ0k7QUF5aVlKOztBQXZpWUE7RUFDSTtBQTBpWUo7O0FBeGlZQTtFQUNJO0FBMmlZSjs7QUF6aVlBO0VBQ0k7QUE0aVlKOztBQTFpWUE7RUFDSTtBQTZpWUo7O0FBM2lZQTtFQUNJO0FBOGlZSjs7QUExaVlRO0VBQ0k7QUE2aVlaOztBQTNpWVE7RUFDSTtBQThpWVo7O0FBNWlZUTtFQUNJO0FBK2lZWjs7QUE3aVlRO0VBQ0k7QUFnallaOztBQTlpWVE7RUFDSTtBQWlqWVo7O0FoRmpqWkk7RWdGbWZJO0lBQ0k7RUFra1lWOztFQWhrWU07SUFDSTtFQW1rWVY7O0VBamtZTTtJQUNJO0VBb2tZVjs7RUFsa1lNO0lBQ0k7RUFxa1lWOztFQW5rWU07SUFDSTtFQXNrWVY7QUFDRjtBaEZ2a1pJO0VnRm1mSTtJQUNJO0VBdWxZVjs7RUFybFlNO0lBQ0k7RUF3bFlWOztFQXRsWU07SUFDSTtFQXlsWVY7O0VBdmxZTTtJQUNJO0VBMGxZVjs7RUF4bFlNO0lBQ0k7RUEybFlWO0FBQ0Y7QWhGNWxaSTtFZ0ZtZkk7SUFDSTtFQTRtWVY7O0VBMW1ZTTtJQUNJO0VBNm1ZVjs7RUEzbVlNO0lBQ0k7RUE4bVlWOztFQTVtWU07SUFDSTtFQSttWVY7O0VBN21ZTTtJQUNJO0VBZ25ZVjtBQUNGO0FoRmpuWkk7RWdGbWZJO0lBQ0k7RUFpb1lWOztFQS9uWU07SUFDSTtFQWtvWVY7O0VBaG9ZTTtJQUNJO0VBbW9ZVjs7RUFqb1lNO0lBQ0k7RUFvb1lWOztFQWxvWU07SUFDSTtFQXFvWVY7QUFDRjtBQWhvWUE7RUFDSTtBQWtvWUo7O0FBaG9ZQTtFQUNJO0FBbW9ZSjs7QUFqb1lBO0VBQ0k7QUFvb1lKOztBQWxvWUE7RUFDSTtBQXFvWUo7O0FBbm9ZQTtFQUNJO0FBc29ZSjs7QUFwb1lBO0VBQ0k7RUFDQTtBQXVvWUo7O0FBcm9ZQTtFQUNJO0VBQ0E7QUF3b1lKOztBQXRvWUE7RUFDSTtFQUNBO0FBeW9ZSjs7QUF2b1lBO0VBQ0k7RUFDQTtBQTBvWUo7O0FBeG9ZQTtFQUNJO0VBQ0E7QUEyb1lKOztBQXpvWUE7RUFDSTtFQUNBO0FBNG9ZSjs7QUExb1lBO0VBQ0k7RUFDQTtBQTZvWUo7O0FBM29ZQTtFQUNJO0VBQ0E7QUE4b1lKOztBQTVvWUE7RUFDSTtFQUNBO0FBK29ZSjs7QUE3b1lBO0VBQ0k7RUFDQTtBQWdwWUo7O0FBNW9ZQTtFQUNJO0FBK29ZSjs7QUE3b1lBO0VBQ0k7QUFncFlKOztBQTlvWUE7RUFDSTtBQWlwWUo7O0FBL29ZQTtFQUNJO0FBa3BZSjs7QUE5b1lBO0VBQ0k7QUFpcFlKOztBQS9vWUE7RUFDSTtBQWtwWUo7O0FBaHBZQTtFQUNJO0FBbXBZSjs7QUFqcFlBO0VBQ0k7QUFvcFlKOztBQWxwWUE7RUFDSTtBQXFwWUo7O0FBbnBZQTtFQUNJO0FBc3BZSjs7QUFwcFlBO0VBQ0k7QUF1cFlKOztBQXJwWUE7RUFDSTtBQXdwWUo7O0FBdHBZQTtFQUNJO0FBeXBZSjs7QUF2cFlBO0VBQ0k7QUEwcFlKOztBQXhwWUE7RUFDSTtBQTJwWUo7O0FBenBZQTtFQUNJO0FBNHBZSjs7QUF4cFlBO0VBQ0k7QUEycFlKOztBQXZwWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQTBwWUo7O0FBeHBZQTs7RUFHSTtBQTBwWUo7O0FBeHBZQTs7RUFHSTtBQTBwWUo7O0FBeHBZQTs7RUFHSTtBQTBwWUo7O0FBanBZZ0I7RUFBZ0M7QUFxcFloRDs7QUFycFlnQjtFQUFnQztBQXlwWWhEOztBQXpwWWdCO0VBQWdDO0FBNnBZaEQ7O0FBN3BZZ0I7RUFBZ0M7QUFpcVloRDs7QUFqcVlnQjtFQUFnQztBQXFxWWhEOztBQXJxWWdCO0VBQWdDO0FBeXFZaEQ7O0FBenFZZ0I7RUFBZ0M7QUE2cVloRDs7QUE3cVlnQjtFQUFnQztBQWlyWWhEOztBQWpyWWdCO0VBQWdDO0FBcXJZaEQ7O0FBcnJZZ0I7RUFBZ0M7QUF5clloRDs7QWhGNzBaSTtFZ0ZvcEJZO0lBQWdDO0VBOHJZOUM7O0VBOXJZYztJQUFnQztFQWtzWTlDOztFQWxzWWM7SUFBZ0M7RUFzc1k5Qzs7RUF0c1ljO0lBQWdDO0VBMHNZOUM7O0VBMXNZYztJQUFnQztFQThzWTlDOztFQTlzWWM7SUFBZ0M7RUFrdFk5Qzs7RUFsdFljO0lBQWdDO0VBc3RZOUM7O0VBdHRZYztJQUFnQztFQTB0WTlDOztFQTF0WWM7SUFBZ0M7RUE4dFk5Qzs7RUE5dFljO0lBQWdDO0VBa3VZOUM7QUFDRjtBaEZ2M1pJO0VnRm9wQlk7SUFBZ0M7RUF1dVk5Qzs7RUF2dVljO0lBQWdDO0VBMnVZOUM7O0VBM3VZYztJQUFnQztFQSt1WTlDOztFQS91WWM7SUFBZ0M7RUFtdlk5Qzs7RUFudlljO0lBQWdDO0VBdXZZOUM7O0VBdnZZYztJQUFnQztFQTJ2WTlDOztFQTN2WWM7SUFBZ0M7RUErdlk5Qzs7RUEvdlljO0lBQWdDO0VBbXdZOUM7O0VBbndZYztJQUFnQztFQXV3WTlDOztFQXZ3WWM7SUFBZ0M7RUEyd1k5QztBQUNGO0FoRmg2Wkk7RWdGb3BCWTtJQUFnQztFQWd4WTlDOztFQWh4WWM7SUFBZ0M7RUFveFk5Qzs7RUFweFljO0lBQWdDO0VBd3hZOUM7O0VBeHhZYztJQUFnQztFQTR4WTlDOztFQTV4WWM7SUFBZ0M7RUFneVk5Qzs7RUFoeVljO0lBQWdDO0VBb3lZOUM7O0VBcHlZYztJQUFnQztFQXd5WTlDOztFQXh5WWM7SUFBZ0M7RUE0eVk5Qzs7RUE1eVljO0lBQWdDO0VBZ3pZOUM7O0VBaHpZYztJQUFnQztFQW96WTlDO0FBQ0Y7QWhGejhaSTtFZ0ZvcEJZO0lBQWdDO0VBeXpZOUM7O0VBenpZYztJQUFnQztFQTZ6WTlDOztFQTd6WWM7SUFBZ0M7RUFpMFk5Qzs7RUFqMFljO0lBQWdDO0VBcTBZOUM7O0VBcjBZYztJQUFnQztFQXkwWTlDOztFQXowWWM7SUFBZ0M7RUE2MFk5Qzs7RUE3MFljO0lBQWdDO0VBaTFZOUM7O0VBajFZYztJQUFnQztFQXExWTlDOztFQXIxWWM7SUFBZ0M7RUF5MVk5Qzs7RUF6MVljO0lBQWdDO0VBNjFZOUM7QUFDRjtBQXYxWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQXkxWUo7O0FBcDFZWTtFQUNJO0VBQ0E7QUF1MVloQjs7QUEvMFlBO0VBQ0k7RUFDQTtBQWsxWUo7O0FBaDFZQTtFQUNJO0lBQUk7RUFvMVlOO0VBbjFZRTtJQUFNO0VBczFZUjtBQUNGO0FBcjFZQTtFQUNJO0lBQUk7RUF3MVlOO0VBdjFZRTtJQUFNO0VBMDFZUjtBQUNGLEM7QWlDenlaSTtFQUNJO0FBclNSO0FBMFNRO0VBQ0k7QUF4U1o7QUEyU1E7RUFDSTtBQXpTWjtBQTRTUTtFQUNJO0FBMVNaLEM7QUFYQSxnQkFBZ0I7QUE4VFI7RUFDSTtFQUNBO0VBQ0E7QUE1VFo7QUFpVVk7RUFDSTtFQUNBO0FBL1RoQjtBQWlVWTtFQUNJO0FBL1RoQjtBQWlVZ0I7RUFDSTtBQS9UcEIsQztBQzJEQTtFQUNJO0FBekVKO0FBOEVJO0VBQ0k7QUE1RVI7QUErRUk7RUFDSTtBQTdFUjtBQWdGSTtFQUNJO0FBOUVSLEM7QUNvZUE7RUFDSTtBQTllSjtBQW1mSTtFQUNJO0FBamZSO0FBb2ZJO0VBQ0k7QUFsZlI7QUFxZkk7RUFDSTtBQW5mUixDO0FDa0RJO0VBQ0k7QUE1RFIsQzs7QUM0UkE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOzs7QUN6Q0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQ3dZQTtFQUNJO0VBQ0E7QUE5cEJKO0FBZ3FCQTtFQUNJO0VBQ0E7QUE3cEJKLEM7O0FDMkpBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTtBQUNBO0lBQ0E7QUFDQTs7QUM0RUE7RUFDSTtFQUNBO0FBbFFKO0FBb1FBO0VBQ0k7RUFDQTtBQWpRSjtBQW1RQTtFQUNJO0FBaFFKLEM7O0FDeUhBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTs7QUNnSEE7RUFDSTtFQUNBO0FBclFKO0FBdVFBO0VBQ0k7RUFDQTtBQXBRSjtBQXVRSTtFQUNJO0VBQ0E7QUFwUVI7QUFzUUk7RUFDSTtBQXBRUjtBQXNRUTtFQUNJO0FBcFFaLEM7QUMyT0E7RUFDSTtFQUNBO0FBN1BKO0FBK1BBO0VBQ0k7RUFDQTtBQTVQSjtBQThQQTtFQUNJO0VBQ0E7QUEzUEosQzs7QUM0SkE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQytIQTtFQUNJO0VBQ0E7QUF4VEo7QUEwVEE7RUFDSTtFQUNBO0FBdlRKO0FBeVRBO0VBQ0k7RUFDQTtBQXRUSixDO0FDc01BO0VBQ0k7RUFDQTtBQWxOSjtBQW9OQTtFQUNJO0VBQ0E7QUFqTko7QUFtTkE7RUFDSTtFQUNBO0FBaE5KLEM7O0FDMkdBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTs7QUM0M0JZO0VBQ0k7QUFwZ0NoQjtBQW1nQ1k7RUFDSTtBQWpnQ2hCO0FBZ2dDWTtFQUNJO0FBOS9CaEI7QUE2L0JZO0VBQ0k7QUEzL0JoQjtBQTAvQlk7RUFDSTtBQXgvQmhCO0FBdS9CWTtFQUNJO0FBci9CaEI7QUFvL0JZO0VBQ0k7QUFsL0JoQjtBQWkvQlk7RUFDSTtBQS8rQmhCO0FBOCtCWTtFQUNJO0FBNStCaEI7QUEyK0JZO0VBQ0k7QUF6K0JoQjtBQXcrQlk7RUFDSTtBQXQrQmhCO0FBcStCWTtFQUNJO0FBbitCaEI7QUFrK0JZO0VBQ0k7QUFoK0JoQjtBQSs5Qlk7RUFDSTtBQTc5QmhCO0FBNDlCWTtFQUNJO0FBMTlCaEI7QUF5OUJZO0VBQ0k7QUF2OUJoQjtBQXM5Qlk7RUFDSTtBQXA5QmhCO0FBbTlCWTtFQUNJO0FBajlCaEI7QUFnOUJZO0VBQ0k7QUE5OEJoQjtBQTY4Qlk7RUFDSTtBQTM4QmhCO0FBMDhCWTtFQUNJO0FBeDhCaEI7QUF1OEJZO0VBQ0k7QUFyOEJoQjtBQW84Qlk7RUFDSTtBQWw4QmhCO0FBaThCWTtFQUNJO0FBLzdCaEI7QUE4N0JZO0VBQ0k7QUE1N0JoQjtBQTI3Qlk7RUFDSTtBQXo3QmhCO0FBdzdCWTtFQUNJO0FBdDdCaEI7QUFxN0JZO0VBQ0k7QUFuN0JoQjtBQWs3Qlk7RUFDSTtBQWg3QmhCO0FBKzZCWTtFQUNJO0FBNzZCaEI7QUE0NkJZO0VBQ0k7QUExNkJoQjtBQXk2Qlk7RUFDSTtBQXY2QmhCO0FBczZCWTtFQUNJO0FBcDZCaEI7QUFtNkJZO0VBQ0k7QUFqNkJoQjtBQWc2Qlk7RUFDSTtBQTk1QmhCO0FBNjVCWTtFQUNJO0FBMzVCaEI7QUEwNUJZO0VBQ0k7QUF4NUJoQjtBQXU1Qlk7RUFDSTtBQXI1QmhCO0FBbzVCWTtFQUNJO0FBbDVCaEI7QUFpNUJZO0VBQ0k7QUEvNEJoQjtBQTg0Qlk7RUFDSTtBQTU0QmhCO0FBMjRCWTtFQUNJO0FBejRCaEI7QUF3NEJZO0VBQ0k7QUF0NEJoQjtBQXE0Qlk7RUFDSTtBQW40QmhCO0FBazRCWTtFQUNJO0FBaDRCaEI7QUErM0JZO0VBQ0k7QUE3M0JoQjtBQTQzQlk7RUFDSTtBQTEzQmhCO0FBeTNCWTtFQUNJO0FBdjNCaEI7QUFzM0JZO0VBQ0k7QUFwM0JoQjtBQW0zQlk7RUFDSTtBQWozQmhCO0FBZzNCWTtFQUNJO0FBOTJCaEI7QUE2MkJZO0VBQ0k7QUEzMkJoQjtBQTAyQlk7RUFDSTtBQXgyQmhCO0FBdTJCWTtFQUNJO0FBcjJCaEI7QUFvMkJZO0VBQ0k7QUFsMkJoQjtBQWkyQlk7RUFDSTtBQS8xQmhCO0FBODFCWTtFQUNJO0FBNTFCaEI7QUEyMUJZO0VBQ0k7QUF6MUJoQjtBQXcxQlk7RUFDSTtBQXQxQmhCO0FBcTFCWTtFQUNJO0FBbjFCaEI7QUFrMUJZO0VBQ0k7QUFoMUJoQjtBQSswQlk7RUFDSTtBQTcwQmhCO0FBNDBCWTtFQUNJO0FBMTBCaEI7QUF5MEJZO0VBQ0k7QUF2MEJoQjtBQXMwQlk7RUFDSTtBQXAwQmhCO0FBbTBCWTtFQUNJO0FBajBCaEI7QUFnMEJZO0VBQ0k7QUE5ekJoQjtBQTZ6Qlk7RUFDSTtBQTN6QmhCO0FBMHpCWTtFQUNJO0FBeHpCaEI7QUF1ekJZO0VBQ0k7QUFyekJoQjtBQW96Qlk7RUFDSTtBQWx6QmhCO0FBaXpCWTtFQUNJO0FBL3lCaEI7QUE4eUJZO0VBQ0k7QUE1eUJoQjtBQTJ5Qlk7RUFDSTtBQXp5QmhCO0FBd3lCWTtFQUNJO0FBdHlCaEI7QUFxeUJZO0VBQ0k7QUFueUJoQjtBQWt5Qlk7RUFDSTtBQWh5QmhCO0FBMjBCd0I7RUFDSTtBQXowQjVCO0FBNHhCWTtFQUNJO0FBenhCaEI7QUF3eEJZO0VBQ0k7QUF0eEJoQjtBQXF4Qlk7RUFDSTtBQW54QmhCO0FBa3hCWTtFQUNJO0FBaHhCaEI7QUErd0JZO0VBQ0k7QUE3d0JoQjtBQTR3Qlk7RUFDSTtBQTF3QmhCO0FBeXdCWTtFQUNJO0FBdndCaEI7QUFzd0JZO0VBQ0k7QUFwd0JoQjtBQW13Qlk7RUFDSTtBQWp3QmhCO0FBZ3dCWTtFQUNJO0FBOXZCaEI7QUE2dkJZO0VBQ0k7QUEzdkJoQjtBQTB2Qlk7RUFDSTtBQXh2QmhCO0FBdXZCWTtFQUNJO0FBcnZCaEI7QUFvdkJZO0VBQ0k7QUFsdkJoQjtBQWl2Qlk7RUFDSTtBQS91QmhCO0FBOHVCWTtFQUNJO0FBNXVCaEI7QUEydUJZO0VBQ0k7QUF6dUJoQjtBQXd1Qlk7RUFDSTtBQXR1QmhCO0FBcXVCWTtFQUNJO0FBbnVCaEI7QUFrdUJZO0VBQ0k7QUFodUJoQjtBQSt0Qlk7RUFDSTtBQTd0QmhCO0FBNHRCWTtFQUNJO0FBMXRCaEI7QUF5dEJZO0VBQ0k7QUF2dEJoQjtBQXN0Qlk7RUFDSTtBQXB0QmhCO0FBbXRCWTtFQUNJO0FBanRCaEI7QUFndEJZO0VBQ0k7QUE5c0JoQjtBQTZzQlk7RUFDSTtBQTNzQmhCO0FBMHNCWTtFQUNJO0FBeHNCaEI7QUF1c0JZO0VBQ0k7QUFyc0JoQjtBQW9zQlk7RUFDSTtBQWxzQmhCO0FBaXNCWTtFQUNJO0FBL3JCaEI7QUE4ckJZO0VBQ0k7QUE1ckJoQjtBQTJyQlk7RUFDSTtBQXpyQmhCO0FBd3JCWTtFQUNJO0FBdHJCaEI7QUFxckJZO0VBQ0k7QUFuckJoQjtBQWtyQlk7RUFDSTtBQWhyQmhCO0FBK3FCWTtFQUNJO0FBNXFCaEI7QUEycUJZO0VBQ0k7QUF6cUJoQjtBQXdxQlk7RUFDSTtBQXRxQmhCO0FBcXFCWTtFQUNJO0FBbnFCaEI7QUFrcUJZO0VBQ0k7QUFocUJoQjtBQStwQlk7RUFDSTtBQTdwQmhCO0FBNHBCWTtFQUNJO0FBMXBCaEI7QUF5cEJZO0VBQ0k7QUF2cEJoQjtBQXNwQlk7RUFDSTtBQXBwQmhCO0FBbXBCWTtFQUNJO0FBanBCaEI7QUFncEJZO0VBQ0k7QUE5b0JoQjtBQTZvQlk7RUFDSTtBQTNvQmhCO0FBMG9CWTtFQUNJO0FBeG9CaEI7QUF1b0JZO0VBQ0k7QUFyb0JoQjtBQW9vQlk7RUFDSTtBQWxvQmhCO0FBaW9CWTtFQUNJO0FBL25CaEI7QUE4bkJZO0VBQ0k7QUE1bkJoQjtBQTJuQlk7RUFDSTtBQXpuQmhCO0FBd25CWTtFQUNJO0FBdG5CaEI7QUFxbkJZO0VBQ0k7QUFubkJoQjtBQWtuQlk7RUFDSTtBQWhuQmhCO0FBK21CWTtFQUNJO0FBN21CaEI7QUE0bUJZO0VBQ0k7QUExbUJoQjtBQXltQlk7RUFDSTtBQXZtQmhCO0FBc21CWTtFQUNJO0FBcG1CaEI7QUFtbUJZO0VBQ0k7QUFqbUJoQjtBQWdtQlk7RUFDSTtBQTlsQmhCO0FBNmxCWTtFQUNJO0FBM2xCaEI7QUEwbEJZO0VBQ0k7QUF4bEJoQjtBQXVsQlk7RUFDSTtBQXJsQmhCO0FBb2xCWTtFQUNJO0FBbGxCaEI7QUFpbEJZO0VBQ0k7QUEva0JoQjtBQThrQlk7RUFDSTtBQTVrQmhCO0FBMmtCWTtFQUNJO0FBemtCaEI7QUF3a0JZO0VBQ0k7QUF0a0JoQjtBQXFrQlk7RUFDSTtBQW5rQmhCLEM7O0FDM1VBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7OztBQUlBO0lBQ0E7QUFDQTs7O0FDQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQ2VBO0VBQ0k7RUFDQTtBQXpLSjtBQTJLQTtFQUNJO0VBQ0E7QUF4S0osQztBQ2lISTtFQUNJO0FBeEhSLEM7QUNpR0E7RUFDSTtFQUNBO0FBbEdKO0FBb0dBO0VBQ0k7RUFDQTtBQWpHSixDO0FDaUhJO0VBQ0k7QUF4SFIsQzs7QUNtSkE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOzs7QUM1SEE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBQ0E7SUFDQTtJQUNBO0lBQ0E7T0FBQTtBQUNBOzs7QUFxREE7SUFDQTtJQUNBO0FBQ0E7QUFDQTtJQUNBO0FBQ0E7OztBQ3VDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBOzs7QUFJQTtJQUNBO0FBQ0E7OztBQzVCQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBOzs7QUFJQTtJQUNBO0FBQ0E7O0FDK21DQTtFQUNJO0VBQ0E7QUExd0NKO0FBNHdDQTtFQUNJO0VBQ0E7QUF6d0NKLEM7QUMrK0JZO0VBQ0k7QUF0L0JoQjtBQXEvQlk7RUFDSTtBQW4vQmhCO0FBay9CWTtFQUNJO0FBaC9CaEI7QUErK0JZO0VBQ0k7QUE3K0JoQjtBQTQrQlk7RUFDSTtBQTErQmhCO0FBeStCWTtFQUNJO0FBditCaEI7QUFzK0JZO0VBQ0k7QUFwK0JoQjtBQW0rQlk7RUFDSTtBQWorQmhCO0FBZytCWTtFQUNJO0FBOTlCaEI7QUE2OUJZO0VBQ0k7QUEzOUJoQjtBQTA5Qlk7RUFDSTtBQXg5QmhCO0FBdTlCWTtFQUNJO0FBcjlCaEI7QUFvOUJZO0VBQ0k7QUFsOUJoQjtBQWk5Qlk7RUFDSTtBQS84QmhCO0FBODhCWTtFQUNJO0FBNThCaEI7QUEyOEJZO0VBQ0k7QUF6OEJoQjtBQXc4Qlk7RUFDSTtBQXQ4QmhCO0FBcThCWTtFQUNJO0FBbjhCaEI7QUFrOEJZO0VBQ0k7QUFoOEJoQjtBQSs3Qlk7RUFDSTtBQTc3QmhCO0FBNDdCWTtFQUNJO0FBMTdCaEI7QUF5N0JZO0VBQ0k7QUF2N0JoQjtBQXM3Qlk7RUFDSTtBQXA3QmhCO0FBbTdCWTtFQUNJO0FBajdCaEI7QUFnN0JZO0VBQ0k7QUE5NkJoQjtBQTY2Qlk7RUFDSTtBQTM2QmhCO0FBMDZCWTtFQUNJO0FBeDZCaEI7QUF1NkJZO0VBQ0k7QUFyNkJoQjtBQW82Qlk7RUFDSTtBQWw2QmhCO0FBaTZCWTtFQUNJO0FBLzVCaEI7QUE4NUJZO0VBQ0k7QUE1NUJoQjtBQTI1Qlk7RUFDSTtBQXo1QmhCO0FBdzVCWTtFQUNJO0FBdDVCaEI7QUFxNUJZO0VBQ0k7QUFuNUJoQjtBQWs1Qlk7RUFDSTtBQWg1QmhCO0FBKzRCWTtFQUNJO0FBNzRCaEI7QUE0NEJZO0VBQ0k7QUExNEJoQjtBQXk0Qlk7RUFDSTtBQXY0QmhCO0FBczRCWTtFQUNJO0FBcDRCaEI7QUFtNEJZO0VBQ0k7QUFqNEJoQjtBQWc0Qlk7RUFDSTtBQTkzQmhCO0FBNjNCWTtFQUNJO0FBMzNCaEI7QUEwM0JZO0VBQ0k7QUF4M0JoQjtBQXUzQlk7RUFDSTtBQXIzQmhCO0FBbzNCWTtFQUNJO0FBbDNCaEI7QUFpM0JZO0VBQ0k7QUEvMkJoQjtBQTgyQlk7RUFDSTtBQTUyQmhCO0FBMjJCWTtFQUNJO0FBejJCaEI7QUF3MkJZO0VBQ0k7QUF0MkJoQjtBQXEyQlk7RUFDSTtBQW4yQmhCO0FBazJCWTtFQUNJO0FBaDJCaEI7QUErMUJZO0VBQ0k7QUE3MUJoQjtBQTQxQlk7RUFDSTtBQTExQmhCO0FBeTFCWTtFQUNJO0FBdjFCaEI7QUFzMUJZO0VBQ0k7QUFwMUJoQjtBQW0xQlk7RUFDSTtBQWoxQmhCO0FBZzFCWTtFQUNJO0FBOTBCaEI7QUE2MEJZO0VBQ0k7QUEzMEJoQjtBQTAwQlk7RUFDSTtBQXgwQmhCO0FBdTBCWTtFQUNJO0FBcjBCaEI7QUFnM0J3QjtFQUNJO0FBOTJCNUI7QUFpMEJZO0VBQ0k7QUE5ekJoQjtBQTZ6Qlk7RUFDSTtBQTN6QmhCO0FBMHpCWTtFQUNJO0FBeHpCaEI7QUF1ekJZO0VBQ0k7QUFyekJoQjtBQW96Qlk7RUFDSTtBQWx6QmhCO0FBaXpCWTtFQUNJO0FBL3lCaEI7QUE4eUJZO0VBQ0k7QUE1eUJoQjtBQTJ5Qlk7RUFDSTtBQXp5QmhCO0FBd3lCWTtFQUNJO0FBdHlCaEI7QUFxeUJZO0VBQ0k7QUFueUJoQjtBQWt5Qlk7RUFDSTtBQWh5QmhCO0FBK3hCWTtFQUNJO0FBN3hCaEI7QUE0eEJZO0VBQ0k7QUExeEJoQjtBQXl4Qlk7RUFDSTtBQXZ4QmhCO0FBc3hCWTtFQUNJO0FBcHhCaEI7QUFteEJZO0VBQ0k7QUFqeEJoQjtBQWd4Qlk7RUFDSTtBQTl3QmhCO0FBNndCWTtFQUNJO0FBM3dCaEI7QUEwd0JZO0VBQ0k7QUF4d0JoQjtBQXV3Qlk7RUFDSTtBQXJ3QmhCO0FBb3dCWTtFQUNJO0FBbHdCaEI7QUFpd0JZO0VBQ0k7QUEvdkJoQjtBQTh2Qlk7RUFDSTtBQTV2QmhCO0FBMnZCWTtFQUNJO0FBenZCaEI7QUF3dkJZO0VBQ0k7QUF0dkJoQjtBQXF2Qlk7RUFDSTtBQW52QmhCO0FBa3ZCWTtFQUNJO0FBaHZCaEI7QUErdUJZO0VBQ0k7QUE3dUJoQjtBQTR1Qlk7RUFDSTtBQTF1QmhCO0FBeXVCWTtFQUNJO0FBdnVCaEI7QUFzdUJZO0VBQ0k7QUFwdUJoQjtBQW11Qlk7RUFDSTtBQWp1QmhCO0FBZ3VCWTtFQUNJO0FBOXRCaEI7QUE2dEJZO0VBQ0k7QUEzdEJoQjtBQTB0Qlk7RUFDSTtBQXh0QmhCO0FBdXRCWTtFQUNJO0FBcnRCaEI7QUFvdEJZO0VBQ0k7QUFsdEJoQjtBQWl0Qlk7RUFDSTtBQS9zQmhCO0FBOHNCWTtFQUNJO0FBNXNCaEI7QUEyc0JZO0VBQ0k7QUF6c0JoQjtBQXdzQlk7RUFDSTtBQXRzQmhCO0FBcXNCWTtFQUNJO0FBbnNCaEI7QUFrc0JZO0VBQ0k7QUFoc0JoQjtBQStyQlk7RUFDSTtBQTdyQmhCO0FBNHJCWTtFQUNJO0FBMXJCaEI7QUF5ckJZO0VBQ0k7QUF2ckJoQjtBQXNyQlk7RUFDSTtBQXByQmhCO0FBbXJCWTtFQUNJO0FBanJCaEI7QUFnckJZO0VBQ0k7QUE5cUJoQjtBQTZxQlk7RUFDSTtBQTNxQmhCO0FBMHFCWTtFQUNJO0FBeHFCaEI7QUF1cUJZO0VBQ0k7QUFycUJoQjtBQW9xQlk7RUFDSTtBQWxxQmhCO0FBaXFCWTtFQUNJO0FBL3BCaEI7QUE4cEJZO0VBQ0k7QUE1cEJoQjtBQTJwQlk7RUFDSTtBQXpwQmhCO0FBd3BCWTtFQUNJO0FBdHBCaEI7QUFxcEJZO0VBQ0k7QUFucEJoQjtBQWtwQlk7RUFDSTtBQWhwQmhCO0FBK29CWTtFQUNJO0FBN29CaEI7QUE0b0JZO0VBQ0k7QUExb0JoQjtBQXlvQlk7RUFDSTtBQXZvQmhCLEM7QUN4TEE7RUFDSTtFQUNBO0FBeExKO0FBMExBO0VBQ0k7RUFDQTtBQXZMSjtBQXlMQTtFQUNJO0VBQ0E7QUF0TEosQzs7QUNrSEE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTs7O0FBSUE7SUFDQTtBQUNBOztBQ21EQTtFQUNJO0VBQ0E7QUFsTUo7QUFvTUE7RUFDSTtFQUNBO0FBak1KO0FBbU1BO0VBQ0k7RUFDQTtBQWhNSixDOztBQ2tjQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBOzs7QUFJQTtJQUNBO0FBQ0E7O0FDdE5BO0VBQ0k7RUFDQTtBQXpRSjtBQTJRQTtFQUNJO0VBQ0E7QUF4UUo7QUEwUUE7RUFDSTtFQUNBO0FBdlFKLEM7QUNtR0E7RUFDSTtFQUNBO0FBL0dKO0FBaUhBO0VBQ0k7RUFDQTtBQTlHSjtBQWdIQTtFQUNJO0VBQ0E7QUE3R0osQztBQ3dYQTtFQUNJO0VBQ0E7QUFwWUo7QUFzWUE7RUFDSTtFQUNBO0FBbllKO0FBcVlBO0VBQ0k7QUFsWUosQztBQzJhQTtFQUNJO0VBQ0E7QUF0Yko7QUF3YkE7RUFDSTtFQUNBO0FBcmJKO0FBdWJBO0VBQ0k7RUFDQTtBQXBiSixDO0FDc3VCQTtFQUNJO0VBQ0E7QUFsdkJKO0FBb3ZCQTtFQUNJO0VBQ0E7QUFqdkJKO0FBbXZCQTtFQUNJO0VBQ0E7QUFodkJKLEM7QUNrR0E7RUFDSTtFQUNBO0FBOUdKO0FBZ0hBO0VBQ0k7RUFDQTtBQTdHSjtBQStHQTtFQUNJO0VBQ0E7QUE1R0osQztBQ2cvQlk7RUFDSTtBQTUvQmhCO0FBMi9CWTtFQUNJO0FBei9CaEI7QUF3L0JZO0VBQ0k7QUF0L0JoQjtBQXEvQlk7RUFDSTtBQW4vQmhCO0FBay9CWTtFQUNJO0FBaC9CaEI7QUErK0JZO0VBQ0k7QUE3K0JoQjtBQTQrQlk7RUFDSTtBQTErQmhCO0FBeStCWTtFQUNJO0FBditCaEI7QUFzK0JZO0VBQ0k7QUFwK0JoQjtBQW0rQlk7RUFDSTtBQWorQmhCO0FBZytCWTtFQUNJO0FBOTlCaEI7QUE2OUJZO0VBQ0k7QUEzOUJoQjtBQTA5Qlk7RUFDSTtBQXg5QmhCO0FBdTlCWTtFQUNJO0FBcjlCaEI7QUFvOUJZO0VBQ0k7QUFsOUJoQjtBQWk5Qlk7RUFDSTtBQS84QmhCO0FBODhCWTtFQUNJO0FBNThCaEI7QUEyOEJZO0VBQ0k7QUF6OEJoQjtBQXc4Qlk7RUFDSTtBQXQ4QmhCO0FBcThCWTtFQUNJO0FBbjhCaEI7QUFrOEJZO0VBQ0k7QUFoOEJoQjtBQSs3Qlk7RUFDSTtBQTc3QmhCO0FBNDdCWTtFQUNJO0FBMTdCaEI7QUF5N0JZO0VBQ0k7QUF2N0JoQjtBQXM3Qlk7RUFDSTtBQXA3QmhCO0FBbTdCWTtFQUNJO0FBajdCaEI7QUFnN0JZO0VBQ0k7QUE5NkJoQjtBQTY2Qlk7RUFDSTtBQTM2QmhCO0FBMDZCWTtFQUNJO0FBeDZCaEI7QUF1NkJZO0VBQ0k7QUFyNkJoQjtBQW82Qlk7RUFDSTtBQWw2QmhCO0FBaTZCWTtFQUNJO0FBLzVCaEI7QUE4NUJZO0VBQ0k7QUE1NUJoQjtBQTI1Qlk7RUFDSTtBQXo1QmhCO0FBdzVCWTtFQUNJO0FBdDVCaEI7QUFxNUJZO0VBQ0k7QUFuNUJoQjtBQWs1Qlk7RUFDSTtBQWg1QmhCO0FBKzRCWTtFQUNJO0FBNzRCaEI7QUE0NEJZO0VBQ0k7QUExNEJoQjtBQXk0Qlk7RUFDSTtBQXY0QmhCO0FBczRCWTtFQUNJO0FBcDRCaEI7QUFtNEJZO0VBQ0k7QUFqNEJoQjtBQWc0Qlk7RUFDSTtBQTkzQmhCO0FBNjNCWTtFQUNJO0FBMzNCaEI7QUEwM0JZO0VBQ0k7QUF4M0JoQjtBQXUzQlk7RUFDSTtBQXIzQmhCO0FBbzNCWTtFQUNJO0FBbDNCaEI7QUFpM0JZO0VBQ0k7QUEvMkJoQjtBQTgyQlk7RUFDSTtBQTUyQmhCO0FBMjJCWTtFQUNJO0FBejJCaEI7QUF3MkJZO0VBQ0k7QUF0MkJoQjtBQXEyQlk7RUFDSTtBQW4yQmhCO0FBazJCWTtFQUNJO0FBaDJCaEI7QUErMUJZO0VBQ0k7QUE3MUJoQjtBQTQxQlk7RUFDSTtBQTExQmhCO0FBeTFCWTtFQUNJO0FBdjFCaEI7QUFzMUJZO0VBQ0k7QUFwMUJoQjtBQW0xQlk7RUFDSTtBQWoxQmhCO0FBZzFCWTtFQUNJO0FBOTBCaEI7QUE2MEJZO0VBQ0k7QUEzMEJoQjtBQTAwQlk7RUFDSTtBQXgwQmhCO0FBdTBCWTtFQUNJO0FBcjBCaEI7QUFvMEJZO0VBQ0k7QUFsMEJoQjtBQWkwQlk7RUFDSTtBQS96QmhCO0FBOHpCWTtFQUNJO0FBNXpCaEI7QUEyekJZO0VBQ0k7QUF6ekJoQjtBQXd6Qlk7RUFDSTtBQXR6QmhCO0FBcXpCWTtFQUNJO0FBbnpCaEI7QUFrekJZO0VBQ0k7QUFoekJoQjtBQSt5Qlk7RUFDSTtBQTd5QmhCO0FBNHlCWTtFQUNJO0FBMXlCaEI7QUF5eUJZO0VBQ0k7QUF2eUJoQjtBQXN5Qlk7RUFDSTtBQXB5QmhCO0FBbXlCWTtFQUNJO0FBanlCaEI7QUFneUJZO0VBQ0k7QUE5eEJoQjtBQTZ4Qlk7RUFDSTtBQTN4QmhCO0FBMHhCWTtFQUNJO0FBeHhCaEI7QUF1eEJZO0VBQ0k7QUFyeEJoQjtBQW94Qlk7RUFDSTtBQWx4QmhCO0FBaXhCWTtFQUNJO0FBL3dCaEI7QUE4d0JZO0VBQ0k7QUE1d0JoQjtBQTJ3Qlk7RUFDSTtBQXp3QmhCO0FBd3dCWTtFQUNJO0FBdHdCaEI7QUFxd0JZO0VBQ0k7QUFud0JoQjtBQWt3Qlk7RUFDSTtBQWh3QmhCO0FBK3ZCWTtFQUNJO0FBN3ZCaEI7QUE0dkJZO0VBQ0k7QUExdkJoQjtBQXl2Qlk7RUFDSTtBQXZ2QmhCO0FBc3ZCWTtFQUNJO0FBcHZCaEI7QUFtdkJZO0VBQ0k7QUFqdkJoQjtBQWd2Qlk7RUFDSTtBQTl1QmhCO0FBNnVCWTtFQUNJO0FBM3VCaEI7QUEwdUJZO0VBQ0k7QUF4dUJoQjtBQXV1Qlk7RUFDSTtBQXJ1QmhCO0FBb3VCWTtFQUNJO0FBbHVCaEI7QUFpdUJZO0VBQ0k7QUEvdEJoQjtBQTh0Qlk7RUFDSTtBQTV0QmhCO0FBMnRCWTtFQUNJO0FBenRCaEI7QUF3dEJZO0VBQ0k7QUF0dEJoQjtBQXF0Qlk7RUFDSTtBQW50QmhCO0FBa3RCWTtFQUNJO0FBaHRCaEI7QUErc0JZO0VBQ0k7QUE3c0JoQjtBQTRzQlk7RUFDSTtBQTFzQmhCO0FBeXNCWTtFQUNJO0FBdnNCaEI7QUFzc0JZO0VBQ0k7QUFwc0JoQjtBQW1zQlk7RUFDSTtBQWpzQmhCO0FBZ3NCWTtFQUNJO0FBOXJCaEI7QUE2ckJZO0VBQ0k7QUEzckJoQjtBQTByQlk7RUFDSTtBQXhyQmhCO0FBdXJCWTtFQUNJO0FBcnJCaEI7QUFvckJZO0VBQ0k7QUFsckJoQjtBQWlyQlk7RUFDSTtBQS9xQmhCO0FBOHFCWTtFQUNJO0FBNXFCaEI7QUEycUJZO0VBQ0k7QUF6cUJoQjtBQXdxQlk7RUFDSTtBQXRxQmhCO0FBcXFCWTtFQUNJO0FBbnFCaEI7QUFrcUJZO0VBQ0k7QUFocUJoQjtBQStwQlk7RUFDSTtBQTdwQmhCO0FBNHBCWTtFQUNJO0FBMXBCaEI7QUF5cEJZO0VBQ0k7QUF2cEJoQjtBQXNwQlk7RUFDSTtBQXBwQmhCO0FBbXBCWTtFQUNJO0FBanBCaEI7QUFncEJZO0VBQ0k7QUE5b0JoQjtBQTZvQlk7RUFDSTtBQTNvQmhCO0FBMG9CWTtFQUNJO0FBeG9CaEI7QUF1b0JZO0VBQ0k7QUFyb0JoQjtBQW9vQlk7RUFDSTtBQWxvQmhCO0FBaW9CWTtFQUNJO0FBL25CaEI7QUE4bkJZO0VBQ0k7QUE1bkJoQjtBQTJuQlk7RUFDSTtBQXpuQmhCO0FBeXJCd0I7RUFDSTtBQXZyQjVCLEM7QUM2VFk7RUFDSTtBQXBzQmhCO0FBbXNCWTtFQUNJO0FBanNCaEI7QUFnc0JZO0VBQ0k7QUE5ckJoQjtBQTZyQlk7RUFDSTtBQTNyQmhCO0FBMHJCWTtFQUNJO0FBeHJCaEI7QUF1ckJZO0VBQ0k7QUFyckJoQjtBQW9yQlk7RUFDSTtBQWxyQmhCO0FBaXJCWTtFQUNJO0FBL3FCaEI7QUE4cUJZO0VBQ0k7QUE1cUJoQjtBQTJxQlk7RUFDSTtBQXpxQmhCO0FBd3FCWTtFQUNJO0FBdHFCaEI7QUFxcUJZO0VBQ0k7QUFucUJoQjtBQWtxQlk7RUFDSTtBQWhxQmhCO0FBK3BCWTtFQUNJO0FBN3BCaEI7QUE0cEJZO0VBQ0k7QUExcEJoQjtBQXlwQlk7RUFDSTtBQXZwQmhCO0FBc3BCWTtFQUNJO0FBcHBCaEI7QUFtcEJZO0VBQ0k7QUFqcEJoQjtBQWdwQlk7RUFDSTtBQTlvQmhCO0FBNm9CWTtFQUNJO0FBM29CaEI7QUEwb0JZO0VBQ0k7QUF4b0JoQjtBQXVvQlk7RUFDSTtBQXJvQmhCO0FBb29CWTtFQUNJO0FBbG9CaEI7QUFpb0JZO0VBQ0k7QUEvbkJoQjtBQThuQlk7RUFDSTtBQTVuQmhCO0FBMm5CWTtFQUNJO0FBem5CaEI7QUF3bkJZO0VBQ0k7QUF0bkJoQjtBQXFuQlk7RUFDSTtBQW5uQmhCO0FBa25CWTtFQUNJO0FBaG5CaEI7QUErbUJZO0VBQ0k7QUE3bUJoQjtBQTRtQlk7RUFDSTtBQTFtQmhCO0FBeW1CWTtFQUNJO0FBdm1CaEI7QUFzbUJZO0VBQ0k7QUFwbUJoQjtBQW1tQlk7RUFDSTtBQWptQmhCO0FBZ21CWTtFQUNJO0FBOWxCaEI7QUE2bEJZO0VBQ0k7QUEzbEJoQjtBQTBsQlk7RUFDSTtBQXhsQmhCO0FBdWxCWTtFQUNJO0FBcmxCaEI7QUFvbEJZO0VBQ0k7QUFsbEJoQjtBQWlsQlk7RUFDSTtBQS9rQmhCO0FBOGtCWTtFQUNJO0FBNWtCaEI7QUEya0JZO0VBQ0k7QUF6a0JoQjtBQXdrQlk7RUFDSTtBQXRrQmhCO0FBcWtCWTtFQUNJO0FBbmtCaEI7QUFra0JZO0VBQ0k7QUFoa0JoQjtBQStqQlk7RUFDSTtBQTdqQmhCO0FBNGpCWTtFQUNJO0FBMWpCaEI7QUF5akJZO0VBQ0k7QUF2akJoQjtBQXNqQlk7RUFDSTtBQXBqQmhCO0FBbWpCWTtFQUNJO0FBampCaEI7QUFnakJZO0VBQ0k7QUE5aUJoQjtBQTZpQlk7RUFDSTtBQTNpQmhCO0FBMGlCWTtFQUNJO0FBeGlCaEI7QUF1aUJZO0VBQ0k7QUFyaUJoQjtBQW9pQlk7RUFDSTtBQWxpQmhCO0FBaWlCWTtFQUNJO0FBL2hCaEI7QUE4aEJZO0VBQ0k7QUE1aEJoQjtBQTJoQlk7RUFDSTtBQXpoQmhCO0FBd2hCWTtFQUNJO0FBdGhCaEI7QUFxaEJZO0VBQ0k7QUFuaEJoQjtBQWtoQlk7RUFDSTtBQWhoQmhCO0FBK2dCWTtFQUNJO0FBN2dCaEI7QUE0Z0JZO0VBQ0k7QUExZ0JoQjtBQXlnQlk7RUFDSTtBQXZnQmhCO0FBc2dCWTtFQUNJO0FBcGdCaEI7QUFtZ0JZO0VBQ0k7QUFqZ0JoQjtBQWdnQlk7RUFDSTtBQTlmaEI7QUE2Zlk7RUFDSTtBQTNmaEI7QUEwZlk7RUFDSTtBQXhmaEI7QUF1Zlk7RUFDSTtBQXJmaEI7QUFvZlk7RUFDSTtBQWxmaEI7QUFpZlk7RUFDSTtBQS9laEI7QUE4ZVk7RUFDSTtBQTVlaEI7QUEyZVk7RUFDSTtBQXplaEI7QUF3ZVk7RUFDSTtBQXRlaEI7QUFxZVk7RUFDSTtBQW5laEI7QUFrZVk7RUFDSTtBQWhlaEI7QUErZFk7RUFDSTtBQTdkaEI7QUE0ZFk7RUFDSTtBQTFkaEI7QUF5ZFk7RUFDSTtBQXZkaEI7QUFzZFk7RUFDSTtBQXBkaEI7QUFtZFk7RUFDSTtBQWpkaEI7QUFnZFk7RUFDSTtBQTljaEI7QUE2Y1k7RUFDSTtBQTNjaEI7QUEwY1k7RUFDSTtBQXhjaEI7QUF1Y1k7RUFDSTtBQXJjaEI7QUFvY1k7RUFDSTtBQWxjaEI7QUFpY1k7RUFDSTtBQS9iaEI7QUE4Ylk7RUFDSTtBQTViaEI7QUEyYlk7RUFDSTtBQXpiaEI7QUF3Ylk7RUFDSTtBQXRiaEI7QUFxYlk7RUFDSTtBQW5iaEI7QUFrYlk7RUFDSTtBQWhiaEI7QUErYVk7RUFDSTtBQTdhaEI7QUE0YVk7RUFDSTtBQTFhaEI7QUF5YVk7RUFDSTtBQXZhaEI7QUFzYVk7RUFDSTtBQXBhaEI7QUFtYVk7RUFDSTtBQWphaEI7QUFnYVk7RUFDSTtBQTlaaEI7QUE2Wlk7RUFDSTtBQTNaaEI7QUEwWlk7RUFDSTtBQXhaaEI7QUF1Wlk7RUFDSTtBQXJaaEI7QUFvWlk7RUFDSTtBQWxaaEI7QUFpWlk7RUFDSTtBQS9ZaEI7QUE4WVk7RUFDSTtBQTVZaEI7QUEyWVk7RUFDSTtBQXpZaEI7QUF3WVk7RUFDSTtBQXRZaEI7QUFxWVk7RUFDSTtBQW5ZaEI7QUFrWVk7RUFDSTtBQWhZaEI7QUErWFk7RUFDSTtBQTdYaEI7QUE0WFk7RUFDSTtBQTFYaEI7QUF5WFk7RUFDSTtBQXZYaEI7QUFzWFk7RUFDSTtBQXBYaEI7QUFtWFk7RUFDSTtBQWpYaEI7QUFnWFk7RUFDSTtBQTlXaEI7QUE2V1k7RUFDSTtBQTNXaEI7QUEwV1k7RUFDSTtBQXhXaEI7QUF1V1k7RUFDSTtBQXJXaEI7QUFvV1k7RUFDSTtBQWxXaEI7QUFpV1k7RUFDSTtBQS9WaEI7QUE4Vlk7RUFDSTtBQTVWaEI7QUEyVlk7RUFDSTtBQXpWaEI7QUF3Vlk7RUFDSTtBQXRWaEI7QUFxVlk7RUFDSTtBQW5WaEI7QUFrVlk7RUFDSTtBQWhWaEI7QUErVVk7RUFDSTtBQTdVaEI7QUE0VVk7RUFDSTtBQTFVaEI7QUF5VVk7RUFDSTtBQXZVaEI7QUFzVVk7RUFDSTtBQXBVaEI7QUFvWXdCO0VBQ0k7QUFsWTVCLEM7QUMrSEE7RUFDSTtFQUNBO0FBbmdCSjtBQXFnQkE7RUFDSTtFQUNBO0FBbGdCSjtBQW9nQkE7RUFDSTtFQUNBO0FBamdCSixDOztBQzBKQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBOzs7QUFJQTtJQUNBO0FBQ0E7QUFDQTtJQUNBO0FBQ0E7O0FDTEE7RUFDSTtFQUNBO0FBckxKO0FBdUxBO0VBQ0k7RUFDQTtBQXBMSjtBQXNMQTtFQUNJO0VBQ0E7QUFuTEosQztBQ2tKQTtFQUNJO0FBOUpKLEM7O0FDcVFBO0lBQ0E7SUFDQTtJQUNBO3lDQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTt5Q0FDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTs7O0lBR0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO09BQUE7UUFBQTtZQUFBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBOzs7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTs7SUFFQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtBQUNBOztBQUVBO0FBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtBQUNBO0FBRUE7O0lBRUE7QUFDQTtBQUVBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7OztJQUdBO0lBQ0E7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0FBQ0E7QUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0FBQ0E7UUFDQTtBQUNBO0FBQ0E7OztBQ3RXQTtJQUNBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7QUFDQTtBQUVBO0lBQ0E7SUFDQTtBQUNBO0FBRUE7SUFDQTtJQUNBO0FBQ0E7OztBQ3JCQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztJQUVBO0FBQ0E7OztBQy9HQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0lBRUE7QUFDQTs7QUMrQkE7RUFDSTtFQUNBO0VBRUE7RUFDQTtBQXZFSjtBQXlFQTtFQUVJO0VBQ0E7RUFDQTtBQXZFSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvZGlzdC9jc3MvYm9vdHN0cmFwLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS1mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NjcmVlbnJlYWRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ByaW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3BjLWJvb3RzdHJhcDQtZGF0ZXRpbWVwaWNrZXIvYnVpbGQvY3NzL2Jvb3RzdHJhcC1kYXRldGltZXBpY2tlci5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL2dsb2JhbC92YXJpYWJsZXMuY3NzIiwid2VicGFjazovLy9WdWVTZWxlY3Qvc3JjL2Nzcy9nbG9iYWwvY29tcG9uZW50LmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvZ2xvYmFsL2FuaW1hdGlvbnMuY3NzIiwid2VicGFjazovLy9WdWVTZWxlY3Qvc3JjL2Nzcy9nbG9iYWwvc3RhdGVzLmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvbW9kdWxlcy9kcm9wZG93bi10b2dnbGUuY3NzIiwid2VicGFjazovLy9WdWVTZWxlY3Qvc3JjL2Nzcy9tb2R1bGVzL29wZW4taW5kaWNhdG9yLmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvbW9kdWxlcy9jbGVhci5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL21vZHVsZXMvZHJvcGRvd24tbWVudS5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL21vZHVsZXMvZHJvcGRvd24tb3B0aW9uLmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvbW9kdWxlcy9zZWxlY3RlZC5jc3MiLCJ3ZWJwYWNrOi8vL1Z1ZVNlbGVjdC9zcmMvY3NzL21vZHVsZXMvc2VhcmNoLWlucHV0LmNzcyIsIndlYnBhY2s6Ly8vVnVlU2VsZWN0L3NyYy9jc3MvbW9kdWxlcy9zcGlubmVyLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLXNlbGVjdC9kaXN0L3Z1ZS1zZWxlY3QuY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW5kc29udGFibGUvZGlzdC9oYW5kc29udGFibGUuZnVsbC5jc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9fdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL19jdXN0b20tY29udHJvbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9hdmF0YXIvX2F2YXRhci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvY2FsZW5kYXIvX2NhbGVuZGFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvY2FyZC9fY2FyZC1pbWcuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9kcm9wZG93bi9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9kcm9wZG93bi9fZHJvcGRvd24tZm9ybS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2Ryb3Bkb3duL19kcm9wZG93bi10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZm9ybS1jaGVja2JveC9fZm9ybS1jaGVja2JveC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2lucHV0LWdyb3VwL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2Zvcm0tYnRuLWxhYmVsLWNvbnRyb2wvX2Zvcm0tYnRuLWxhYmVsLWNvbnRyb2wuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9mb3JtLWZpbGUvX2Zvcm0tZmlsZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL2Zvcm0taW5wdXQvX2Zvcm0taW5wdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9mb3JtLXJhZGlvL19mb3JtLXJhZGlvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZm9ybS1yYXRpbmcvX2Zvcm0tcmF0aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZm9ybS1zcGluYnV0dG9uL19zcGluYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZm9ybS10YWdzL19mb3JtLXRhZ3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9tZWRpYS9fbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9tb2RhbC9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9wYWdpbmF0aW9uL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvcG9wb3Zlci9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL3NpZGViYXIvX3NpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9za2VsZXRvbi9fc2tlbGV0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy90YWJsZS9fdGFibGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy90aW1lL190aW1lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvdG9hc3QvX3RvYXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvdG9hc3QvX3RvYXN0ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy90b2FzdC9fdG9hc3Rlci10cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvdG9vbHRpcC9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9pY29ucy9faWNvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9GaWx0ZXJJdGVtLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9QYWdlbmF0aW9uLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9HcmlkUGFnZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5wdXRFcnJvci52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSXRlbUNhdGVnb3J5LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JdGVtU3BlY2lmaWNzLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JdGVtLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TZWxlY3RVc2VySW5Hcm91cC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvQWRkcmVzc1NlYXJjaC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0Q291bnRyeS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvQWRkcmVzc0NvbnRlbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1RyYWNraW5nQ29kZUNvbnRlbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdEl0ZW1Ic2NvZGUudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0l0ZW1Db250ZW50LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9Cb3hDb250ZW50LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TZWxlY3RDdXJyZW5jeUlkLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbnN1cmFuY2VUYWJsZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0UHJlZmVjdHVyZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0VXNlck1hbmFnZXIudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0ludmVudG9yeS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW52ZW50b3J5SW5mby52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU3RvcmUudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1N0b3JlSW5mby52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0QmFzZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvRmlsZUltYWdlRHJvcC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0Q291bnRyeVJlZ2lvbi52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2VsZWN0SHRtbC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvVXNlckxpc3RpbmcudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL01hcnVuYWdlVGFibGUudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL01hcnVuYWdlLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TZWxlY3RUYXhUYXJnZXQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luc3VyYW5jZUNvbnRlbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL1NlbGVjdFJlZ2lzdHJhdGlvbk51bWJlci52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvVmF0Q29udGVudC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW52b2ljZUNvbnRlbnQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0NvdXJpZXJQbGFuLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9Db3VyaWVyQ29udGVudC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2hpcHBpbmcudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0l0ZW1BdHRyaWJ1dGVDb250ZW50LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TaGlwcGluZ1RhYmxlLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TaGlwcGluZ0VjbXNUYWJsZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvU2hpcHBpbmdDcm9ib09yZGVyLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9TZWxlY3RVc2VyTWFydW5hZ2UudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luc3VyYW5jZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL3BhZ2VzL1VzZXJBcHByb3ZhbC52dWUiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZS1tb250aC1waWNrZXIvc3JjL01vbnRoUGlja2VyLnZ1ZSIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLW1vbnRoLXBpY2tlci9zcmMvTW9udGhQaWNrZXJJbnB1dC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvQXV0aE1hc2sudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0xvYWRNYXNrLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9Ob3RpZmljYXRpb25zLnZ1ZSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEJvb3RzdHJhcCB2NC42LjAgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuNi4wIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKi9cbjpyb290IHtcbiAgLS1ibHVlOiAjMDA3YmZmO1xuICAtLWluZGlnbzogIzY2MTBmMjtcbiAgLS1wdXJwbGU6ICM2ZjQyYzE7XG4gIC0tcGluazogI2U4M2U4YztcbiAgLS1yZWQ6ICNkYzM1NDU7XG4gIC0tb3JhbmdlOiAjZmQ3ZTE0O1xuICAtLXllbGxvdzogI2ZmYzEwNztcbiAgLS1ncmVlbjogIzI4YTc0NTtcbiAgLS10ZWFsOiAjMjBjOTk3O1xuICAtLWN5YW46ICMxN2EyYjg7XG4gIC0td2hpdGU6ICNmZmY7XG4gIC0tZ3JheTogIzZjNzU3ZDtcbiAgLS1ncmF5LWRhcms6ICMzNDNhNDA7XG4gIC0tcHJpbWFyeTogIzAwN2JmZjtcbiAgLS1zZWNvbmRhcnk6ICM2Yzc1N2Q7XG4gIC0tc3VjY2VzczogIzI4YTc0NTtcbiAgLS1pbmZvOiAjMTdhMmI4O1xuICAtLXdhcm5pbmc6ICNmZmMxMDc7XG4gIC0tZGFuZ2VyOiAjZGMzNTQ1O1xuICAtLWxpZ2h0OiAjZjhmOWZhO1xuICAtLWRhcms6ICMzNDNhNDA7XG4gIC0tYnJlYWtwb2ludC14czogMDtcbiAgLS1icmVha3BvaW50LXNtOiA1NzZweDtcbiAgLS1icmVha3BvaW50LW1kOiA3NjhweDtcbiAgLS1icmVha3BvaW50LWxnOiA5OTJweDtcbiAgLS1icmVha3BvaW50LXhsOiAxMjAwcHg7XG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAwO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLS41ZW07XG59XG5cbmEge1xuICBjb2xvcjogIzAwN2JmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMDA1NmIzO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKTpob3ZlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5wcmUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdmVyZmxvdzogYXV0bztcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuc3ZnIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9XCJidXR0b25cIl06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1cInJlc2V0XCJdOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9XCJzdWJtaXRcIl06bm90KDpkaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG59XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuNzVyZW07XG59XG5cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5kaXNwbGF5LTEge1xuICBmb250LXNpemU6IDZyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5kaXNwbGF5LTIge1xuICBmb250LXNpemU6IDUuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmRpc3BsYXktMyB7XG4gIGZvbnQtc2l6ZTogNC41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uZGlzcGxheS00IHtcbiAgZm9udC1zaXplOiAzLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAwLjJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMztcbn1cblxuLmxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5saXN0LWlubGluZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3Rlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjtcbn1cblxuLmltZy1mbHVpZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZmlndXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuY29kZSB7XG4gIGZvbnQtc2l6ZTogODcuNSU7XG4gIGNvbG9yOiAjZTgzZThjO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbmEgPiBjb2RlIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XG4gIGZvbnQtc2l6ZTogODcuNSU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG59XG5cbmtiZCBrYmQge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDg3LjUlO1xuICBjb2xvcjogIzIxMjUyOTtcbn1cblxucHJlIGNvZGUge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6IDM0MHB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZsdWlkLFxuLmNvbnRhaW5lci1zbSxcbi5jb250YWluZXItbWQsXG4uY29udGFpbmVyLWxnLFxuLmNvbnRhaW5lci14bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29udGFpbmVyLCAuY29udGFpbmVyLXNtIHtcbiAgICBtYXgtd2lkdGg6IDU0MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29udGFpbmVyLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyLW1kIHtcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29udGFpbmVyLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLWxnIHtcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbnRhaW5lciwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci14bCB7XG4gICAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gIH1cbn1cblxuLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xufVxuXG4ubm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5uby1ndXR0ZXJzID4gLmNvbCxcbi5uby1ndXR0ZXJzID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jb2wtMSwgLmNvbC0yLCAuY29sLTMsIC5jb2wtNCwgLmNvbC01LCAuY29sLTYsIC5jb2wtNywgLmNvbC04LCAuY29sLTksIC5jb2wtMTAsIC5jb2wtMTEsIC5jb2wtMTIsIC5jb2wsXG4uY29sLWF1dG8sIC5jb2wtc20tMSwgLmNvbC1zbS0yLCAuY29sLXNtLTMsIC5jb2wtc20tNCwgLmNvbC1zbS01LCAuY29sLXNtLTYsIC5jb2wtc20tNywgLmNvbC1zbS04LCAuY29sLXNtLTksIC5jb2wtc20tMTAsIC5jb2wtc20tMTEsIC5jb2wtc20tMTIsIC5jb2wtc20sXG4uY29sLXNtLWF1dG8sIC5jb2wtbWQtMSwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIsIC5jb2wtbWQsXG4uY29sLW1kLWF1dG8sIC5jb2wtbGctMSwgLmNvbC1sZy0yLCAuY29sLWxnLTMsIC5jb2wtbGctNCwgLmNvbC1sZy01LCAuY29sLWxnLTYsIC5jb2wtbGctNywgLmNvbC1sZy04LCAuY29sLWxnLTksIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGcsXG4uY29sLWxnLWF1dG8sIC5jb2wteGwtMSwgLmNvbC14bC0yLCAuY29sLXhsLTMsIC5jb2wteGwtNCwgLmNvbC14bC01LCAuY29sLXhsLTYsIC5jb2wteGwtNywgLmNvbC14bC04LCAuY29sLXhsLTksIC5jb2wteGwtMTAsIC5jb2wteGwtMTEsIC5jb2wteGwtMTIsIC5jb2wteGwsXG4uY29sLXhsLWF1dG8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbi5jb2wge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJvdy1jb2xzLTEgPiAqIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJvdy1jb2xzLTIgPiAqIHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5yb3ctY29scy0zID4gKiB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG59XG5cbi5yb3ctY29scy00ID4gKiB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlO1xufVxuXG4ucm93LWNvbHMtNSA+ICoge1xuICBmbGV4OiAwIDAgMjAlO1xuICBtYXgtd2lkdGg6IDIwJTtcbn1cblxuLnJvdy1jb2xzLTYgPiAqIHtcbiAgZmxleDogMCAwIDE2LjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbn1cblxuLmNvbC1hdXRvIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtMSB7XG4gIGZsZXg6IDAgMCA4LjMzMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMzMlO1xufVxuXG4uY29sLTIge1xuICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NjclO1xufVxuXG4uY29sLTMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmNvbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbn1cblxuLmNvbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY2NyU7XG4gIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbn1cblxuLmNvbC02IHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5jb2wtNyB7XG4gIGZsZXg6IDAgMCA1OC4zMzMzMzMlO1xuICBtYXgtd2lkdGg6IDU4LjMzMzMzMyU7XG59XG5cbi5jb2wtOCB7XG4gIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICBtYXgtd2lkdGg6IDY2LjY2NjY2NyU7XG59XG5cbi5jb2wtOSB7XG4gIGZsZXg6IDAgMCA3NSU7XG4gIG1heC13aWR0aDogNzUlO1xufVxuXG4uY29sLTEwIHtcbiAgZmxleDogMCAwIDgzLjMzMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMzJTtcbn1cblxuLmNvbC0xMSB7XG4gIGZsZXg6IDAgMCA5MS42NjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY2NyU7XG59XG5cbi5jb2wtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ub3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7XG59XG5cbi5vcmRlci1sYXN0IHtcbiAgb3JkZXI6IDEzO1xufVxuXG4ub3JkZXItMCB7XG4gIG9yZGVyOiAwO1xufVxuXG4ub3JkZXItMSB7XG4gIG9yZGVyOiAxO1xufVxuXG4ub3JkZXItMiB7XG4gIG9yZGVyOiAyO1xufVxuXG4ub3JkZXItMyB7XG4gIG9yZGVyOiAzO1xufVxuXG4ub3JkZXItNCB7XG4gIG9yZGVyOiA0O1xufVxuXG4ub3JkZXItNSB7XG4gIG9yZGVyOiA1O1xufVxuXG4ub3JkZXItNiB7XG4gIG9yZGVyOiA2O1xufVxuXG4ub3JkZXItNyB7XG4gIG9yZGVyOiA3O1xufVxuXG4ub3JkZXItOCB7XG4gIG9yZGVyOiA4O1xufVxuXG4ub3JkZXItOSB7XG4gIG9yZGVyOiA5O1xufVxuXG4ub3JkZXItMTAge1xuICBvcmRlcjogMTA7XG59XG5cbi5vcmRlci0xMSB7XG4gIG9yZGVyOiAxMTtcbn1cblxuLm9yZGVyLTEyIHtcbiAgb3JkZXI6IDEyO1xufVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTtcbn1cblxuLm9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLm9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMyU7XG59XG5cbi5vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclO1xufVxuXG4ub2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4ub2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzJTtcbn1cblxuLm9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzJTtcbn1cblxuLm9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbC1zbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1zbS0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1zbS0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucm93LWNvbHMtc20tMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbiAgfVxuICAucm93LWNvbHMtc20tNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLnJvdy1jb2xzLXNtLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5yb3ctY29scy1zbS02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjclO1xuICB9XG4gIC5jb2wtc20tYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wtc20tMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1zbS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1zbS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5jb2wtc20tNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjclO1xuICB9XG4gIC5jb2wtc20tOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLXNtLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjclO1xuICB9XG4gIC5jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAub3JkZXItc20tZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAub3JkZXItc20tbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1zbS0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItc20tMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLXNtLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1zbS0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItc20tNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLXNtLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1zbS02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItc20tNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLXNtLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1zbS05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItc20tMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICAub3JkZXItc20tMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICAub3JkZXItc20tMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAub2Zmc2V0LXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1zbS02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5vZmZzZXQtc20tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1zbS04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1zbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1zbS0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NyU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMtbWQtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLnJvdy1jb2xzLW1kLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLnJvdy1jb2xzLW1kLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5yb3ctY29scy1tZC01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAucm93LWNvbHMtbWQtNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLW1kLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5jb2wtbWQtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLW1kLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9yZGVyLW1kLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLm9yZGVyLW1kLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICAub3JkZXItbWQtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgLm9yZGVyLW1kLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5vcmRlci1tZC0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAub3JkZXItbWQtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm9yZGVyLW1kLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5vcmRlci1tZC01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICAub3JkZXItbWQtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgLm9yZGVyLW1kLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIC5vcmRlci1tZC04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICAub3JkZXItbWQtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgLm9yZGVyLW1kLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgLm9yZGVyLW1kLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgLm9yZGVyLW1kLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgLm9mZnNldC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAub2Zmc2V0LW1kLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtbWQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAub2Zmc2V0LW1kLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbWQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1tZC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5vZmZzZXQtbWQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbWQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLWxnIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdy1jb2xzLWxnLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdy1jb2xzLWxnLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5yb3ctY29scy1sZy0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5yb3ctY29scy1sZy00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucm93LWNvbHMtbGctNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnJvdy1jb2xzLWxnLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1sZy0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjclO1xuICB9XG4gIC5jb2wtbGctMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLWxnLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1sZy03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5jb2wtbGctMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5vcmRlci1sZy1maXJzdCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5vcmRlci1sZy1sYXN0IHtcbiAgICBvcmRlcjogMTM7XG4gIH1cbiAgLm9yZGVyLWxnLTAge1xuICAgIG9yZGVyOiAwO1xuICB9XG4gIC5vcmRlci1sZy0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAub3JkZXItbGctMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLm9yZGVyLWxnLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5vcmRlci1sZy00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAub3JkZXItbGctNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLm9yZGVyLWxnLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG4gIC5vcmRlci1sZy03IHtcbiAgICBvcmRlcjogNztcbiAgfVxuICAub3JkZXItbGctOCB7XG4gICAgb3JkZXI6IDg7XG4gIH1cbiAgLm9yZGVyLWxnLTkge1xuICAgIG9yZGVyOiA5O1xuICB9XG4gIC5vcmRlci1sZy0xMCB7XG4gICAgb3JkZXI6IDEwO1xuICB9XG4gIC5vcmRlci1sZy0xMSB7XG4gICAgb3JkZXI6IDExO1xuICB9XG4gIC5vcmRlci1sZy0xMiB7XG4gICAgb3JkZXI6IDEyO1xuICB9XG4gIC5vZmZzZXQtbGctMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm9mZnNldC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5vZmZzZXQtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1sZy01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LWxnLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm9mZnNldC1sZy03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LWxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtbGctOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAub2Zmc2V0LWxnLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LWxnLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY3JTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb2wteGwge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMteGwtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMteGwtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLnJvdy1jb2xzLXhsLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLnJvdy1jb2xzLXhsLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5yb3ctY29scy14bC01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAucm93LWNvbHMteGwtNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXhsLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5jb2wteGwtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5jb2wteGwtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjclO1xuICB9XG4gIC5jb2wteGwtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLXhsLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC14bC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMlO1xuICB9XG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9yZGVyLXhsLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLm9yZGVyLXhsLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICAub3JkZXIteGwtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgLm9yZGVyLXhsLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5vcmRlci14bC0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAub3JkZXIteGwtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm9yZGVyLXhsLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5vcmRlci14bC01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICAub3JkZXIteGwtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgLm9yZGVyLXhsLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIC5vcmRlci14bC04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICAub3JkZXIteGwtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgLm9yZGVyLXhsLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgLm9yZGVyLXhsLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgLm9yZGVyLXhsLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgLm9mZnNldC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAub2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC14bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm9mZnNldC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQteGwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAub2Zmc2V0LXhsLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQteGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQteGwtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclO1xuICB9XG59XG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogIzIxMjUyOTtcbn1cblxuLnRhYmxlIHRoLFxuLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi50YWJsZSB0aGVhZCB0aCB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4udGFibGUgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4udGFibGUtc20gdGgsXG4udGFibGUtc20gdGQge1xuICBwYWRkaW5nOiAwLjNyZW07XG59XG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi50YWJsZS1ib3JkZXJlZCB0aCxcbi50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi50YWJsZS1ib3JkZXJlZCB0aGVhZCB0aCxcbi50YWJsZS1ib3JkZXJlZCB0aGVhZCB0ZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbn1cblxuLnRhYmxlLWJvcmRlcmxlc3MgdGgsXG4udGFibGUtYm9yZGVybGVzcyB0ZCxcbi50YWJsZS1ib3JkZXJsZXNzIHRoZWFkIHRoLFxuLnRhYmxlLWJvcmRlcmxlc3MgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbn1cblxuLnRhYmxlLXByaW1hcnksXG4udGFibGUtcHJpbWFyeSA+IHRoLFxuLnRhYmxlLXByaW1hcnkgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiOGRhZmY7XG59XG5cbi50YWJsZS1wcmltYXJ5IHRoLFxuLnRhYmxlLXByaW1hcnkgdGQsXG4udGFibGUtcHJpbWFyeSB0aGVhZCB0aCxcbi50YWJsZS1wcmltYXJ5IHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICM3YWJhZmY7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZmNkZmY7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWZjZGZmO1xufVxuXG4udGFibGUtc2Vjb25kYXJ5LFxuLnRhYmxlLXNlY29uZGFyeSA+IHRoLFxuLnRhYmxlLXNlY29uZGFyeSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZDhkYjtcbn1cblxuLnRhYmxlLXNlY29uZGFyeSB0aCxcbi50YWJsZS1zZWNvbmRhcnkgdGQsXG4udGFibGUtc2Vjb25kYXJ5IHRoZWFkIHRoLFxuLnRhYmxlLXNlY29uZGFyeSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjYjNiN2JiO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOGNiY2Y7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M4Y2JjZjtcbn1cblxuLnRhYmxlLXN1Y2Nlc3MsXG4udGFibGUtc3VjY2VzcyA+IHRoLFxuLnRhYmxlLXN1Y2Nlc3MgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjM2U2Y2I7XG59XG5cbi50YWJsZS1zdWNjZXNzIHRoLFxuLnRhYmxlLXN1Y2Nlc3MgdGQsXG4udGFibGUtc3VjY2VzcyB0aGVhZCB0aCxcbi50YWJsZS1zdWNjZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6ICM4ZmQxOWU7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMWRmYmI7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjFkZmJiO1xufVxuXG4udGFibGUtaW5mbyxcbi50YWJsZS1pbmZvID4gdGgsXG4udGFibGUtaW5mbyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JlZTVlYjtcbn1cblxuLnRhYmxlLWluZm8gdGgsXG4udGFibGUtaW5mbyB0ZCxcbi50YWJsZS1pbmZvIHRoZWFkIHRoLFxuLnRhYmxlLWluZm8gdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogIzg2Y2ZkYTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiZGRlNTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYmRkZTU7XG59XG5cbi50YWJsZS13YXJuaW5nLFxuLnRhYmxlLXdhcm5pbmcgPiB0aCxcbi50YWJsZS13YXJuaW5nID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZWJhO1xufVxuXG4udGFibGUtd2FybmluZyB0aCxcbi50YWJsZS13YXJuaW5nIHRkLFxuLnRhYmxlLXdhcm5pbmcgdGhlYWQgdGgsXG4udGFibGUtd2FybmluZyB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZkZjdlO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlOGExO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZThhMTtcbn1cblxuLnRhYmxlLWRhbmdlcixcbi50YWJsZS1kYW5nZXIgPiB0aCxcbi50YWJsZS1kYW5nZXIgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWM2Y2I7XG59XG5cbi50YWJsZS1kYW5nZXIgdGgsXG4udGFibGUtZGFuZ2VyIHRkLFxuLnRhYmxlLWRhbmdlciB0aGVhZCB0aCxcbi50YWJsZS1kYW5nZXIgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2VkOTY5ZTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFiMGI3O1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWRhbmdlcjpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWIwYjc7XG59XG5cbi50YWJsZS1saWdodCxcbi50YWJsZS1saWdodCA+IHRoLFxuLnRhYmxlLWxpZ2h0ID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZlO1xufVxuXG4udGFibGUtbGlnaHQgdGgsXG4udGFibGUtbGlnaHQgdGQsXG4udGFibGUtbGlnaHQgdGhlYWQgdGgsXG4udGFibGUtbGlnaHQgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogI2ZiZmNmYztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZjY7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZjY7XG59XG5cbi50YWJsZS1kYXJrLFxuLnRhYmxlLWRhcmsgPiB0aCxcbi50YWJsZS1kYXJrID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZjOGNhO1xufVxuXG4udGFibGUtZGFyayB0aCxcbi50YWJsZS1kYXJrIHRkLFxuLnRhYmxlLWRhcmsgdGhlYWQgdGgsXG4udGFibGUtZGFyayB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiAjOTU5OTljO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWRhcms6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I5YmJiZTtcbn1cblxuLnRhYmxlLWFjdGl2ZSxcbi50YWJsZS1hY3RpdmUgPiB0aCxcbi50YWJsZS1hY3RpdmUgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4udGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjNDU0ZDU1O1xufVxuXG4udGFibGUgLnRoZWFkLWxpZ2h0IHRoIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbn1cblxuLnRhYmxlLWRhcmsgdGgsXG4udGFibGUtZGFyayB0ZCxcbi50YWJsZS1kYXJrIHRoZWFkIHRoIHtcbiAgYm9yZGVyLWNvbG9yOiAjNDU0ZDU1O1xufVxuXG4udGFibGUtZGFyay50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRhYmxlLWRhcmsudGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbn1cblxuLnRhYmxlLWRhcmsudGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA3NSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS1zbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUtc20gPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlLW1kID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLWxnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICAudGFibGUtcmVzcG9uc2l2ZS1sZyA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUteGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlLXhsID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbDo6LW1zLWV4cGFuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2w6LW1vei1mb2N1c3Jpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiAwIDAgMCAjNDk1MDU3O1xufVxuXG4uZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzgwYmRmZjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuXG4uZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZm9ybS1jb250cm9sOmRpc2FibGVkLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLmZvcm0tY29udHJvbCxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPVwibW9udGhcIl0uZm9ybS1jb250cm9sIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbDpmb2N1czo6LW1zLXZhbHVlIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4zNzVyZW0gKyAxcHgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC4yNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDA7XG59XG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1zbSwgLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLWxnIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2xbc2l6ZV0sIHNlbGVjdC5mb3JtLWNvbnRyb2xbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTVweDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG59XG5cbi5mb3JtLXJvdyA+IC5jb2wsXG4uZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogMC4zcmVtO1xuICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0W2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cblxuLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4udmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjMjhhNzQ1O1xufVxuXG4udmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDAsIDE2NywgNjksIDAuOSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5mb3JtLXJvdyA+IC5jb2wgPiAudmFsaWQtdG9vbHRpcCxcbi5mb3JtLXJvdyA+IFtjbGFzcyo9XCJjb2wtXCJdID4gLnZhbGlkLXRvb2x0aXAge1xuICBsZWZ0OiA1cHg7XG59XG5cbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC10b29sdGlwLFxuLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwgLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzI4YTc0NScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OnZhbGlkLCAuY3VzdG9tLXNlbGVjdC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1ZW0gKyAyLjMxMjVyZW0pO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSByaWdodCAwLjc1cmVtIGNlbnRlci84cHggMTBweCBuby1yZXBlYXQsICNmZmYgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMyOGE3NDUnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIikgY2VudGVyIHJpZ2h0IDEuNzVyZW0vY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgbm8tcmVwZWF0O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZDpmb2N1cywgLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAjMjhhNzQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIGNvbG9yOiAjMjhhNzQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMzNGNlNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNGNlNTc7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCwgLmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC4yNSk7XG59XG5cbi5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogODAlO1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLmludmFsaWQtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIwLCA1MywgNjksIDAuOSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5mb3JtLXJvdyA+IC5jb2wgPiAuaW52YWxpZC10b29sdGlwLFxuLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0gPiAuaW52YWxpZC10b29sdGlwIHtcbiAgbGVmdDogNXB4O1xufVxuXG4ud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2RjMzU0NScgdmlld0JveD0nMCAwIDEyIDEyJyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2RjMzU0NScgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOmludmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDppbnZhbGlkLCAuY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVlbSArIDIuMzEyNXJlbSk7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1JyUzZSUzY3BhdGggZmlsbD0nJTIzMzQzYTQwJyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM2UlM2Mvc3ZnJTNlXCIpIHJpZ2h0IDAuNzVyZW0gY2VudGVyLzhweCAxMHB4IG5vLXJlcGVhdCwgI2ZmZiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2RjMzU0NScgdmlld0JveD0nMCAwIDEyIDEyJyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2RjMzU0NScgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlXCIpIGNlbnRlciByaWdodCAxLjc1cmVtL2NhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIG5vLXJlcGVhdDtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZDpmb2N1cywgLmN1c3RvbS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZTQ2MDZkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTQ2MDZkO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6aW52YWxpZDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCwgLmN1c3RvbS1maWxlLWlucHV0LmlzLWludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZm9ybS1pbmxpbmUgbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5pbnB1dC1ncm91cCxcbiAgLmZvcm0taW5saW5lIC5jdXN0b20tc2VsZWN0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmJ0biB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uYnRuOmhvdmVyIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJ0bjpmb2N1cywgLmJ0bi5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLmJ0bi5kaXNhYmxlZCwgLmJ0bjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5cbi5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmEuYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJ0bi1wcmltYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbn1cblxuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDY5ZDk7XG4gIGJvcmRlci1jb2xvcjogIzAwNjJjYztcbn1cblxuLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLXByaW1hcnkuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjlkOTtcbiAgYm9yZGVyLWNvbG9yOiAjMDA2MmNjO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgzOCwgMTQzLCAyNTUsIDAuNSk7XG59XG5cbi5idG4tcHJpbWFyeS5kaXNhYmxlZCwgLmJ0bi1wcmltYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbn1cblxuLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2MmNjO1xuICBib3JkZXItY29sb3I6ICMwMDVjYmY7XG59XG5cbi5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgzOCwgMTQzLCAyNTUsIDAuNSk7XG59XG5cbi5idG4tc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cblxuLmJ0bi1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVhNjI2ODtcbiAgYm9yZGVyLWNvbG9yOiAjNTQ1YjYyO1xufVxuXG4uYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVhNjI2ODtcbiAgYm9yZGVyLWNvbG9yOiAjNTQ1YjYyO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xufVxuXG4uYnRuLXNlY29uZGFyeS5kaXNhYmxlZCwgLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuXG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NDViNjI7XG4gIGJvcmRlci1jb2xvcjogIzRlNTU1Yjtcbn1cblxuLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEzMCwgMTM4LCAxNDUsIDAuNSk7XG59XG5cbi5idG4tc3VjY2VzcyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG59XG5cbi5idG4tc3VjY2Vzczpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE4ODM4O1xuICBib3JkZXItY29sb3I6ICMxZTdlMzQ7XG59XG5cbi5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTg4Mzg7XG4gIGJvcmRlci1jb2xvcjogIzFlN2UzNDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNzIsIDE4MCwgOTcsIDAuNSk7XG59XG5cbi5idG4tc3VjY2Vzcy5kaXNhYmxlZCwgLmJ0bi1zdWNjZXNzOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbn1cblxuLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU3ZTM0O1xuICBib3JkZXItY29sb3I6ICMxYzc0MzA7XG59XG5cbi5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg3MiwgMTgwLCA5NywgMC41KTtcbn1cblxuLmJ0bi1pbmZvIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjg7XG4gIGJvcmRlci1jb2xvcjogIzE3YTJiODtcbn1cblxuLmJ0bi1pbmZvOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMzg0OTY7XG4gIGJvcmRlci1jb2xvcjogIzExN2E4Yjtcbn1cblxuLmJ0bi1pbmZvOmZvY3VzLCAuYnRuLWluZm8uZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEzODQ5NjtcbiAgYm9yZGVyLWNvbG9yOiAjMTE3YThiO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1OCwgMTc2LCAxOTUsIDAuNSk7XG59XG5cbi5idG4taW5mby5kaXNhYmxlZCwgLmJ0bi1pbmZvOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjg7XG4gIGJvcmRlci1jb2xvcjogIzE3YTJiODtcbn1cblxuLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE3YThiO1xuICBib3JkZXItY29sb3I6ICMxMDcwN2Y7XG59XG5cbi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1OCwgMTc2LCAxOTUsIDAuNSk7XG59XG5cbi5idG4td2FybmluZyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XG59XG5cbi5idG4td2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBhODAwO1xuICBib3JkZXItY29sb3I6ICNkMzllMDA7XG59XG5cbi5idG4td2FybmluZzpmb2N1cywgLmJ0bi13YXJuaW5nLmZvY3VzIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGE4MDA7XG4gIGJvcmRlci1jb2xvcjogI2QzOWUwMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIyLCAxNzAsIDEyLCAwLjUpO1xufVxuXG4uYnRuLXdhcm5pbmcuZGlzYWJsZWQsIC5idG4td2FybmluZzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XG59XG5cbi5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzOWUwMDtcbiAgYm9yZGVyLWNvbG9yOiAjYzY5NTAwO1xufVxuXG4uYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIyLCAxNzAsIDEyLCAwLjUpO1xufVxuXG4uYnRuLWRhbmdlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG59XG5cbi5idG4tZGFuZ2VyOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjODIzMzM7XG4gIGJvcmRlci1jb2xvcjogI2JkMjEzMDtcbn1cblxuLmJ0bi1kYW5nZXI6Zm9jdXMsIC5idG4tZGFuZ2VyLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjODIzMzM7XG4gIGJvcmRlci1jb2xvcjogI2JkMjEzMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjI1LCA4MywgOTcsIDAuNSk7XG59XG5cbi5idG4tZGFuZ2VyLmRpc2FibGVkLCAuYnRuLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG59XG5cbi5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JkMjEzMDtcbiAgYm9yZGVyLWNvbG9yOiAjYjIxZjJkO1xufVxuXG4uYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjI1LCA4MywgOTcsIDAuNSk7XG59XG5cbi5idG4tbGlnaHQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4uYnRuLWxpZ2h0OmhvdmVyIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmU2ZWE7XG4gIGJvcmRlci1jb2xvcjogI2RhZTBlNTtcbn1cblxuLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1saWdodC5mb2N1cyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlNmVhO1xuICBib3JkZXItY29sb3I6ICNkYWUwZTU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIxNiwgMjE3LCAyMTksIDAuNSk7XG59XG5cbi5idG4tbGlnaHQuZGlzYWJsZWQsIC5idG4tbGlnaHQ6ZGlzYWJsZWQge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4uYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWUwZTU7XG4gIGJvcmRlci1jb2xvcjogI2QzZDlkZjtcbn1cblxuLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIxNiwgMjE3LCAyMTksIDAuNSk7XG59XG5cbi5idG4tZGFyayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG5cbi5idG4tZGFyazpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyNzJiO1xuICBib3JkZXItY29sb3I6ICMxZDIxMjQ7XG59XG5cbi5idG4tZGFyazpmb2N1cywgLmJ0bi1kYXJrLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMzI3MmI7XG4gIGJvcmRlci1jb2xvcjogIzFkMjEyNDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoODIsIDg4LCA5MywgMC41KTtcbn1cblxuLmJ0bi1kYXJrLmRpc2FibGVkLCAuYnRuLWRhcms6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xufVxuXG4uYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDIxMjQ7XG4gIGJvcmRlci1jb2xvcjogIzE3MWExZDtcbn1cblxuLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDgyLCA4OCwgOTMsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4uYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnkuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1wcmltYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICMwMDdiZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDExNywgMTI1LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1zdWNjZXNzIHtcbiAgY29sb3I6ICMyOGE3NDU7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NTtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xufVxuXG4uYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zdWNjZXNzOmRpc2FibGVkIHtcbiAgY29sb3I6ICMyOGE3NDU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbn1cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtaW5mbyB7XG4gIGNvbG9yOiAjMTdhMmI4O1xuICBib3JkZXItY29sb3I6ICMxN2EyYjg7XG59XG5cbi5idG4tb3V0bGluZS1pbmZvOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjg7XG4gIGJvcmRlci1jb2xvcjogIzE3YTJiODtcbn1cblxuLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjMsIDE2MiwgMTg0LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtaW5mby5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWluZm86ZGlzYWJsZWQge1xuICBjb2xvcjogIzE3YTJiODtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3YTJiODtcbiAgYm9yZGVyLWNvbG9yOiAjMTdhMmI4O1xufVxuXG4uYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLWluZm8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjMsIDE2MiwgMTg0LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZyB7XG4gIGNvbG9yOiAjZmZjMTA3O1xuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nOmhvdmVyIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcbn1cblxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtd2FybmluZzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZjMTA3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDE5MywgNywgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhbmdlciB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG59XG5cbi5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1kYW5nZXIuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYW5nZXI6ZGlzYWJsZWQge1xuICBjb2xvcjogI2RjMzU0NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbi5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1saWdodCB7XG4gIGNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XG59XG5cbi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XG59XG5cbi5idG4tb3V0bGluZS1saWdodDpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0LmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjQ4LCAyNDksIDI1MCwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWxpZ2h0LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtbGlnaHQ6ZGlzYWJsZWQge1xuICBjb2xvcjogI2Y4ZjlmYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtbGlnaHQuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjQ4LCAyNDksIDI1MCwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhcmsge1xuICBjb2xvcjogIzM0M2E0MDtcbiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xufVxuXG4uYnRuLW91dGxpbmUtZGFyazpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyay5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCA1OCwgNjQsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtZGFyazpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMzQzYTQwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4uc2hvdyA+IC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6ICMzNDNhNDA7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuLnNob3cgPiAuYnRuLW91dGxpbmUtZGFyay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgNTgsIDY0LCAwLjUpO1xufVxuXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzAwN2JmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYnRuLWxpbms6aG92ZXIge1xuICBjb2xvcjogIzAwNTZiMztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5idG4tbGluazpmb2N1cywgLmJ0bi1saW5rLmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5idG4tbGluazpkaXNhYmxlZCwgLmJ0bi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYnRuLWxnLCAuYnRuLWdyb3VwLWxnID4gLmJ0biB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLmJ0bi1zbSwgLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idG4tYmxvY2ssXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idG4tYmxvY2sge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZhZGUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZhZGUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmZhZGU6bm90KC5zaG93KSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jb2xsYXBzZTpub3QoLnNob3cpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMzVzIGVhc2U7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jb2xsYXBzaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xuICBtYXJnaW46IDAuMTI1cmVtIDAgMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUtc20tbGVmdCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24tbWVudS1zbS1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUtbWQtbGVmdCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24tbWVudS1tZC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUtbGctbGVmdCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24tbWVudS1sZy1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kcm9wZG93bi1tZW51LXhsLWxlZnQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLW1lbnUteGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLmRyb3B1cCAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcbn1cblxuLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMC4xMjVyZW07XG59XG5cbi5kcm9wcmlnaHQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZDtcbn1cblxuLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1cInRvcFwiXSwgLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSwgLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG59XG5cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDAuNXJlbSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZWNlZjtcbn1cblxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMS41cmVtO1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi5kcm9wZG93bi1pdGVtOmhvdmVyLCAuZHJvcGRvd24taXRlbTpmb2N1cyB7XG4gIGNvbG9yOiAjMTYxODFiO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG59XG5cbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbn1cblxuLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcbiAgY29sb3I6ICNhZGI1YmQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMS41cmVtO1xuICBjb2xvcjogIzIxMjUyOTtcbn1cblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uYnRuLWdyb3VwID4gLmJ0bixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmJ0bi1ncm91cCA+IC5idG46aG92ZXIsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpob3ZlciB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOmZvY3VzLCAuYnRuLWdyb3VwID4gLmJ0bjphY3RpdmUsIC5idG4tZ3JvdXAgPiAuYnRuLmFjdGl2ZSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmZvY3VzLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46YWN0aXZlLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4uYWN0aXZlIHtcbiAgei1pbmRleDogMTtcbn1cblxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjU2MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41NjI1cmVtO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlcixcbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsXG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjpiZWZvcmUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLWdyb3VwLXNtID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtbGcgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0biBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB3aWR0aDogMSU7XG4gIG1pbi13aWR0aDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmN1c3RvbS1maWxlLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0ICsgLmN1c3RvbS1maWxlLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0ICsgLmN1c3RvbS1maWxlLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlICsgLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlICsgLmN1c3RvbS1maWxlIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICB6LWluZGV4OiAzO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIHtcbiAgei1pbmRleDogNDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5jdXN0b20tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuZm9ybS1jb250cm9sOm50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5jdXN0b20tc2VsZWN0Om50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuICsgMykgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bixcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bjpmb2N1cyxcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0bjpmb2N1cyB7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4gKyAuYnRuLFxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0bixcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5idG4sXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNzVyZW07XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAxLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBjb2xvci1hZGp1c3Q6IGV4YWN0O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dDpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjODBiZGZmO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZDdmZjtcbiAgYm9yZGVyLWNvbG9yOiAjYjNkN2ZmO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXRbZGlzYWJsZWRdIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0W2Rpc2FibGVkXSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogLTEuNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6ICNhZGI1YmQgc29saWQgMXB4O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IC0xLjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiA1MCUgLyA1MCUgNTAlIG5vLXJlcGVhdDtcbn1cblxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjNmZmYnIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnJTNlJTNjcGF0aCBzdHJva2U9JyUyM2ZmZicgZD0nTTAgMmg0Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEyMywgMjU1LCAwLjUpO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEyMywgMjU1LCAwLjUpO1xufVxuXG4uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEyMywgMjU1LCAwLjUpO1xufVxuXG4uY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogMi4yNXJlbTtcbn1cblxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBsZWZ0OiAtMi4yNXJlbTtcbiAgd2lkdGg6IDEuNzVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbn1cblxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIHRvcDogY2FsYygwLjI1cmVtICsgMnB4KTtcbiAgbGVmdDogY2FsYygtMi4yNXJlbSArIDJweCk7XG4gIHdpZHRoOiBjYWxjKDFyZW0gLSA0cHgpO1xuICBoZWlnaHQ6IGNhbGMoMXJlbSAtIDRweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGI1YmQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNzVyZW0pO1xufVxuXG4uY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMS43NXJlbSAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1JyUzZSUzY3BhdGggZmlsbD0nJTIzMzQzYTQwJyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM2UlM2Mvc3ZnJTNlXCIpIHJpZ2h0IDAuNzVyZW0gY2VudGVyLzhweCAxMHB4IG5vLXJlcGVhdDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmN1c3RvbS1zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM4MGJkZmY7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLmN1c3RvbS1zZWxlY3Q6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uY3VzdG9tLXNlbGVjdFttdWx0aXBsZV0sIC5jdXN0b20tc2VsZWN0W3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uY3VzdG9tLXNlbGVjdDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4uY3VzdG9tLXNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b20tc2VsZWN0Oi1tb3otZm9jdXNyaW5nIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogMCAwIDAgIzQ5NTA1Nztcbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIDJweCk7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjODBiZGZmO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dFtkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLWZpbGUtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQ6bGFuZyhlbikgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogXCJCcm93c2VcIjtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgY29udGVudDogXCJCcm93c2VcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yNXJlbSAwLjI1cmVtIDA7XG59XG5cbi5jdXN0b20tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uY3VzdG9tLXJhbmdlOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuXG4uY3VzdG9tLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLmN1c3RvbS1yYW5nZTpmb2N1czo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLmN1c3RvbS1yYW5nZTo6LW1vei1mb2N1cy1vdXRlciB7XG4gIGJvcmRlcjogMDtcbn1cblxuLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2Q3ZmY7XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cblxuLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZDdmZjtcbn1cblxuLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYiB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4ycmVtO1xuICBtYXJnaW4tbGVmdDogMC4ycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkN2ZmO1xufVxuXG4uY3VzdG9tLXJhbmdlOjotbXMtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW07XG59XG5cbi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLWxvd2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cblxuLmN1c3RvbS1yYW5nZTo6LW1zLWZpbGwtdXBwZXIge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG5cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjViZDtcbn1cblxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xufVxuXG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbXMtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbn1cblxuLm5hdi1saW5rOmhvdmVyLCAubmF2LWxpbms6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcbn1cblxuLm5hdi10YWJzIC5uYXYtbGluayB7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbn1cblxuLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciwgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U5ZWNlZiAjZTllY2VmICNkZWUyZTY7XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiAjZmZmO1xufVxuXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLm5hdi1waWxscyAubmF2LWxpbmsge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ubmF2LXBpbGxzIC5uYXYtbGluay5hY3RpdmUsXG4ubmF2LXBpbGxzIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG59XG5cbi5uYXYtZmlsbCA+IC5uYXYtbGluayxcbi5uYXYtZmlsbCAubmF2LWl0ZW0ge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubmF2LWp1c3RpZmllZCA+IC5uYXYtbGluayxcbi5uYXYtanVzdGlmaWVkIC5uYXYtaXRlbSB7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGFiLWNvbnRlbnQgPiAuYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbn1cblxuLm5hdmJhciAuY29udGFpbmVyLFxuLm5hdmJhciAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyIC5jb250YWluZXItc20sIC5uYXZiYXIgLmNvbnRhaW5lci1tZCwgLm5hdmJhciAuY29udGFpbmVyLWxnLCAubmF2YmFyIC5jb250YWluZXIteGwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBub25lO1xufVxuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ubmF2YmFyLXRvZ2dsZXI6aG92ZXIsIC5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogNzV2aDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lcixcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXIteGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubmF2YmFyLWV4cGFuZC1zbSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lcixcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbWQge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLXhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLWxnIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXhsIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm5hdmJhci1leHBhbmQge1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXIteGwge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG5cbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG5cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBmbGV4LWJhc2lzOiBhdXRvO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuYWN0aXZlID4gLm5hdi1saW5rLFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuc2hvdyxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgwLCAwLCAwLCAwLjUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGEge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyLCAubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5hY3RpdmUgPiAubmF2LWxpbmssXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCclM2UlM2NwYXRoIHN0cm9rZT0ncmdiYSUyODI1NSwgMjU1LCAyNTUsIDAuNSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIik7XG59XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmhvdmVyLCAubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uY2FyZCA+IGhyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmNhcmQgPiAubGlzdC1ncm91cCB7XG4gIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG59XG5cbi5jYXJkID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4uY2FyZCA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLmNhcmQtYm9keSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jYXJkLWxpbmsgKyAuY2FyZC1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG59XG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xufVxuXG4uY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCkgMCAwO1xufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbn1cblxuLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG59XG5cbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtZGVjayAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY2FyZC1kZWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gIH1cbiAgLmNhcmQtZGVjayAuY2FyZCB7XG4gICAgZmxleDogMSAwIDAlO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG59XG5cbi5jYXJkLWdyb3VwID4gLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkICsgLmNhcmQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tLFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG59XG5cbi5jYXJkLWNvbHVtbnMgLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNhcmQtY29sdW1ucyB7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICAgIGNvbHVtbi1nYXA6IDEuMjVyZW07XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG4gIH1cbiAgLmNhcmQtY29sdW1ucyAuY2FyZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5hY2NvcmRpb24ge1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG59XG5cbi5hY2NvcmRpb24gPiAuY2FyZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5hY2NvcmRpb24gPiAuY2FyZDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmFjY29yZGlvbiA+IC5jYXJkOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmFjY29yZGlvbiA+IC5jYXJkID4gLmNhcmQtaGVhZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cblxuLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBjb250ZW50OiBcIi9cIjtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjMDA3YmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZS1saW5rOmhvdmVyIHtcbiAgei1pbmRleDogMjtcbiAgY29sb3I6ICMwMDU2YjM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xufVxuXG4ucGFnZS1saW5rOmZvY3VzIHtcbiAgei1pbmRleDogMztcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuXG4ucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4ucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xufVxuXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1saW5rIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zcmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjNyZW07XG59XG5cbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuM3JlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLnBhZ2luYXRpb24tc20gLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjJyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xufVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMjVlbSAwLjRlbTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmJhZGdlIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbmEuYmFkZ2U6aG92ZXIsIGEuYmFkZ2U6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iYWRnZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC42ZW07XG4gIHBhZGRpbmctbGVmdDogMC42ZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xufVxuXG4uYmFkZ2UtcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xufVxuXG5hLmJhZGdlLXByaW1hcnk6aG92ZXIsIGEuYmFkZ2UtcHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2MmNjO1xufVxuXG5hLmJhZGdlLXByaW1hcnk6Zm9jdXMsIGEuYmFkZ2UtcHJpbWFyeS5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjUpO1xufVxuXG4uYmFkZ2Utc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XG59XG5cbmEuYmFkZ2Utc2Vjb25kYXJ5OmhvdmVyLCBhLmJhZGdlLXNlY29uZGFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ1YjYyO1xufVxuXG5hLmJhZGdlLXNlY29uZGFyeTpmb2N1cywgYS5iYWRnZS1zZWNvbmRhcnkuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDExNywgMTI1LCAwLjUpO1xufVxuXG4uYmFkZ2Utc3VjY2VzcyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xufVxuXG5hLmJhZGdlLXN1Y2Nlc3M6aG92ZXIsIGEuYmFkZ2Utc3VjY2Vzczpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU3ZTM0O1xufVxuXG5hLmJhZGdlLXN1Y2Nlc3M6Zm9jdXMsIGEuYmFkZ2Utc3VjY2Vzcy5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAwLjUpO1xufVxuXG4uYmFkZ2UtaW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4O1xufVxuXG5hLmJhZGdlLWluZm86aG92ZXIsIGEuYmFkZ2UtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE3YThiO1xufVxuXG5hLmJhZGdlLWluZm86Zm9jdXMsIGEuYmFkZ2UtaW5mby5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzLCAxNjIsIDE4NCwgMC41KTtcbn1cblxuLmJhZGdlLXdhcm5pbmcge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcbn1cblxuYS5iYWRnZS13YXJuaW5nOmhvdmVyLCBhLmJhZGdlLXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzOWUwMDtcbn1cblxuYS5iYWRnZS13YXJuaW5nOmZvY3VzLCBhLmJhZGdlLXdhcm5pbmcuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDE5MywgNywgMC41KTtcbn1cblxuLmJhZGdlLWRhbmdlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xufVxuXG5hLmJhZGdlLWRhbmdlcjpob3ZlciwgYS5iYWRnZS1kYW5nZXI6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JkMjEzMDtcbn1cblxuYS5iYWRnZS1kYW5nZXI6Zm9jdXMsIGEuYmFkZ2UtZGFuZ2VyLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuNSk7XG59XG5cbi5iYWRnZS1saWdodCB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG5hLmJhZGdlLWxpZ2h0OmhvdmVyLCBhLmJhZGdlLWxpZ2h0OmZvY3VzIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWUwZTU7XG59XG5cbmEuYmFkZ2UtbGlnaHQ6Zm9jdXMsIGEuYmFkZ2UtbGlnaHQuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFyayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xufVxuXG5hLmJhZGdlLWRhcms6aG92ZXIsIGEuYmFkZ2UtZGFyazpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQyMTI0O1xufVxuXG5hLmJhZGdlLWRhcms6Zm9jdXMsIGEuYmFkZ2UtZGFyay5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCA1OCwgNjQsIDAuNSk7XG59XG5cbi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAycmVtIDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5qdW1ib3Ryb24ge1xuICAgIHBhZGRpbmc6IDRyZW0gMnJlbTtcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5hbGVydC1oZWFkaW5nIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbn1cblxuLmFsZXJ0LWRpc21pc3NpYmxlIC5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLmFsZXJ0LXByaW1hcnkge1xuICBjb2xvcjogIzAwNDA4NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTVmZjtcbiAgYm9yZGVyLWNvbG9yOiAjYjhkYWZmO1xufVxuXG4uYWxlcnQtcHJpbWFyeSBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM5ZmNkZmY7XG59XG5cbi5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMwMDI3NTI7XG59XG5cbi5hbGVydC1zZWNvbmRhcnkge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcbiAgYm9yZGVyLWNvbG9yOiAjZDZkOGRiO1xufVxuXG4uYWxlcnQtc2Vjb25kYXJ5IGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2M4Y2JjZjtcbn1cblxuLmFsZXJ0LXNlY29uZGFyeSAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMjAyMzI2O1xufVxuXG4uYWxlcnQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMTU1NzI0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRlZGRhO1xuICBib3JkZXItY29sb3I6ICNjM2U2Y2I7XG59XG5cbi5hbGVydC1zdWNjZXNzIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2IxZGZiYjtcbn1cblxuLmFsZXJ0LXN1Y2Nlc3MgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzBiMmUxMztcbn1cblxuLmFsZXJ0LWluZm8ge1xuICBjb2xvcjogIzBjNTQ2MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QxZWNmMTtcbiAgYm9yZGVyLWNvbG9yOiAjYmVlNWViO1xufVxuXG4uYWxlcnQtaW5mbyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNhYmRkZTU7XG59XG5cbi5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICMwNjJjMzM7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgY29sb3I6ICM4NTY0MDQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XG4gIGJvcmRlci1jb2xvcjogI2ZmZWViYTtcbn1cblxuLmFsZXJ0LXdhcm5pbmcgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZmZlOGExO1xufVxuXG4uYWxlcnQtd2FybmluZyAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjNTMzZjAzO1xufVxuXG4uYWxlcnQtZGFuZ2VyIHtcbiAgY29sb3I6ICM3MjFjMjQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGQ3ZGE7XG4gIGJvcmRlci1jb2xvcjogI2Y1YzZjYjtcbn1cblxuLmFsZXJ0LWRhbmdlciBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmMWIwYjc7XG59XG5cbi5hbGVydC1kYW5nZXIgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzQ5MTIxNztcbn1cblxuLmFsZXJ0LWxpZ2h0IHtcbiAgY29sb3I6ICM4MTgxODI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1jb2xvcjogI2ZkZmRmZTtcbn1cblxuLmFsZXJ0LWxpZ2h0IGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2VjZWNmNjtcbn1cblxuLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM2ODY4Njg7XG59XG5cbi5hbGVydC1kYXJrIHtcbiAgY29sb3I6ICMxYjFlMjE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmQ4ZDk7XG4gIGJvcmRlci1jb2xvcjogI2M2YzhjYTtcbn1cblxuLmFsZXJ0LWRhcmsgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjYjliYmJlO1xufVxuXG4uYWxlcnQtZGFyayAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMDQwNTA1O1xufVxuXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMXJlbSAwO1xuICB9XG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDFyZW07XG59XG5cbi5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICBhbmltYXRpb246IDFzIGxpbmVhciBpbmZpbml0ZSBwcm9ncmVzcy1iYXItc3RyaXBlcztcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgei1pbmRleDogMTtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246YWN0aXZlIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkLCAubGlzdC1ncm91cC1pdGVtOmRpc2FibGVkIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xufVxuXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICB9XG59XG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xufVxuXG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeSB7XG4gIGNvbG9yOiAjMDA0MDg1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjhkYWZmO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzAwNDA4NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlmY2RmZjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQwODU7XG4gIGJvcmRlci1jb2xvcjogIzAwNDA4NTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzM4M2Q0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ZDhkYjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMzgzZDQxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhjYmNmO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzgzZDQxO1xuICBib3JkZXItY29sb3I6ICMzODNkNDE7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7XG4gIGNvbG9yOiAjMTU1NzI0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzNlNmNiO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzE1NTcyNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IxZGZiYjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTU3MjQ7XG4gIGJvcmRlci1jb2xvcjogIzE1NTcyNDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHtcbiAgY29sb3I6ICMwYzU0NjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZWU1ZWI7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMGM1NDYwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWJkZGU1O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBjNTQ2MDtcbiAgYm9yZGVyLWNvbG9yOiAjMGM1NDYwO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcge1xuICBjb2xvcjogIzg1NjQwNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWViYTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICM4NTY0MDQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmU4YTE7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODU2NDA0O1xuICBib3JkZXItY29sb3I6ICM4NTY0MDQ7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHtcbiAgY29sb3I6ICM3MjFjMjQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWM2Y2I7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICBjb2xvcjogIzcyMWMyNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxYjBiNztcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzcyMWMyNDtcbiAgYm9yZGVyLWNvbG9yOiAjNzIxYzI0O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0IHtcbiAgY29sb3I6ICM4MTgxODI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGZkZmU7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICM4MTgxODI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZjY7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgxODE4MjtcbiAgYm9yZGVyLWNvbG9yOiAjODE4MTgyO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhcmsge1xuICBjb2xvcjogIzFiMWUyMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2YzhjYTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICMxYjFlMjE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiOWJiYmU7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxZTIxO1xuICBib3JkZXItY29sb3I6ICMxYjFlMjE7XG59XG5cbi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjtcbiAgb3BhY2l0eTogLjU7XG59XG5cbi5jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlciwgLmNsb3NlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmZvY3VzIHtcbiAgb3BhY2l0eTogLjc1O1xufVxuXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi50b2FzdCB7XG4gIGZsZXgtYmFzaXM6IDM1MHB4O1xuICBtYXgtd2lkdGg6IDM1MHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJveC1zaGFkb3c6IDAgMC4yNXJlbSAwLjc1cmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgb3BhY2l0eTogMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnRvYXN0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4udG9hc3Quc2hvd2luZyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi50b2FzdC5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi50b2FzdC5oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAwLjc1cmVtO1xufVxuXG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG91dGxpbmU6IDA7XG59XG5cbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAuNXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwcHgpO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5tb2RhbC5tb2RhbC1zdGF0aWMgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMXJlbSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtaGVhZGVyLFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1mb290ZXIge1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1ib2R5IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMXJlbSk7XG4gIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogbm9uZTtcbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZTo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gIG91dGxpbmU6IDA7XG59XG5cbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDQwO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi5tb2RhbC1iYWNrZHJvcC5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm1vZGFsLWJhY2tkcm9wLnNob3cge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XG59XG5cbi5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBtYXJnaW46IC0xcmVtIC0xcmVtIC0xcmVtIGF1dG87XG59XG5cbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbn1cblxuLm1vZGFsLWZvb3RlciA+ICoge1xuICBtYXJnaW46IDAuMjVyZW07XG59XG5cbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDEuNzVyZW0gYXV0bztcbiAgfVxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNXJlbSk7XG4gIH1cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMy41cmVtKTtcbiAgfVxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuICB9XG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQ6OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMy41cmVtKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICB9XG4gIC5tb2RhbC1zbSB7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDcwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xufVxuXG4udG9vbHRpcC5zaG93IHtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4udG9vbHRpcCAuYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMC44cmVtO1xuICBoZWlnaHQ6IDAuNHJlbTtcbn1cblxuLnRvb2x0aXAgLmFycm93OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy10b29sdGlwLXRvcCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICBwYWRkaW5nOiAwLjRyZW0gMDtcbn1cblxuLmJzLXRvb2x0aXAtdG9wIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0gLmFycm93IHtcbiAgYm90dG9tOiAwO1xufVxuXG4uYnMtdG9vbHRpcC10b3AgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIC5hcnJvdzo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDtcbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICBwYWRkaW5nOiAwIDAuNHJlbTtcbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIC5hcnJvdyB7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwLjRyZW07XG4gIGhlaWdodDogMC44cmVtO1xufVxuXG4uYnMtdG9vbHRpcC1yaWdodCAuYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSAuYXJyb3c6OmJlZm9yZSB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMC40cmVtIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDtcbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tLCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20gLmFycm93LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSAuYXJyb3cge1xuICB0b3A6IDA7XG59XG5cbi5icy10b29sdGlwLWJvdHRvbSAuYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gLmFycm93OjpiZWZvcmUge1xuICBib3R0b206IDA7XG4gIGJvcmRlci13aWR0aDogMCAwLjRyZW0gMC40cmVtO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwO1xufVxuXG4uYnMtdG9vbHRpcC1sZWZ0LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICBwYWRkaW5nOiAwIDAuNHJlbTtcbn1cblxuLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSAuYXJyb3cge1xuICByaWdodDogMDtcbiAgd2lkdGg6IDAuNHJlbTtcbiAgaGVpZ2h0OiAwLjhyZW07XG59XG5cbi5icy10b29sdGlwLWxlZnQgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSAuYXJyb3c6OmJlZm9yZSB7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAgMC40cmVtIDAuNHJlbTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDA7XG59XG5cbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNjA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDI3NnB4O1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLnBvcG92ZXIgLmFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW46IDAgMC4zcmVtO1xufVxuXG4ucG9wb3ZlciAuYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIgLmFycm93OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy1wb3BvdmVyLXRvcCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdywgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0gPiAuYXJyb3cge1xuICBib3R0b206IGNhbGMoLTAuNXJlbSAtIDFweCk7XG59XG5cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInRvcFwiXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cblxuLmJzLXBvcG92ZXItdG9wID4gLmFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0gPiAuYXJyb3c6OmFmdGVyIHtcbiAgYm90dG9tOiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xufVxuXG4uYnMtcG9wb3Zlci1yaWdodCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdID4gLmFycm93IHtcbiAgbGVmdDogY2FsYygtMC41cmVtIC0gMXB4KTtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW46IDAuM3JlbSAwO1xufVxuXG4uYnMtcG9wb3Zlci1yaWdodCA+IC5hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdID4gLmFycm93OjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cblxuLmJzLXBvcG92ZXItcmlnaHQgPiAuYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdID4gLmFycm93OjphZnRlciB7XG4gIGxlZnQ6IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICNmZmY7XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5hcnJvdywgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gPiAuYXJyb3cge1xuICB0b3A6IGNhbGMoLTAuNXJlbSAtIDFweCk7XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdID4gLmFycm93OjphZnRlciB7XG4gIHRvcDogMXB4O1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y3ZjdmNztcbn1cblxuLmJzLXBvcG92ZXItbGVmdCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSA+IC5hcnJvdyB7XG4gIHJpZ2h0OiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMC4zcmVtIDA7XG59XG5cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJsZWZ0XCJdID4gLmFycm93OjpiZWZvcmUge1xuICByaWdodDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cblxuLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSA+IC5hcnJvdzo6YWZ0ZXIge1xuICByaWdodDogMXB4O1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmO1xufVxuXG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ViZWJlYjtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xufVxuXG4ucG9wb3Zlci1oZWFkZXI6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNhcm91c2VsLWlubmVyOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzIDAuNnM7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDE1JTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogMC41O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldjpob3ZlciwgLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cyxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNmZmYnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjVMNC4yNSA0bDIuNS0yLjVMNS4yNSAweicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZicgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDE1JTtcbiAgbWFyZ2luLWxlZnQ6IDE1JTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmNhcm91c2VsLWluZGljYXRvcnMgbGkge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogLjU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyBlYXNlO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNSU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMTUlO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogMC4yNWVtIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBib3JkZXItd2lkdGg6IDAuMmVtO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuc3Bpbm5lci1ib3JkZXIsXG4gIC5zcGlubmVyLWdyb3cge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgfVxufVxuXG4uYWxpZ24tYmFzZWxpbmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRleHQtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi10ZXh0LXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50O1xufVxuXG4uYmctcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmYgIWltcG9ydGFudDtcbn1cblxuYS5iZy1wcmltYXJ5OmhvdmVyLCBhLmJnLXByaW1hcnk6Zm9jdXMsXG5idXR0b24uYmctcHJpbWFyeTpob3ZlcixcbmJ1dHRvbi5iZy1wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjJjYyAhaW1wb3J0YW50O1xufVxuXG4uYmctc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG5hLmJnLXNlY29uZGFyeTpob3ZlciwgYS5iZy1zZWNvbmRhcnk6Zm9jdXMsXG5idXR0b24uYmctc2Vjb25kYXJ5OmhvdmVyLFxuYnV0dG9uLmJnLXNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NDViNjIgIWltcG9ydGFudDtcbn1cblxuLmJnLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctc3VjY2Vzczpob3ZlciwgYS5iZy1zdWNjZXNzOmZvY3VzLFxuYnV0dG9uLmJnLXN1Y2Nlc3M6aG92ZXIsXG5idXR0b24uYmctc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTdlMzQgIWltcG9ydGFudDtcbn1cblxuLmJnLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctaW5mbzpob3ZlciwgYS5iZy1pbmZvOmZvY3VzLFxuYnV0dG9uLmJnLWluZm86aG92ZXIsXG5idXR0b24uYmctaW5mbzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMTdhOGIgIWltcG9ydGFudDtcbn1cblxuLmJnLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctd2FybmluZzpob3ZlciwgYS5iZy13YXJuaW5nOmZvY3VzLFxuYnV0dG9uLmJnLXdhcm5pbmc6aG92ZXIsXG5idXR0b24uYmctd2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMzllMDAgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbn1cblxuYS5iZy1kYW5nZXI6aG92ZXIsIGEuYmctZGFuZ2VyOmZvY3VzLFxuYnV0dG9uLmJnLWRhbmdlcjpob3ZlcixcbmJ1dHRvbi5iZy1kYW5nZXI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmQyMTMwICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcbn1cblxuYS5iZy1saWdodDpob3ZlciwgYS5iZy1saWdodDpmb2N1cyxcbmJ1dHRvbi5iZy1saWdodDpob3ZlcixcbmJ1dHRvbi5iZy1saWdodDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWUwZTUgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwICFpbXBvcnRhbnQ7XG59XG5cbmEuYmctZGFyazpob3ZlciwgYS5iZy1kYXJrOmZvY3VzLFxuYnV0dG9uLmJnLWRhcms6aG92ZXIsXG5idXR0b24uYmctZGFyazpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDIxMjQgIWltcG9ydGFudDtcbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItcmlnaHQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1sZWZ0IHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItMCB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcC0wIHtcbiAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXJpZ2h0LTAge1xuICBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1ib3R0b20tMCB7XG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1sZWZ0LTAge1xuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXByaW1hcnkge1xuICBib3JkZXItY29sb3I6ICMwMDdiZmYgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zZWNvbmRhcnkge1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zdWNjZXNzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogIzE3YTJiOCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXdhcm5pbmcge1xuICBib3JkZXItY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1kYW5nZXIge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1saWdodCB7XG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWRhcmsge1xuICBib3JkZXItY29sb3I6ICMzNDNhNDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5kLW5vbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xufVxuXG4uZC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmQtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5kLXRhYmxlLXJvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZS1jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xufVxuXG4uZC1mbGV4IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4uZC1pbmxpbmUtZmxleCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZC1zbS1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtc20taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1zbS1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXNtLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXNtLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXNtLXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtc20tdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXNtLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuICAuZC1zbS1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmQtbWQtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLW1kLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbWQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC1tZC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC1tZC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1tZC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5kLW1kLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICAuZC1tZC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbWQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5kLWxnLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1sZy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLWxnLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbGctYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbGctdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbGctdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICAuZC1sZy10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtbGctZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG4gIC5kLWxnLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmQteGwtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXhsLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQteGwtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC14bC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC14bC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICAuZC14bC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXhsLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICAuZC14bC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQteGwtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmQtcHJpbnQtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXByaW50LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC1wcmludC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZC1wcmludC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICAuZC1wcmludC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5kLXByaW50LXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICAuZC1wcmludC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZSAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLFxuLmVtYmVkLXJlc3BvbnNpdmUgZW1iZWQsXG4uZW1iZWQtcmVzcG9uc2l2ZSBvYmplY3QsXG4uZW1iZWQtcmVzcG9uc2l2ZSB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlcjogMDtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMjFieTk6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA0Mi44NTcxNDMlO1xufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OTo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtNGJ5Mzo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDc1JTtcbn1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMWJ5MTo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDEwMCU7XG59XG5cbi5mbGV4LXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC13cmFwIHtcbiAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LW5vd3JhcCB7XG4gIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXdyYXAtcmV2ZXJzZSB7XG4gIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWZpbGwge1xuICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ncm93LTAge1xuICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZ3Jvdy0xIHtcbiAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXNocmluay0wIHtcbiAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtc2hyaW5rLTEge1xuICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LXN0YXJ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LWFyb3VuZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1lbmQge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLWJhc2VsaW5lIHtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtc3RhcnQge1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWVuZCB7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWNlbnRlciB7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1iZXR3ZWVuIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1hcm91bmQge1xuICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtc3RyZXRjaCB7XG4gIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtYXV0byB7XG4gIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtc3RhcnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWVuZCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWNlbnRlciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1iYXNlbGluZSB7XG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZmxleC1zbS1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tZmlsbCB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tc2hyaW5rLTAge1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXNtLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtc20tZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtc20tY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1zbS1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXNtLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1zbS1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXNtLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1zbS1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtc20tc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1zbS1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtc20tY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mbGV4LW1kLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLWdyb3ctMCB7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1zaHJpbmstMSB7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1tZC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1tZC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbWQtYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLW1kLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLW1kLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLW1kLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZsZXgtbGctcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctd3JhcC1yZXZlcnNlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1ncm93LTEge1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbGctc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLWxnLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLWxnLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1sZy1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1sZy1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctY2VudGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1sZy1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbGctYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbGctZW5kIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbGctYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZsZXgteGwtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtd3JhcC1yZXZlcnNlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1ncm93LTEge1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC14bC1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC14bC1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMteGwtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXhsLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXhsLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy14bC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQteGwtc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC14bC1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC14bC1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYteGwtYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYteGwtZW5kIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXhsLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mbG9hdC1zbS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbG9hdC1zbS1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsb2F0LXNtLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mbG9hdC1tZC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbG9hdC1tZC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsb2F0LW1kLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mbG9hdC1sZy1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbG9hdC1sZy1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsb2F0LWxnLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZmxvYXQteGwtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAuZmxvYXQteGwtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbG9hdC14bC1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi51c2VyLXNlbGVjdC1hbGwge1xuICB1c2VyLXNlbGVjdDogYWxsICFpbXBvcnRhbnQ7XG59XG5cbi51c2VyLXNlbGVjdC1hdXRvIHtcbiAgdXNlci1zZWxlY3Q6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLnVzZXItc2VsZWN0LW5vbmUge1xuICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3ctYXV0byB7XG4gIG92ZXJmbG93OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy1oaWRkZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1zdGF0aWMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1zdGlja3kge1xuICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XG59XG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMzA7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMzA7XG59XG5cbkBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAuc3RpY2t5LXRvcCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAyMDtcbiAgfVxufVxuXG4uc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGU6YWN0aXZlLCAuc3Itb25seS1mb2N1c2FibGU6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLnNoYWRvdy1zbSB7XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3ctbGcge1xuICBib3gtc2hhZG93OiAwIDFyZW0gM3JlbSByZ2JhKDAsIDAsIDAsIDAuMTc1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93LW5vbmUge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi53LTI1IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4udy01MCB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnctNzUge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi53LTEwMCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi53LWF1dG8ge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uaC0yNSB7XG4gIGhlaWdodDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi5oLTUwIHtcbiAgaGVpZ2h0OiA1MCUgIWltcG9ydGFudDtcbn1cblxuLmgtNzUge1xuICBoZWlnaHQ6IDc1JSAhaW1wb3J0YW50O1xufVxuXG4uaC0xMDAge1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLmgtYXV0byB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubXctMTAwIHtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5taC0xMDAge1xuICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5taW4tdnctMTAwIHtcbiAgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xufVxuXG4ubWluLXZoLTEwMCB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG59XG5cbi52dy0xMDAge1xuICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcbn1cblxuLnZoLTEwMCB7XG4gIGhlaWdodDogMTAwdmggIWltcG9ydGFudDtcbn1cblxuLm0tMCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubXQtMCxcbi5teS0wIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ubXItMCxcbi5teC0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0wLFxuLm15LTAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tbC0wLFxuLm14LTAge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ubS0xIHtcbiAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC0xLFxuLm15LTEge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci0xLFxuLm14LTEge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTEsXG4ubXktMSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTEsXG4ubXgtMSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTIge1xuICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtMixcbi5teS0yIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci0yLFxuLm14LTIge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMixcbi5teS0yIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC0yLFxuLm14LTIge1xuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTMge1xuICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTMsXG4ubXktMyB7XG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTMsXG4ubXgtMyB7XG4gIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMyxcbi5teS0zIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWwtMyxcbi5teC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tNCB7XG4gIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC00LFxuLm15LTQge1xuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1yLTQsXG4ubXgtNCB7XG4gIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi00LFxuLm15LTQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1sLTQsXG4ubXgtNCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tNSB7XG4gIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtNSxcbi5teS01IHtcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItNSxcbi5teC01IHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi01LFxuLm15LTUge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC01LFxuLm14LTUge1xuICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucC0wIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ucHQtMCxcbi5weS0wIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLnByLTAsXG4ucHgtMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnBiLTAsXG4ucHktMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0wLFxuLnB4LTAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnAtMSB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTEsXG4ucHktMSB7XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wci0xLFxuLnB4LTEge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0xLFxuLnB5LTEge1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGwtMSxcbi5weC0xIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTIge1xuICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTIsXG4ucHktMiB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTIsXG4ucHgtMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItMixcbi5weS0yIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGwtMixcbi5weC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtMyB7XG4gIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTMsXG4ucHktMyB7XG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wci0zLFxuLnB4LTMge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0zLFxuLnB5LTMge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGwtMyxcbi5weC0zIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTQge1xuICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTQsXG4ucHktNCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnByLTQsXG4ucHgtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItNCxcbi5weS00IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGwtNCxcbi5weC00IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtNSB7XG4gIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTUsXG4ucHktNSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wci01LFxuLnB4LTUge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi01LFxuLnB5LTUge1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucGwtNSxcbi5weC01IHtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW4xIHtcbiAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjEsXG4ubXktbjEge1xuICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjEsXG4ubXgtbjEge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uMSxcbi5teS1uMSB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uMSxcbi5teC1uMSB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1uMiB7XG4gIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjIsXG4ubXktbjIge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uMixcbi5teC1uMiB7XG4gIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItbjIsXG4ubXktbjIge1xuICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uMixcbi5teC1uMiB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW4zIHtcbiAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjMsXG4ubXktbjMge1xuICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjMsXG4ubXgtbjMge1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uMyxcbi5teS1uMyB7XG4gIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uMyxcbi5teC1uMyB7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1uNCB7XG4gIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjQsXG4ubXktbjQge1xuICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tci1uNCxcbi5teC1uNCB7XG4gIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItbjQsXG4ubXktbjQge1xuICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uNCxcbi5teC1uNCB7XG4gIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLW41IHtcbiAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtbjUsXG4ubXktbjUge1xuICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubXItbjUsXG4ubXgtbjUge1xuICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1uNSxcbi5teS1uNSB7XG4gIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tbC1uNSxcbi5teC1uNSB7XG4gIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ubS1hdXRvIHtcbiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1hdXRvLFxuLm15LWF1dG8ge1xuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tci1hdXRvLFxuLm14LWF1dG8ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1iLWF1dG8sXG4ubXktYXV0byB7XG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1sLWF1dG8sXG4ubXgtYXV0byB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubS1zbS0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tMCxcbiAgLm15LXNtLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tMCxcbiAgLm14LXNtLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1zbS0wLFxuICAubXktc20tMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS0wLFxuICAubXgtc20tMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubS1zbS0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tMSxcbiAgLm15LXNtLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tMSxcbiAgLm14LXNtLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1zbS0xLFxuICAubXktc20tMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS0xLFxuICAubXgtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1zbS0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS0yLFxuICAubXktc20tMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLTIsXG4gIC5teC1zbS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1zbS0yLFxuICAubXktc20tMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLTIsXG4gIC5teC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLTMsXG4gIC5teS1zbS0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLTMsXG4gIC5teC1zbS0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tMyxcbiAgLm15LXNtLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tMyxcbiAgLm14LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tNCxcbiAgLm15LXNtLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS00LFxuICAubXgtc20tNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tNCxcbiAgLm15LXNtLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS00LFxuICAubXgtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXNtLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS01LFxuICAubXktc20tNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS01LFxuICAubXgtc20tNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLTUsXG4gIC5teS1zbS01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLTUsXG4gIC5teC1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXNtLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHQtc20tMCxcbiAgLnB5LXNtLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXNtLTAsXG4gIC5weC1zbS0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXNtLTAsXG4gIC5weS1zbS0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1zbS0wLFxuICAucHgtc20tMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtc20tMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1zbS0xLFxuICAucHktc20tMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItc20tMSxcbiAgLnB4LXNtLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItc20tMSxcbiAgLnB5LXNtLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLXNtLTEsXG4gIC5weC1zbS0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1zbS0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtc20tMixcbiAgLnB5LXNtLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItc20tMixcbiAgLnB4LXNtLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1zbS0yLFxuICAucHktc20tMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1zbS0yLFxuICAucHgtc20tMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1zbS0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXNtLTMsXG4gIC5weS1zbS0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1zbS0zLFxuICAucHgtc20tMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1zbS0zLFxuICAucHktc20tMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtc20tMyxcbiAgLnB4LXNtLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXNtLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1zbS00LFxuICAucHktc20tNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1zbS00LFxuICAucHgtc20tNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXNtLTQsXG4gIC5weS1zbS00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLXNtLTQsXG4gIC5weC1zbS00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXNtLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtc20tNSxcbiAgLnB5LXNtLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXNtLTUsXG4gIC5weC1zbS01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXNtLTUsXG4gIC5weS1zbS01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1zbS01LFxuICAucHgtc20tNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tbjEsXG4gIC5teS1zbS1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tbjEsXG4gIC5teC1zbS1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1zbS1uMSxcbiAgLm15LXNtLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS1uMSxcbiAgLm14LXNtLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1zbS1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLW4yLFxuICAubXktc20tbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItc20tbjIsXG4gIC5teC1zbS1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLW4yLFxuICAubXktc20tbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tbjIsXG4gIC5teC1zbS1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1zbS1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS1uMyxcbiAgLm15LXNtLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS1uMyxcbiAgLm14LXNtLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLW4zLFxuICAubXktc20tbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLW4zLFxuICAubXgtc20tbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXNtLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtc20tbjQsXG4gIC5teS1zbS1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS1uNCxcbiAgLm14LXNtLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tbjQsXG4gIC5teS1zbS1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1zbS1uNCxcbiAgLm14LXNtLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXNtLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLW41LFxuICAubXktc20tbjUge1xuICAgIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLW41LFxuICAubXgtc20tbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tbjUsXG4gIC5teS1zbS1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tbjUsXG4gIC5teC1zbS1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLWF1dG8sXG4gIC5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLWF1dG8sXG4gIC5teC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tYXV0byxcbiAgLm15LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tYXV0byxcbiAgLm14LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tLW1kLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC0wLFxuICAubXktbWQtMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC0wLFxuICAubXgtbWQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLTAsXG4gIC5teS1tZC0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLTAsXG4gIC5teC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tLW1kLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC0xLFxuICAubXktbWQtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC0xLFxuICAubXgtbWQtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLTEsXG4gIC5teS1tZC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLTEsXG4gIC5teC1tZC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLW1kLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLTIsXG4gIC5teS1tZC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtMixcbiAgLm14LW1kLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLTIsXG4gIC5teS1tZC0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtMixcbiAgLm14LW1kLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtMyxcbiAgLm15LW1kLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtMyxcbiAgLm14LW1kLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC0zLFxuICAubXktbWQtMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC0zLFxuICAubXgtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC00LFxuICAubXktbWQtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLTQsXG4gIC5teC1tZC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC00LFxuICAubXktbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLTQsXG4gIC5teC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLTUsXG4gIC5teS1tZC01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLTUsXG4gIC5teC1tZC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtNSxcbiAgLm15LW1kLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtNSxcbiAgLm14LW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbWQtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1tZC0wLFxuICAucHktbWQtMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHItbWQtMCxcbiAgLnB4LW1kLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucGItbWQtMCxcbiAgLnB5LW1kLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLW1kLTAsXG4gIC5weC1tZC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucC1tZC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LW1kLTEsXG4gIC5weS1tZC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1tZC0xLFxuICAucHgtbWQtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1tZC0xLFxuICAucHktbWQtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtbWQtMSxcbiAgLnB4LW1kLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLW1kLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1tZC0yLFxuICAucHktbWQtMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1tZC0yLFxuICAucHgtbWQtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLW1kLTIsXG4gIC5weS1tZC0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLW1kLTIsXG4gIC5weC1tZC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wLW1kLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtbWQtMyxcbiAgLnB5LW1kLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLW1kLTMsXG4gIC5weC1tZC0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLW1kLTMsXG4gIC5weS1tZC0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1tZC0zLFxuICAucHgtbWQtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbWQtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LW1kLTQsXG4gIC5weS1tZC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLW1kLTQsXG4gIC5weC1tZC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItbWQtNCxcbiAgLnB5LW1kLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtbWQtNCxcbiAgLnB4LW1kLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbWQtNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1tZC01LFxuICAucHktbWQtNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItbWQtNSxcbiAgLnB4LW1kLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItbWQtNSxcbiAgLnB5LW1kLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLW1kLTUsXG4gIC5weC1tZC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC1uMSxcbiAgLm15LW1kLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC1uMSxcbiAgLm14LW1kLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLW4xLFxuICAubXktbWQtbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLW4xLFxuICAubXgtbWQtbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLW1kLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtbjIsXG4gIC5teS1tZC1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC1uMixcbiAgLm14LW1kLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtbjIsXG4gIC5teS1tZC1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC1uMixcbiAgLm14LW1kLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLW1kLW4zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLW4zLFxuICAubXktbWQtbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLW4zLFxuICAubXgtbWQtbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtbjMsXG4gIC5teS1tZC1uMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtbjMsXG4gIC5teC1tZC1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC1uNCxcbiAgLm15LW1kLW40IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLW40LFxuICAubXgtbWQtbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC1uNCxcbiAgLm15LW1kLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLW40LFxuICAubXgtbWQtbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtbjUsXG4gIC5teS1tZC1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtbjUsXG4gIC5teC1tZC1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC1uNSxcbiAgLm15LW1kLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC1uNSxcbiAgLm14LW1kLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1tZC1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbWQtYXV0byxcbiAgLm15LW1kLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubXItbWQtYXV0byxcbiAgLm14LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1tZC1hdXRvLFxuICAubXktbWQtYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1tZC1hdXRvLFxuICAubXgtbWQtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm0tbGctMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLTAsXG4gIC5teS1sZy0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLTAsXG4gIC5teC1sZy0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctMCxcbiAgLm15LWxnLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctMCxcbiAgLm14LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLTEsXG4gIC5teS1sZy0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLTEsXG4gIC5teC1sZy0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctMSxcbiAgLm15LWxnLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctMSxcbiAgLm14LWxnLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbGctMixcbiAgLm15LWxnLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy0yLFxuICAubXgtbGctMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctMixcbiAgLm15LWxnLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1sZy0yLFxuICAubXgtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy0zLFxuICAubXktbGctMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy0zLFxuICAubXgtbGctMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLTMsXG4gIC5teS1sZy0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLTMsXG4gIC5teC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLTQsXG4gIC5teS1sZy00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctNCxcbiAgLm14LWxnLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLTQsXG4gIC5teS1sZy00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctNCxcbiAgLm14LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1sZy01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbGctNSxcbiAgLm15LWxnLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctNSxcbiAgLm14LWxnLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy01LFxuICAubXktbGctNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1sZy01LFxuICAubXgtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1sZy0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LWxnLTAsXG4gIC5weS1sZy0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1sZy0wLFxuICAucHgtbGctMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1sZy0wLFxuICAucHktbGctMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAucGwtbGctMCxcbiAgLnB4LWxnLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wLWxnLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtbGctMSxcbiAgLnB5LWxnLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLWxnLTEsXG4gIC5weC1sZy0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLWxnLTEsXG4gIC5weS1sZy0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1sZy0xLFxuICAucHgtbGctMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbGctMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LWxnLTIsXG4gIC5weS1sZy0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLWxnLTIsXG4gIC5weC1sZy0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItbGctMixcbiAgLnB5LWxnLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtbGctMixcbiAgLnB4LWxnLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAtbGctMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC1sZy0zLFxuICAucHktbGctMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItbGctMyxcbiAgLnB4LWxnLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGItbGctMyxcbiAgLnB5LWxnLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLWxnLTMsXG4gIC5weC1sZy0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1sZy00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQtbGctNCxcbiAgLnB5LWxnLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHItbGctNCxcbiAgLnB4LWxnLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1sZy00LFxuICAucHktbGctNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1sZy00LFxuICAucHgtbGctNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC1sZy01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LWxnLTUsXG4gIC5weS1sZy01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci1sZy01LFxuICAucHgtbGctNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi1sZy01LFxuICAucHktbGctNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwtbGctNSxcbiAgLnB4LWxnLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLW4xIHtcbiAgICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLW4xLFxuICAubXktbGctbjEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLW4xLFxuICAubXgtbGctbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctbjEsXG4gIC5teS1sZy1uMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctbjEsXG4gIC5teC1sZy1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctbjIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy1uMixcbiAgLm15LWxnLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLW4yLFxuICAubXgtbGctbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy1uMixcbiAgLm15LWxnLW4yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLW4yLFxuICAubXgtbGctbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQtbGctbjMsXG4gIC5teS1sZy1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctbjMsXG4gIC5teC1sZy1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi1sZy1uMyxcbiAgLm15LWxnLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC1sZy1uMyxcbiAgLm14LWxnLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1sZy1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLW40LFxuICAubXktbGctbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXItbGctbjQsXG4gIC5teC1sZy1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLW40LFxuICAubXktbGctbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctbjQsXG4gIC5teC1sZy1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS1sZy1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy1uNSxcbiAgLm15LWxnLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy1uNSxcbiAgLm14LWxnLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLW41LFxuICAubXktbGctbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLW41LFxuICAubXgtbGctbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLWxnLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy1hdXRvLFxuICAubXktbGctYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy1hdXRvLFxuICAubXgtbGctYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLWF1dG8sXG4gIC5teS1sZy1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLWF1dG8sXG4gIC5teC1sZy1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm0teGwtMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLTAsXG4gIC5teS14bC0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLTAsXG4gIC5teC14bC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubWIteGwtMCxcbiAgLm15LXhsLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtMCxcbiAgLm14LXhsLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0teGwtMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLTEsXG4gIC5teS14bC0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLTEsXG4gIC5teC14bC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWIteGwtMSxcbiAgLm15LXhsLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtMSxcbiAgLm14LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0teGwtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtMixcbiAgLm15LXhsLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC0yLFxuICAubXgteGwtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWIteGwtMixcbiAgLm15LXhsLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC0yLFxuICAubXgteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC0zLFxuICAubXkteGwtMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC0zLFxuICAubXgteGwtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLTMsXG4gIC5teS14bC0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLTMsXG4gIC5teC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLTQsXG4gIC5teS14bC00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtNCxcbiAgLm14LXhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLTQsXG4gIC5teS14bC00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtNCxcbiAgLm14LXhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS14bC01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtNSxcbiAgLm15LXhsLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtNSxcbiAgLm14LXhsLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC01LFxuICAubXkteGwtNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC01LFxuICAubXgteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC14bC0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXhsLTAsXG4gIC5weS14bC0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wci14bC0wLFxuICAucHgteGwtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi14bC0wLFxuICAucHkteGwtMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAucGwteGwtMCxcbiAgLnB4LXhsLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXhsLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQteGwtMSxcbiAgLnB5LXhsLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXhsLTEsXG4gIC5weC14bC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXhsLTEsXG4gIC5weS14bC0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC14bC0xLFxuICAucHgteGwtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAteGwtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXhsLTIsXG4gIC5weS14bC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXhsLTIsXG4gIC5weC14bC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGIteGwtMixcbiAgLnB5LXhsLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwteGwtMixcbiAgLnB4LXhsLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnAteGwtMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wdC14bC0zLFxuICAucHkteGwtMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHIteGwtMyxcbiAgLnB4LXhsLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGIteGwtMyxcbiAgLnB5LXhsLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBsLXhsLTMsXG4gIC5weC14bC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC14bC00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHQteGwtNCxcbiAgLnB5LXhsLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucHIteGwtNCxcbiAgLnB4LXhsLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi14bC00LFxuICAucHkteGwtNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC14bC00LFxuICAucHgteGwtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucC14bC01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXhsLTUsXG4gIC5weS14bC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wci14bC01LFxuICAucHgteGwtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi14bC01LFxuICAucHkteGwtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAucGwteGwtNSxcbiAgLnB4LXhsLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLW4xIHtcbiAgICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLW4xLFxuICAubXkteGwtbjEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLW4xLFxuICAubXgteGwtbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWIteGwtbjEsXG4gIC5teS14bC1uMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtbjEsXG4gIC5teC14bC1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0teGwtbjIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC1uMixcbiAgLm15LXhsLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXhsLW4yLFxuICAubXgteGwtbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC1uMixcbiAgLm15LXhsLW4yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLW4yLFxuICAubXgteGwtbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0teGwtbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtbjMsXG4gIC5teS14bC1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtbjMsXG4gIC5teC14bC1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC1uMyxcbiAgLm15LXhsLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC1uMyxcbiAgLm14LXhsLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS14bC1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXhsLW40LFxuICAubXkteGwtbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtbjQsXG4gIC5teC14bC1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLW40LFxuICAubXkteGwtbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubWwteGwtbjQsXG4gIC5teC14bC1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAubS14bC1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC1uNSxcbiAgLm15LXhsLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC1uNSxcbiAgLm14LXhsLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLW41LFxuICAubXkteGwtbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLW41LFxuICAubXgteGwtbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC1hdXRvLFxuICAubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC1hdXRvLFxuICAubXgteGwtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLWF1dG8sXG4gIC5teS14bC1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLWF1dG8sXG4gIC5teC14bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zdHJldGNoZWQtbGluazo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi50ZXh0LW1vbm9zcGFjZSB7XG4gIGZvbnQtZmFtaWx5OiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdyYXAge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbn1cblxuLnRleHQtdHJ1bmNhdGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC50ZXh0LXNtLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAudGV4dC1zbS1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuICAudGV4dC1zbS1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGV4dC1tZC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQtbWQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQtbWQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRleHQtbGctbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LWxnLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LWxnLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGV4dC14bC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQteGwtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQteGwtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuXG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIge1xuICBmb250LXdlaWdodDogbGlnaHRlciAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtd2VpZ2h0LWJvbGRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXIgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdoaXRlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMDA3YmZmICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1wcmltYXJ5OmhvdmVyLCBhLnRleHQtcHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjMDA1NmIzICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1zZWNvbmRhcnk6aG92ZXIsIGEudGV4dC1zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzQ5NGY1NCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICMyOGE3NDUgIWltcG9ydGFudDtcbn1cblxuYS50ZXh0LXN1Y2Nlc3M6aG92ZXIsIGEudGV4dC1zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6ICMxOTY5MmMgIWltcG9ydGFudDtcbn1cblxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAjMTdhMmI4ICFpbXBvcnRhbnQ7XG59XG5cbmEudGV4dC1pbmZvOmhvdmVyLCBhLnRleHQtaW5mbzpmb2N1cyB7XG4gIGNvbG9yOiAjMGY2Njc0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtd2FybmluZzpob3ZlciwgYS50ZXh0LXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogI2JhOGIwMCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFuZ2VyOmhvdmVyLCBhLnRleHQtZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6ICNhNzFkMmEgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbGlnaHQge1xuICBjb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtbGlnaHQ6aG92ZXIsIGEudGV4dC1saWdodDpmb2N1cyB7XG4gIGNvbG9yOiAjY2JkM2RhICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWRhcmsge1xuICBjb2xvcjogIzM0M2E0MCAhaW1wb3J0YW50O1xufVxuXG5hLnRleHQtZGFyazpob3ZlciwgYS50ZXh0LWRhcms6Zm9jdXMge1xuICBjb2xvcjogIzEyMTQxNiAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ib2R5IHtcbiAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ibGFjay01MCB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd2hpdGUtNTAge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWhpZGUge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcmVzZXQge1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBhOm5vdCguYnRuKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgcHJlIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhZGI1YmQ7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuICBAcGFnZSB7XG4gICAgc2l6ZTogYTM7XG4gIH1cbiAgYm9keSB7XG4gICAgbWluLXdpZHRoOiA5OTJweCAhaW1wb3J0YW50O1xuICB9XG4gIC5jb250YWluZXIge1xuICAgIG1pbi13aWR0aDogOTkycHggIWltcG9ydGFudDtcbiAgfVxuICAubmF2YmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5iYWRnZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgfVxuICAudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcbiAgfVxuICAudGFibGUgdGQsXG4gIC50YWJsZSB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICB9XG4gIC50YWJsZS1ib3JkZXJlZCB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRhYmxlLWRhcmsge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG4gIC50YWJsZS1kYXJrIHRoLFxuICAudGFibGUtZGFyayB0ZCxcbiAgLnRhYmxlLWRhcmsgdGhlYWQgdGgsXG4gIC50YWJsZS1kYXJrIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbiAgfVxuICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAuY3NzLm1hcCAqLyIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xuICAvLyBEaXNhYmxlIGF1dG8taGlkaW5nIHNjcm9sbGJhciBpbiBJRSAmIGxlZ2FjeSBFZGdlIHRvIGF2b2lkIG92ZXJsYXAsXG4gIC8vIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGludGVyYWN0IHdpdGggdGhlIGNvbnRlbnRcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkbGFiZWwtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5AaWYgJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucyB7XG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgLyAyKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6ICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgLyAyICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgc3VidHJhY3QoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDQpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgbm8tcmVwZWF0ICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGFkZCgxZW0gKiAuNzUsICgyICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICogLjc1KSArICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0OiAgICAgIDc1dmggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuLy8gTWFyZ2luIGJldHdlZW4gZWxlbWVudHMgaW4gZm9vdGVyLCBtdXN0IGJlIGxvd2VyIHRoYW4gb3IgZXF1YWwgdG8gMiAqICRtb2RhbC1pbm5lci1wYWRkaW5nXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjVMNC4yNSA0bDIuNS0yLjVMNS4yNSAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG4kdXNlci1zZWxlY3RzOiBhbGwsIGF1dG8sIG5vbmUgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIGZvbnQtcmVzaXppbmdcbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuLy8gUmVzaXplIGZvbnQtc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQtc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFZhcmlhYmxlcyBmb3Igc3RvcmluZyBzdGF0aWMgYW5kIGZsdWlkIHJlc2NhbGluZ1xuICAgICRyZnMtc3RhdGljOiBudWxsO1xuICAgICRyZnMtZmx1aWQ6IG51bGw7XG5cbiAgICAvLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udC1zaXplXG4gICAgQGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtIHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmcyAvICRyZnMtcmVtLXZhbHVlfXJlbSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHB4IHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmc31weCN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG4gICAgfVxuXG4gICAgLy8gT25seSBhZGQgbWVkaWEgcXVlcnkgaWYgZm9udC1zaXplIGlzIGJpZ2dlciBhcyB0aGUgbWluaW11bSBmb250LXNpemVcbiAgICAvLyBJZiAkcmZzLWZhY3RvciA9PSAxLCBubyByZXNjYWxpbmcgd2lsbCB0YWtlIHBsYWNlXG4gICAgQGlmICRmcyA+ICRyZnMtYmFzZS1mb250LXNpemUgYW5kICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgICRtaW4td2lkdGg6IG51bGw7XG4gICAgICAkdmFyaWFibGUtdW5pdDogbnVsbDtcblxuICAgICAgLy8gQ2FsY3VsYXRlIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyAoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSkgLyAkcmZzLWZhY3RvcjtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiBnaXZlbiBmb250LXNpemUgYW5kIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1kaWZmOiAkZnMgLSAkZnMtbWluO1xuXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXG4gICAgICAvLyBObyBuZWVkIHRvIGNoZWNrIGlmIHRoZSB1bml0IGlzIHZhbGlkLCBiZWNhdXNlIHdlIGRpZCB0aGF0IGJlZm9yZVxuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7JGZzLW1pbiAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skZnMtbWlufXB4KTtcblxuICAgICAgLy8gSWYgdHdvLWRpbWVuc2lvbmFsLCB1c2Ugc21hbGxlc3Qgb2Ygc2NyZWVuIHdpZHRoIGFuZCBoZWlnaHRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JGZzLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgIC8vIFNldCB0aGUgY2FsY3VsYXRlZCBmb250LXNpemUuXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuICAgIH1cblxuICAgIC8vIFJlbmRlcmluZ1xuICAgIEBpZiAkcmZzLWZsdWlkID09IG51bGwge1xuICAgICAgLy8gT25seSByZW5kZXIgc3RhdGljIGZvbnQtc2l6ZSBpZiBubyBmbHVpZCBmb250LXNpemUgaXMgYXZhaWxhYmxlXG4gICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkbXEtdmFsdWU6IG51bGw7XG5cbiAgICAgIC8vIFJGUyBicmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgIEBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSByZW0ge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50IC8gJHJmcy1yZW0tdmFsdWV9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH07XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnR9cHg7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XG4gICAgICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksXG4gICAgICAgIC8vIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgICAgICYsXG4gICAgICAgIC5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGluIHVzZXMgUkZTIHRvIHJlc2NhbGUgZm9udCBzaXplc1xuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoOTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkKCkge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgLyAyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS9jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJSAvICRjb3VudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgLyAkY291bnQ7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG4vL1xuLy8gUmVxdWlyZXMgdGhlIHVzZSBvZiBxdW90ZXMgYXJvdW5kIGRhdGEgVVJJcy5cblxuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgZm9yIHdvcmthcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZm9ybS1jb250cm9sLWZvY3VzKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMxNTU3XG4gICAgLy8gQWxpZ24gdG9vbHRpcCB0byBmb3JtIGVsZW1lbnRzXG4gICAgLmZvcm0tcm93ID4gLmNvbCA+ICYsXG4gICAgLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0gPiAmIHtcbiAgICAgIGxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRjdXN0b20tc2VsZWN0LWJnIGVzY2FwZS1zdmcoJGljb24pICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemUgbm8tcmVwZWF0O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogaWYoJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucywgcG9pbnRlciwgbnVsbCk7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiBQb3BwZXIgaXMgZW5hYmxlZCwgcmVzZXQgdGhlIGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSwgdHJ1ZSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15LCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBuYXYtZGl2aWRlcigpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gLmZvcm0tY29udHJvbDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmJ0bixcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBjb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xOyAvLyBQdXQgdGhlIGlucHV0IGJlaGluZCB0aGUgbGFiZWwgc28gaXQgZG9lc24ndCBvdmVybGF5IHRleHRcbiAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgaGVpZ2h0OiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiA1MCUgLyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZX0gbm8tcmVwZWF0O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBFZGdlIHNwZWNpZmljXG4gICAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7IC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7ICAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCAvIDI7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6ICRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAvIDI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBBY2NvcmRpb25cbi8vXG5cbi5hY2NvcmRpb24ge1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG5cbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRiYWRnZS10cmFuc2l0aW9uKTtcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1ib3JkZXItbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLnRvYXN0IHtcbiAgLy8gUHJldmVudHMgZnJvbSBzaHJpbmtpbmcgaW4gSUUxMSwgd2hlbiBpbiBhIGZsZXggY29udGFpbmVyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MzQxXG4gIGZsZXgtYmFzaXM6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIG1heC13aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b2FzdC1mb250LXNpemUpO1xuICBjb2xvcjogJHRvYXN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6ICR0b2FzdC1ib3gtc2hhZG93O1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1wYWRkaW5nLXg7XG4gIH1cblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoc3VidHJhY3QoJHRvYXN0LWJvcmRlci1yYWRpdXMsICR0b2FzdC1ib3JkZXItd2lkdGgpKTtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy14OyAvLyBhcHBseSB0byBib3RoIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsXG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46ICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJHBvcG92ZXItYm9yZGVyLXJhZGl1cztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGxlZnQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3Jvdztcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG5cbkBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5zcGlubmVyLWJvcmRlcixcbiAgICAuc3Bpbm5lci1ncm93IHtcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBVc2VkIGluc3RlYWQgb2YgYG92ZXJmbG93LXdyYXBgIGZvciBJRSAmIEVkZ2UgTGVnYWN5XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9tYWluLmNzcy9ibG9iL21hc3Rlci9zcmMvX3ByaW50LmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMTgwODE1MTUwOTM0L2h0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xuICAgIC8vXG5cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMzAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWRhcmsge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCIvKiFcbiAqIERhdGV0aW1lcGlja2VyIGZvciBCb290c3RyYXAgM1xuICogdmVyc2lvbiA6IDQuMTcuNDdcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9Fb25hc2Rhbi9ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXIvXG4gKi9cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAycHggMDtcbiAgcGFkZGluZzogNHB4O1xuICB3aWR0aDogMTllbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51LnRpbWVwaWNrZXItc2JzIHtcbiAgICB3aWR0aDogMzhlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnUudGltZXBpY2tlci1zYnMge1xuICAgIHdpZHRoOiAzOGVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudS50aW1lcGlja2VyLXNicyB7XG4gICAgd2lkdGg6IDM4ZW07XG4gIH1cbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnU6YmVmb3JlLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnUuYm90dG9tOmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA3cHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB0b3A6IC03cHg7XG4gIGxlZnQ6IDdweDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LmRyb3Bkb3duLW1lbnUuYm90dG9tOmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCB3aGl0ZTtcbiAgdG9wOiAtNnB4O1xuICBsZWZ0OiA4cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51LnRvcDpiZWZvcmUge1xuICBib3JkZXItbGVmdDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogN3B4IHNvbGlkICNjY2M7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm90dG9tOiAtN3B4O1xuICBsZWZ0OiA2cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51LnRvcDphZnRlciB7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiA2cHggc29saWQgd2hpdGU7XG4gIGJvdHRvbTogLTZweDtcbiAgbGVmdDogN3B4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQuZHJvcGRvd24tbWVudS5wdWxsLXJpZ2h0OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiA2cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC5kcm9wZG93bi1tZW51LnB1bGwtcmlnaHQ6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogN3B4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmxpc3QtdW5zdHlsZWQge1xuICBtYXJnaW46IDA7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCBhW2RhdGEtYWN0aW9uXSB7XG4gIHBhZGRpbmc6IDZweCAwO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgYVtkYXRhLWFjdGlvbl06YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC50aW1lcGlja2VyLWhvdXIsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAudGltZXBpY2tlci1taW51dGUsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAudGltZXBpY2tlci1zZWNvbmQge1xuICB3aWR0aDogNTRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIG1hcmdpbjogMDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IGJ1dHRvbltkYXRhLWFjdGlvbl0ge1xuICBwYWRkaW5nOiA2cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuYnRuW2RhdGEtYWN0aW9uPVwiaW5jcmVtZW50SG91cnNcIl06OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiSW5jcmVtZW50IEhvdXJzXCI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuYnRuW2RhdGEtYWN0aW9uPVwiaW5jcmVtZW50TWludXRlc1wiXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJJbmNyZW1lbnQgTWludXRlc1wiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmJ0bltkYXRhLWFjdGlvbj1cImRlY3JlbWVudEhvdXJzXCJdOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIkRlY3JlbWVudCBIb3Vyc1wiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmJ0bltkYXRhLWFjdGlvbj1cImRlY3JlbWVudE1pbnV0ZXNcIl06OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiRGVjcmVtZW50IE1pbnV0ZXNcIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5idG5bZGF0YS1hY3Rpb249XCJzaG93SG91cnNcIl06OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiU2hvdyBIb3Vyc1wiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmJ0bltkYXRhLWFjdGlvbj1cInNob3dNaW51dGVzXCJdOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIlNob3cgTWludXRlc1wiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmJ0bltkYXRhLWFjdGlvbj1cInRvZ2dsZVBlcmlvZFwiXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJUb2dnbGUgQU0vUE1cIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5idG5bZGF0YS1hY3Rpb249XCJjbGVhclwiXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJDbGVhciB0aGUgcGlja2VyXCI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuYnRuW2RhdGEtYWN0aW9uPVwidG9kYXlcIl06OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiU2V0IHRoZSBkYXRlIHRvIHRvZGF5XCI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAucGlja2VyLXN3aXRjaCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5waWNrZXItc3dpdGNoOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIlRvZ2dsZSBEYXRlIGFuZCBUaW1lIFNjcmVlbnNcIjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5waWNrZXItc3dpdGNoIHRkIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5waWNrZXItc3dpdGNoIHRkIHNwYW4sXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAucGlja2VyLXN3aXRjaCB0ZCBpIHtcbiAgbGluZS1oZWlnaHQ6IDIuNTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBwYWRkaW5nOiAwLjVlbTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoIHtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aC5waWNrZXItc3dpdGNoIHtcbiAgd2lkdGg6IDE0NXB4O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGguZGlzYWJsZWQsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjZGVlMmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGgucHJldjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJQcmV2aW91cyBNb250aFwiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGgubmV4dDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgY29udGVudDogXCJOZXh0IE1vbnRoXCI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHtcbiAgaGVpZ2h0OiA1NHB4O1xuICBsaW5lLWhlaWdodDogNTRweDtcbiAgd2lkdGg6IDU0cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC5jdyB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAjZGVlMmU2O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuZGF5IHtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC5kYXk6aG92ZXIsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC5ob3VyOmhvdmVyLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQubWludXRlOmhvdmVyLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuc2Vjb25kOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQub2xkLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQubmV3IHtcbiAgY29sb3I6ICNkZWUyZTY7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC50b2RheSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLnRvZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMCAwIDdweCA3cHg7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZWUyZTY7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDRweDtcbiAgcmlnaHQ6IDRweDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLmFjdGl2ZSxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLmFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG4gIGNvbG9yOiAjMDA3YmZmO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLmFjdGl2ZS50b2RheTpiZWZvcmUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuZGlzYWJsZWQsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjZGVlMmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgc3Bhbixcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA1NHB4O1xuICBoZWlnaHQ6IDU0cHg7XG4gIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICBtYXJnaW46IDJweCAxLjVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgc3Bhbjpob3Zlcixcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgc3Bhbi5hY3RpdmUsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBpLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG4gIGNvbG9yOiAjMDA3YmZmO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW4ub2xkLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgaS5vbGQge1xuICBjb2xvcjogI2RlZTJlNjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW4uZGlzYWJsZWQsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBpLmRpc2FibGVkLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgc3Bhbi5kaXNhYmxlZDpob3Zlcixcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIGkuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI2RlZTJlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0LnVzZXR3ZW50eWZvdXIgdGQuaG91ciB7XG4gIGhlaWdodDogMjdweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldC53aWRlciB7XG4gIHdpZHRoOiAyMWVtO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmRhdGVwaWNrZXItZGVjYWRlcyAuZGVjYWRlIHtcbiAgbGluZS1oZWlnaHQ6IDEuOGVtICFpbXBvcnRhbnQ7XG59XG4uaW5wdXQtZ3JvdXAuZGF0ZSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaW5wdXQtZ3JvdXAuZGF0ZSAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG4iLCI6cm9vdCB7XG4gICAgLS12cy1jb2xvcnMtLWxpZ2h0ZXN0OiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xuICAgIC0tdnMtY29sb3JzLS1saWdodDogcmdiYSg2MCwgNjAsIDYwLCAwLjUpO1xuICAgIC0tdnMtY29sb3JzLS1kYXJrOiAjMzMzO1xuICAgIC0tdnMtY29sb3JzLS1kYXJrZXN0OiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgLyogU2VhcmNoIElucHV0ICovXG4gICAgLS12cy1zZWFyY2gtaW5wdXQtY29sb3I6IGluaGVyaXQ7XG4gICAgLS12cy1zZWFyY2gtaW5wdXQtYmc6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiAgICAtLXZzLXNlYXJjaC1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogaW5oZXJpdDtcblxuICAgIC8qIEZvbnQgKi9cbiAgICAtLXZzLWZvbnQtc2l6ZTogMXJlbTtcbiAgICAtLXZzLWxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAvKiBEaXNhYmxlZCBTdGF0ZSAqL1xuICAgIC0tdnMtc3RhdGUtZGlzYWJsZWQtYmc6IHJnYigyNDgsIDI0OCwgMjQ4KTtcbiAgICAtLXZzLXN0YXRlLWRpc2FibGVkLWNvbG9yOiB2YXIoLS12cy1jb2xvcnMtLWxpZ2h0KTtcbiAgICAtLXZzLXN0YXRlLWRpc2FibGVkLWNvbnRyb2xzLWNvbG9yOiB2YXIoLS12cy1jb2xvcnMtLWxpZ2h0KTtcbiAgICAtLXZzLXN0YXRlLWRpc2FibGVkLWN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAvKiBCb3JkZXJzICovXG4gICAgLS12cy1ib3JkZXItY29sb3I6IHZhcigtLXZzLWNvbG9ycy0tbGlnaHRlc3QpO1xuICAgIC0tdnMtYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgLS12cy1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIC0tdnMtYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgLyogQWN0aW9uczogaG91c2UgdGhlIGNvbXBvbmVudCBjb250cm9scyAqL1xuICAgIC0tdnMtYWN0aW9ucy1wYWRkaW5nOiA0cHggNnB4IDAgM3B4O1xuXG4gICAgLyogQ29tcG9uZW50IENvbnRyb2xzOiBDbGVhciwgT3BlbiBJbmRpY2F0b3IgKi9cbiAgICAtLXZzLWNvbnRyb2xzLWNvbG9yOiB2YXIoLS12cy1jb2xvcnMtLWxpZ2h0KTtcbiAgICAtLXZzLWNvbnRyb2xzLXNpemU6IDE7XG4gICAgLS12cy1jb250cm9scy0tZGVzZWxlY3QtdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjtcblxuICAgIC8qIFNlbGVjdGVkICovXG4gICAgLS12cy1zZWxlY3RlZC1iZzogI2YwZjBmMDtcbiAgICAtLXZzLXNlbGVjdGVkLWNvbG9yOiB2YXIoLS12cy1jb2xvcnMtLWRhcmspO1xuICAgIC0tdnMtc2VsZWN0ZWQtYm9yZGVyLWNvbG9yOiB2YXIoLS12cy1ib3JkZXItY29sb3IpO1xuICAgIC0tdnMtc2VsZWN0ZWQtYm9yZGVyLXN0eWxlOiB2YXIoLS12cy1ib3JkZXItc3R5bGUpO1xuICAgIC0tdnMtc2VsZWN0ZWQtYm9yZGVyLXdpZHRoOiB2YXIoLS12cy1ib3JkZXItd2lkdGgpO1xuXG4gICAgLyogRHJvcGRvd24gKi9cbiAgICAtLXZzLWRyb3Bkb3duLWJnOiAjZmZmO1xuICAgIC0tdnMtZHJvcGRvd24tY29sb3I6IGluaGVyaXQ7XG4gICAgLS12cy1kcm9wZG93bi16LWluZGV4OiAxMDAwO1xuICAgIC0tdnMtZHJvcGRvd24tbWluLXdpZHRoOiAxNjBweDtcbiAgICAtLXZzLWRyb3Bkb3duLW1heC1oZWlnaHQ6IDM1MHB4O1xuICAgIC0tdnMtZHJvcGRvd24tYm94LXNoYWRvdzogMHB4IDNweCA2cHggMHB4IHZhcigtLXZzLWNvbG9ycy0tZGFya2VzdCk7XG5cbiAgICAvKiBPcHRpb25zICovXG4gICAgLS12cy1kcm9wZG93bi1vcHRpb24tYmc6ICMwMDA7XG4gICAgLS12cy1kcm9wZG93bi1vcHRpb24tY29sb3I6IHZhcigtLXZzLWRyb3Bkb3duLWNvbG9yKTtcbiAgICAtLXZzLWRyb3Bkb3duLW9wdGlvbi1wYWRkaW5nOiAzcHggMjBweDtcblxuICAgIC8qIEFjdGl2ZSBTdGF0ZSAqL1xuICAgIC0tdnMtZHJvcGRvd24tb3B0aW9uLS1hY3RpdmUtYmc6ICM1ODk3ZmI7XG4gICAgLS12cy1kcm9wZG93bi1vcHRpb24tLWFjdGl2ZS1jb2xvcjogI2ZmZjtcblxuICAgIC8qIERlc2VsZWN0IFN0YXRlICovXG4gICAgLS12cy1kcm9wZG93bi1vcHRpb24tLWRlc2VsZWN0LWJnOiAjZmI1ODU4O1xuICAgIC0tdnMtZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdC1jb2xvcjogI2ZmZjtcblxuICAgIC8qIFRyYW5zaXRpb25zICovXG4gICAgLS12cy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDEsIC0wLjExNSwgMC45NzUsIDAuODU1KTtcbiAgICAtLXZzLXRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xufVxuIiwiLnYtc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLnYtc2VsZWN0LFxuLnYtc2VsZWN0ICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuIiwiOnJvb3Qge1xuICAgIC0tdnMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLCAwLjUsIDAuOCwgMSk7XG4gICAgLS12cy10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbn1cblxuLyogS2V5RnJhbWVzICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgdlNlbGVjdFNwaW5uZXIge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB2U2VsZWN0U3Bpbm5lciB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG4vKiBEcm9wZG93biBEZWZhdWx0IFRyYW5zaXRpb24gKi9cbi52c19fZmFkZS1lbnRlci1hY3RpdmUsXG4udnNfX2ZhZGUtbGVhdmUtYWN0aXZlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXZzLXRyYW5zaXRpb24tZHVyYXRpb24pXG4gICAgICAgIHZhcigtLXZzLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKTtcbn1cbi52c19fZmFkZS1lbnRlcixcbi52c19fZmFkZS1sZWF2ZS10byB7XG4gICAgb3BhY2l0eTogMDtcbn1cbiIsIi8qKiBDb21wb25lbnQgU3RhdGVzICovXG5cbi8qXG4gKiBEaXNhYmxlZFxuICpcbiAqIFdoZW4gdGhlIGNvbXBvbmVudCBpcyBkaXNhYmxlZCwgYWxsIGludGVyYWN0aW9uXG4gKiBzaG91bGQgYmUgcHJldmVudGVkLiBIZXJlIHdlIG1vZGlmeSB0aGUgYmcgY29sb3IsXG4gKiBhbmQgY2hhbmdlIHRoZSBjdXJzb3IgZGlzcGxheWVkIG9uIHRoZSBpbnRlcmFjdGl2ZVxuICogY29tcG9uZW50cy5cbiAqL1xuXG46cm9vdCB7XG4gICAgLS12cy1kaXNhYmxlZC1iZzogdmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtYmcpO1xuICAgIC0tdnMtZGlzYWJsZWQtY29sb3I6IHZhcigtLXZzLXN0YXRlLWRpc2FibGVkLWNvbG9yKTtcbiAgICAtLXZzLWRpc2FibGVkLWN1cnNvcjogdmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtY3Vyc29yKTtcbn1cblxuLnZzLS1kaXNhYmxlZCB7XG4gICAgLnZzX19kcm9wZG93bi10b2dnbGUsXG4gICAgLnZzX19jbGVhcixcbiAgICAudnNfX3NlYXJjaCxcbiAgICAudnNfX3NlbGVjdGVkLFxuICAgIC52c19fb3Blbi1pbmRpY2F0b3Ige1xuICAgICAgICBjdXJzb3I6IHZhcigtLXZzLWRpc2FibGVkLWN1cnNvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXZzLWRpc2FibGVkLWJnKTtcbiAgICB9XG59XG5cbi8qXG4gKiAgUlRMIC0gUmlnaHQgdG8gTGVmdCBTdXBwb3J0XG4gKlxuICogIEJlY2F1c2Ugd2UncmUgdXNpbmcgYSBmbGV4Ym94IGxheW91dCwgdGhlIGBkaXI9XCJydGxcImBcbiAqICBIVE1MIGF0dHJpYnV0ZSBkb2VzIG1vc3Qgb2YgdGhlIHdvcmsgZm9yIHVzIGJ5XG4gKiAgcmVhcnJhbmdpbmcgdGhlIGNoaWxkIGVsZW1lbnRzIHZpc3VhbGx5LlxuICovXG5cbi52LXNlbGVjdFtkaXI9J3J0bCddIHtcbiAgICAudnNfX2FjdGlvbnMge1xuICAgICAgICBwYWRkaW5nOiAwIDNweCAwIDZweDtcbiAgICB9XG5cbiAgICAudnNfX2NsZWFyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC52c19fZGVzZWxlY3Qge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgfVxuXG4gICAgLnZzX19kcm9wZG93bi1tZW51IHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxufVxuIiwiLyoqXG4gICAgRHJvcGRvd24gVG9nZ2xlXG5cbiAgICBUaGUgZHJvcGRvd24gdG9nZ2xlIGlzIHRoZSBwcmltYXJ5IHdyYXBwZXIgb2YgdGhlIGNvbXBvbmVudC4gSXRcbiAgICBoYXMgdHdvIGRpcmVjdCBkZXNjZW5kYW50czogLnZzX19zZWxlY3RlZC1vcHRpb25zLCBhbmQgLnZzX19hY3Rpb25zLlxuXG4gICAgLnZzX19zZWxlY3RlZC1vcHRpb25zIGhvbGRzIHRoZSAudnNfX3NlbGVjdGVkJ3MgYXMgd2VsbCBhcyB0aGVcbiAgICBtYWluIHNlYXJjaCBpbnB1dC5cblxuICAgIC52c19fYWN0aW9ucyBob2xkcyB0aGUgY2xlYXIgYnV0dG9uIGFuZCBkcm9wZG93biB0b2dnbGUuXG4gKi9cblxuLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAwIDAgNHB4IDA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdnMtc2VhcmNoLWlucHV0LWJnKTtcbiAgICBib3JkZXI6IHZhcigtLXZzLWJvcmRlci13aWR0aCkgdmFyKC0tdnMtYm9yZGVyLXN0eWxlKSB2YXIoLS12cy1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXZzLWJvcmRlci1yYWRpdXMpO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi52c19fc2VsZWN0ZWQtb3B0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZzogMCAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udnNfX2FjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS12cy1hY3Rpb25zLXBhZGRpbmcpO1xufVxuXG4vKiBEcm9wZG93biBUb2dnbGUgU3RhdGVzICovXG4udnMtLXNlYXJjaGFibGUgLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGN1cnNvcjogdGV4dDtcbn1cbi52cy0tdW5zZWFyY2hhYmxlIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4iLCIvKiBPcGVuIEluZGljYXRvciAqL1xuXG4vKlxuICBUaGUgb3BlbiBpbmRpY2F0b3IgYXBwZWFycyBhcyBhIGRvd24gZmFjaW5nXG4gIGNhcmV0IG9uIHRoZSByaWdodCBzaWRlIG9mIHRoZSBzZWxlY3QuXG4gKi9cblxuLnZzX19vcGVuLWluZGljYXRvciB7XG4gICAgZmlsbDogdmFyKC0tdnMtY29udHJvbHMtY29sb3IpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tdnMtY29udHJvbHMtc2l6ZSkpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS12cy10cmFuc2l0aW9uLWR1cmF0aW9uKVxuICAgICAgICB2YXIoLS12cy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbik7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXZzLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKTtcbn1cblxuLyogT3BlbiBTdGF0ZSAqL1xuXG4udnMtLW9wZW4gLnZzX19vcGVuLWluZGljYXRvciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSBzY2FsZSh2YXIoLS12cy1jb250cm9scy1zaXplKSk7XG59XG5cbi8qIExvYWRpbmcgU3RhdGUgKi9cblxuLnZzLS1sb2FkaW5nIC52c19fb3Blbi1pbmRpY2F0b3Ige1xuICAgIG9wYWNpdHk6IDA7XG59XG4iLCIvKiBDbGVhciBCdXR0b24gKi9cblxuLnZzX19jbGVhciB7XG4gICAgZmlsbDogdmFyKC0tdnMtY29udHJvbHMtY29sb3IpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbiIsIi8qIERyb3Bkb3duIE1lbnUgKi9cblxuLnZzX19kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvKiBjYWxjIHRvIGVuc3VyZSB0aGUgbGVmdCBhbmQgcmlnaHQgYm9yZGVycyBvZiB0aGUgZHJvcGRvd24gYXBwZWFyIGZsdXNoIHdpdGggdGhlIHRvZ2dsZS4gKi9cbiAgICB0b3A6IGNhbGMoMTAwJSAtIHZhcigtLXZzLWJvcmRlci13aWR0aCkpO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogdmFyKC0tdnMtZHJvcGRvd24tei1pbmRleCk7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLXZzLWRyb3Bkb3duLW1heC1oZWlnaHQpO1xuICAgIG1pbi13aWR0aDogdmFyKC0tdnMtZHJvcGRvd24tbWluLXdpZHRoKTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXZzLWRyb3Bkb3duLWJveC1zaGFkb3cpO1xuICAgIGJvcmRlcjogdmFyKC0tdnMtYm9yZGVyLXdpZHRoKSB2YXIoLS12cy1ib3JkZXItc3R5bGUpIHZhcigtLXZzLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tdnMtYm9yZGVyLXJhZGl1cykgdmFyKC0tdnMtYm9yZGVyLXJhZGl1cyk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXZzLWRyb3Bkb3duLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tdnMtZHJvcGRvd24tY29sb3IpO1xufVxuXG4udnNfX25vLW9wdGlvbnMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8qIExpc3QgSXRlbXMgKi9cbi52c19fZHJvcGRvd24tb3B0aW9uIHtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1NzE0MzsgLyogTm9ybWFsaXplIGxpbmUgaGVpZ2h0ICovXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogdmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLXBhZGRpbmcpO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbG9yOiB2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tY29sb3IpOyAvKiBPdmVycmlkZXMgbW9zdCBDU1MgZnJhbWV3b3JrcyAqL1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udnNfX2Ryb3Bkb3duLW9wdGlvbi0taGlnaGxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tLWFjdGl2ZS1iZyk7XG4gICAgY29sb3I6IHZhcigtLXZzLWRyb3Bkb3duLW9wdGlvbi0tYWN0aXZlLWNvbG9yKTtcbn1cblxuLnZzX19kcm9wZG93bi1vcHRpb24tLWRlc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tLWRlc2VsZWN0LWJnKTtcbiAgICBjb2xvcjogdmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdC1jb2xvcik7XG59XG5cbi52c19fZHJvcGRvd24tb3B0aW9uLS1kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1jb2xvcik7XG4gICAgY3Vyc29yOiB2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1jdXJzb3IpO1xufVxuIiwiLyogU2VsZWN0ZWQgVGFncyAqL1xuLnZzX19zZWxlY3RlZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXZzLXNlbGVjdGVkLWJnKTtcbiAgICBib3JkZXI6IHZhcigtLXZzLXNlbGVjdGVkLWJvcmRlci13aWR0aCkgdmFyKC0tdnMtc2VsZWN0ZWQtYm9yZGVyLXN0eWxlKVxuICAgICAgICB2YXIoLS12cy1zZWxlY3RlZC1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXZzLWJvcmRlci1yYWRpdXMpO1xuICAgIGNvbG9yOiB2YXIoLS12cy1zZWxlY3RlZC1jb2xvcik7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXZzLWxpbmUtaGVpZ2h0KTtcbiAgICBtYXJnaW46IDRweCAycHggMHB4IDJweDtcbiAgICBwYWRkaW5nOiAwIDAuMjVlbTtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4udnNfX2Rlc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgZmlsbDogdmFyKC0tdnMtY29udHJvbHMtY29sb3IpO1xuICAgIHRleHQtc2hhZG93OiB2YXIoLS12cy1jb250cm9scy0tZGVzZWxlY3QtdGV4dC1zaGFkb3cpO1xufVxuXG4vKiBTdGF0ZXMgKi9cblxuLnZzLS1zaW5nbGUge1xuICAgIC52c19fc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgJi52cy0tb3BlbiAudnNfX3NlbGVjdGVkLFxuICAgICYudnMtLWxvYWRpbmcgLnZzX19zZWxlY3RlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3BhY2l0eTogMC40O1xuICAgIH1cbiAgICAmLnZzLS1zZWFyY2hpbmcgLnZzX19zZWxlY3RlZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLyogU2VhcmNoIElucHV0ICovXG5cbi8qKlxuICogU3VwZXIgd2VpcmQgYnVnLi4uIElmIHRoaXMgZGVjbGFyYXRpb24gaXMgZ3JvdXBlZFxuICogYmVsb3csIHRoZSBjYW5jZWwgYnV0dG9uIHdpbGwgc3RpbGwgYXBwZWFyIGluIGNocm9tZS5cbiAqIElmIGl0J3MgdXAgaGVyZSBvbiBpdCdzIG93biwgaXQnbGwgaGlkZSBpdC5cbiAqL1xuLnZzX19zZWFyY2g6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uLFxuLnZzX19zZWFyY2g6Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtYnV0dG9uLFxuLnZzX19zZWFyY2g6Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbixcbi52c19fc2VhcmNoOjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi52c19fc2VhcmNoLFxuLnZzX19zZWFyY2g6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS12cy1zZWFyY2gtaW5wdXQtY29sb3IpO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXZzLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXNpemU6IHZhcigtLXZzLWZvbnQtc2l6ZSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBtYXJnaW46IDRweCAwIDAgMDtcbiAgICBwYWRkaW5nOiAwIDdweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgd2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4udnNfX3NlYXJjaDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiB2YXIoLS12cy1zZWFyY2gtaW5wdXQtcGxhY2Vob2xkZXItY29sb3IpO1xufVxuXG4vKipcbiAgICBTdGF0ZXNcbiAqL1xuXG4vKiBVbnNlYXJjaGFibGUgKi9cbi52cy0tdW5zZWFyY2hhYmxlIHtcbiAgICAudnNfX3NlYXJjaCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICY6bm90KC52cy0tZGlzYWJsZWQpIC52c19fc2VhcmNoIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cblxuLyogU2luZ2xlLCB3aGVuIHNlYXJjaGluZyBidXQgbm90IGxvYWRpbmcgb3Igb3BlbiAqL1xuLnZzLS1zaW5nbGUudnMtLXNlYXJjaGluZzpub3QoLnZzLS1vcGVuKTpub3QoLnZzLS1sb2FkaW5nKSB7XG4gICAgLnZzX19zZWFyY2gge1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgfVxufVxuIiwiLyogTG9hZGluZyBTcGlubmVyICovXG4udnNfX3NwaW5uZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZvbnQtc2l6ZTogNXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXRvcDogMC45ZW0gc29saWQgcmdiYSgxMDAsIDEwMCwgMTAwLCAwLjEpO1xuICAgIGJvcmRlci1yaWdodDogMC45ZW0gc29saWQgcmdiYSgxMDAsIDEwMCwgMTAwLCAwLjEpO1xuICAgIGJvcmRlci1ib3R0b206IDAuOWVtIHNvbGlkIHJnYmEoMTAwLCAxMDAsIDEwMCwgMC4xKTtcbiAgICBib3JkZXItbGVmdDogMC45ZW0gc29saWQgcmdiYSg2MCwgNjAsIDYwLCAwLjQ1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMClcbiAgICAgICAgc2NhbGUodmFyKC0tdnMtY29udHJvbHMtLXNwaW5uZXItc2l6ZSwgdmFyKC0tdnMtY29udHJvbHMtc2l6ZSkpKTtcbiAgICBhbmltYXRpb246IHZTZWxlY3RTcGlubmVyIDEuMXMgaW5maW5pdGUgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcztcbn1cbi52c19fc3Bpbm5lcixcbi52c19fc3Bpbm5lcjphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiA1ZW07XG4gICAgaGVpZ2h0OiA1ZW07XG4gICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS12cy1jb250cm9scy0tc3Bpbm5lci1zaXplLCB2YXIoLS12cy1jb250cm9scy1zaXplKSkpO1xufVxuXG4vKiBMb2FkaW5nIFNwaW5uZXIgU3RhdGVzICovXG4udnMtLWxvYWRpbmcgLnZzX19zcGlubmVyIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuIiwiOnJvb3R7LS12cy1jb2xvcnMtLWxpZ2h0ZXN0OnJnYmEoNjAsNjAsNjAsMC4yNik7LS12cy1jb2xvcnMtLWxpZ2h0OnJnYmEoNjAsNjAsNjAsMC41KTstLXZzLWNvbG9ycy0tZGFyazojMzMzOy0tdnMtY29sb3JzLS1kYXJrZXN0OnJnYmEoMCwwLDAsMC4xNSk7LS12cy1zZWFyY2gtaW5wdXQtY29sb3I6aW5oZXJpdDstLXZzLXNlYXJjaC1pbnB1dC1iZzojZmZmOy0tdnMtc2VhcmNoLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOmluaGVyaXQ7LS12cy1mb250LXNpemU6MXJlbTstLXZzLWxpbmUtaGVpZ2h0OjEuNDstLXZzLXN0YXRlLWRpc2FibGVkLWJnOiNmOGY4Zjg7LS12cy1zdGF0ZS1kaXNhYmxlZC1jb2xvcjp2YXIoLS12cy1jb2xvcnMtLWxpZ2h0KTstLXZzLXN0YXRlLWRpc2FibGVkLWNvbnRyb2xzLWNvbG9yOnZhcigtLXZzLWNvbG9ycy0tbGlnaHQpOy0tdnMtc3RhdGUtZGlzYWJsZWQtY3Vyc29yOm5vdC1hbGxvd2VkOy0tdnMtYm9yZGVyLWNvbG9yOnZhcigtLXZzLWNvbG9ycy0tbGlnaHRlc3QpOy0tdnMtYm9yZGVyLXdpZHRoOjFweDstLXZzLWJvcmRlci1zdHlsZTpzb2xpZDstLXZzLWJvcmRlci1yYWRpdXM6NHB4Oy0tdnMtYWN0aW9ucy1wYWRkaW5nOjRweCA2cHggMCAzcHg7LS12cy1jb250cm9scy1jb2xvcjp2YXIoLS12cy1jb2xvcnMtLWxpZ2h0KTstLXZzLWNvbnRyb2xzLXNpemU6MTstLXZzLWNvbnRyb2xzLS1kZXNlbGVjdC10ZXh0LXNoYWRvdzowIDFweCAwICNmZmY7LS12cy1zZWxlY3RlZC1iZzojZjBmMGYwOy0tdnMtc2VsZWN0ZWQtY29sb3I6dmFyKC0tdnMtY29sb3JzLS1kYXJrKTstLXZzLXNlbGVjdGVkLWJvcmRlci1jb2xvcjp2YXIoLS12cy1ib3JkZXItY29sb3IpOy0tdnMtc2VsZWN0ZWQtYm9yZGVyLXN0eWxlOnZhcigtLXZzLWJvcmRlci1zdHlsZSk7LS12cy1zZWxlY3RlZC1ib3JkZXItd2lkdGg6dmFyKC0tdnMtYm9yZGVyLXdpZHRoKTstLXZzLWRyb3Bkb3duLWJnOiNmZmY7LS12cy1kcm9wZG93bi1jb2xvcjppbmhlcml0Oy0tdnMtZHJvcGRvd24tei1pbmRleDoxMDAwOy0tdnMtZHJvcGRvd24tbWluLXdpZHRoOjE2MHB4Oy0tdnMtZHJvcGRvd24tbWF4LWhlaWdodDozNTBweDstLXZzLWRyb3Bkb3duLWJveC1zaGFkb3c6MHB4IDNweCA2cHggMHB4IHZhcigtLXZzLWNvbG9ycy0tZGFya2VzdCk7LS12cy1kcm9wZG93bi1vcHRpb24tYmc6IzAwMDstLXZzLWRyb3Bkb3duLW9wdGlvbi1jb2xvcjp2YXIoLS12cy1kcm9wZG93bi1jb2xvcik7LS12cy1kcm9wZG93bi1vcHRpb24tcGFkZGluZzozcHggMjBweDstLXZzLWRyb3Bkb3duLW9wdGlvbi0tYWN0aXZlLWJnOiM1ODk3ZmI7LS12cy1kcm9wZG93bi1vcHRpb24tLWFjdGl2ZS1jb2xvcjojZmZmOy0tdnMtZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdC1iZzojZmI1ODU4Oy0tdnMtZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdC1jb2xvcjojZmZmOy0tdnMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDEsLTAuMTE1LDAuOTc1LDAuODU1KTstLXZzLXRyYW5zaXRpb24tZHVyYXRpb246MTUwbXN9LnYtc2VsZWN0e2ZvbnQtZmFtaWx5OmluaGVyaXQ7cG9zaXRpb246cmVsYXRpdmV9LnYtc2VsZWN0LC52LXNlbGVjdCAqe2JveC1zaXppbmc6Ym9yZGVyLWJveH06cm9vdHstLXZzLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigxLDAuNSwwLjgsMSk7LS12cy10cmFuc2l0aW9uLWR1cmF0aW9uOjAuMTVzfUAtd2Via2l0LWtleWZyYW1lcyB2U2VsZWN0U3Bpbm5lcnswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX1Aa2V5ZnJhbWVzIHZTZWxlY3RTcGlubmVyezAle3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9dG97dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fS52c19fZmFkZS1lbnRlci1hY3RpdmUsLnZzX19mYWRlLWxlYXZlLWFjdGl2ZXtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSB2YXIoLS12cy10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS12cy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbil9LnZzX19mYWRlLWVudGVyLC52c19fZmFkZS1sZWF2ZS10b3tvcGFjaXR5OjB9OnJvb3R7LS12cy1kaXNhYmxlZC1iZzp2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1iZyk7LS12cy1kaXNhYmxlZC1jb2xvcjp2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1jb2xvcik7LS12cy1kaXNhYmxlZC1jdXJzb3I6dmFyKC0tdnMtc3RhdGUtZGlzYWJsZWQtY3Vyc29yKX0udnMtLWRpc2FibGVkIC52c19fY2xlYXIsLnZzLS1kaXNhYmxlZCAudnNfX2Ryb3Bkb3duLXRvZ2dsZSwudnMtLWRpc2FibGVkIC52c19fb3Blbi1pbmRpY2F0b3IsLnZzLS1kaXNhYmxlZCAudnNfX3NlYXJjaCwudnMtLWRpc2FibGVkIC52c19fc2VsZWN0ZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS12cy1kaXNhYmxlZC1iZyk7Y3Vyc29yOnZhcigtLXZzLWRpc2FibGVkLWN1cnNvcil9LnYtc2VsZWN0W2Rpcj1ydGxdIC52c19fYWN0aW9uc3twYWRkaW5nOjAgM3B4IDAgNnB4fS52LXNlbGVjdFtkaXI9cnRsXSAudnNfX2NsZWFye21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6MH0udi1zZWxlY3RbZGlyPXJ0bF0gLnZzX19kZXNlbGVjdHttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDoycHh9LnYtc2VsZWN0W2Rpcj1ydGxdIC52c19fZHJvcGRvd24tbWVudXt0ZXh0LWFsaWduOnJpZ2h0fS52c19fZHJvcGRvd24tdG9nZ2xley13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOnZhcigtLXZzLXNlYXJjaC1pbnB1dC1iZyk7Ym9yZGVyOnZhcigtLXZzLWJvcmRlci13aWR0aCkgdmFyKC0tdnMtYm9yZGVyLXN0eWxlKSB2YXIoLS12cy1ib3JkZXItY29sb3IpO2JvcmRlci1yYWRpdXM6dmFyKC0tdnMtYm9yZGVyLXJhZGl1cyk7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAwIDRweDt3aGl0ZS1zcGFjZTpub3JtYWx9LnZzX19zZWxlY3RlZC1vcHRpb25ze2Rpc3BsYXk6ZmxleDtmbGV4LWJhc2lzOjEwMCU7ZmxleC1ncm93OjE7ZmxleC13cmFwOndyYXA7cGFkZGluZzowIDJweDtwb3NpdGlvbjpyZWxhdGl2ZX0udnNfX2FjdGlvbnN7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtwYWRkaW5nOnZhcigtLXZzLWFjdGlvbnMtcGFkZGluZyl9LnZzLS1zZWFyY2hhYmxlIC52c19fZHJvcGRvd24tdG9nZ2xle2N1cnNvcjp0ZXh0fS52cy0tdW5zZWFyY2hhYmxlIC52c19fZHJvcGRvd24tdG9nZ2xle2N1cnNvcjpwb2ludGVyfS52cy0tb3BlbiAudnNfX2Ryb3Bkb3duLXRvZ2dsZXtib3JkZXItYm90dG9tLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS52c19fb3Blbi1pbmRpY2F0b3J7ZmlsbDp2YXIoLS12cy1jb250cm9scy1jb2xvcik7dHJhbnNmb3JtOnNjYWxlKHZhcigtLXZzLWNvbnRyb2xzLXNpemUpKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSB2YXIoLS12cy10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS12cy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbik7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdnMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pfS52cy0tb3BlbiAudnNfX29wZW4taW5kaWNhdG9ye3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKSBzY2FsZSh2YXIoLS12cy1jb250cm9scy1zaXplKSl9LnZzLS1sb2FkaW5nIC52c19fb3Blbi1pbmRpY2F0b3J7b3BhY2l0eTowfS52c19fY2xlYXJ7ZmlsbDp2YXIoLS12cy1jb250cm9scy1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MDtjdXJzb3I6cG9pbnRlcjttYXJnaW4tcmlnaHQ6OHB4O3BhZGRpbmc6MH0udnNfX2Ryb3Bkb3duLW1lbnV7YmFja2dyb3VuZDp2YXIoLS12cy1kcm9wZG93bi1iZyk7Ym9yZGVyOnZhcigtLXZzLWJvcmRlci13aWR0aCkgdmFyKC0tdnMtYm9yZGVyLXN0eWxlKSB2YXIoLS12cy1ib3JkZXItY29sb3IpO2JvcmRlci1yYWRpdXM6MCAwIHZhcigtLXZzLWJvcmRlci1yYWRpdXMpIHZhcigtLXZzLWJvcmRlci1yYWRpdXMpO2JvcmRlci10b3Atc3R5bGU6bm9uZTtib3gtc2hhZG93OnZhcigtLXZzLWRyb3Bkb3duLWJveC1zaGFkb3cpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp2YXIoLS12cy1kcm9wZG93bi1jb2xvcik7ZGlzcGxheTpibG9jaztsZWZ0OjA7bGlzdC1zdHlsZTpub25lO21hcmdpbjowO21heC1oZWlnaHQ6dmFyKC0tdnMtZHJvcGRvd24tbWF4LWhlaWdodCk7bWluLXdpZHRoOnZhcigtLXZzLWRyb3Bkb3duLW1pbi13aWR0aCk7b3ZlcmZsb3cteTphdXRvO3BhZGRpbmc6NXB4IDA7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpsZWZ0O3RvcDpjYWxjKDEwMCUgLSB2YXIoLS12cy1ib3JkZXItd2lkdGgpKTt3aWR0aDoxMDAlO3otaW5kZXg6dmFyKC0tdnMtZHJvcGRvd24tei1pbmRleCl9LnZzX19uby1vcHRpb25ze3RleHQtYWxpZ246Y2VudGVyfS52c19fZHJvcGRvd24tb3B0aW9ue2NsZWFyOmJvdGg7Y29sb3I6dmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLWNvbG9yKTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjEuNDI4NTcxNDM7cGFkZGluZzp2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tcGFkZGluZyk7d2hpdGUtc3BhY2U6bm93cmFwfS52c19fZHJvcGRvd24tb3B0aW9uLS1oaWdobGlnaHR7YmFja2dyb3VuZDp2YXIoLS12cy1kcm9wZG93bi1vcHRpb24tLWFjdGl2ZS1iZyk7Y29sb3I6dmFyKC0tdnMtZHJvcGRvd24tb3B0aW9uLS1hY3RpdmUtY29sb3IpfS52c19fZHJvcGRvd24tb3B0aW9uLS1kZXNlbGVjdHtiYWNrZ3JvdW5kOnZhcigtLXZzLWRyb3Bkb3duLW9wdGlvbi0tZGVzZWxlY3QtYmcpO2NvbG9yOnZhcigtLXZzLWRyb3Bkb3duLW9wdGlvbi0tZGVzZWxlY3QtY29sb3IpfS52c19fZHJvcGRvd24tb3B0aW9uLS1kaXNhYmxlZHtiYWNrZ3JvdW5kOnZhcigtLXZzLXN0YXRlLWRpc2FibGVkLWJnKTtjb2xvcjp2YXIoLS12cy1zdGF0ZS1kaXNhYmxlZC1jb2xvcik7Y3Vyc29yOnZhcigtLXZzLXN0YXRlLWRpc2FibGVkLWN1cnNvcil9LnZzX19zZWxlY3RlZHthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS12cy1zZWxlY3RlZC1iZyk7Ym9yZGVyOnZhcigtLXZzLXNlbGVjdGVkLWJvcmRlci13aWR0aCkgdmFyKC0tdnMtc2VsZWN0ZWQtYm9yZGVyLXN0eWxlKSB2YXIoLS12cy1zZWxlY3RlZC1ib3JkZXItY29sb3IpO2JvcmRlci1yYWRpdXM6dmFyKC0tdnMtYm9yZGVyLXJhZGl1cyk7Y29sb3I6dmFyKC0tdnMtc2VsZWN0ZWQtY29sb3IpO2Rpc3BsYXk6ZmxleDtsaW5lLWhlaWdodDp2YXIoLS12cy1saW5lLWhlaWdodCk7bWFyZ2luOjRweCAycHggMDtwYWRkaW5nOjAgLjI1ZW07ei1pbmRleDowfS52c19fZGVzZWxlY3R7ZmlsbDp2YXIoLS12cy1jb250cm9scy1jb2xvcik7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6bm9uZTtib3JkZXI6MDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O21hcmdpbi1sZWZ0OjRweDtwYWRkaW5nOjA7dGV4dC1zaGFkb3c6dmFyKC0tdnMtY29udHJvbHMtLWRlc2VsZWN0LXRleHQtc2hhZG93KX0udnMtLXNpbmdsZSAudnNfX3NlbGVjdGVke2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS52cy0tc2luZ2xlLnZzLS1sb2FkaW5nIC52c19fc2VsZWN0ZWQsLnZzLS1zaW5nbGUudnMtLW9wZW4gLnZzX19zZWxlY3RlZHtvcGFjaXR5Oi40O3Bvc2l0aW9uOmFic29sdXRlfS52cy0tc2luZ2xlLnZzLS1zZWFyY2hpbmcgLnZzX19zZWxlY3RlZHtkaXNwbGF5Om5vbmV9LnZzX19zZWFyY2g6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b257ZGlzcGxheTpub25lfS52c19fc2VhcmNoOjotbXMtY2xlYXIsLnZzX19zZWFyY2g6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sLnZzX19zZWFyY2g6Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtYnV0dG9uLC52c19fc2VhcmNoOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb257ZGlzcGxheTpub25lfS52c19fc2VhcmNoLC52c19fc2VhcmNoOmZvY3Vzey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItbGVmdDpub25lO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp2YXIoLS12cy1zZWFyY2gtaW5wdXQtY29sb3IpO2ZsZXgtZ3JvdzoxO2ZvbnQtc2l6ZTp2YXIoLS12cy1mb250LXNpemUpO2xpbmUtaGVpZ2h0OnZhcigtLXZzLWxpbmUtaGVpZ2h0KTttYXJnaW46NHB4IDAgMDttYXgtd2lkdGg6MTAwJTtvdXRsaW5lOm5vbmU7cGFkZGluZzowIDdweDt3aWR0aDowO3otaW5kZXg6MX0udnNfX3NlYXJjaDo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjp2YXIoLS12cy1zZWFyY2gtaW5wdXQtcGxhY2Vob2xkZXItY29sb3IpfS52c19fc2VhcmNoOi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjp2YXIoLS12cy1zZWFyY2gtaW5wdXQtcGxhY2Vob2xkZXItY29sb3IpfS52c19fc2VhcmNoOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS12cy1zZWFyY2gtaW5wdXQtcGxhY2Vob2xkZXItY29sb3IpfS52cy0tdW5zZWFyY2hhYmxlIC52c19fc2VhcmNoe29wYWNpdHk6MX0udnMtLXVuc2VhcmNoYWJsZTpub3QoLnZzLS1kaXNhYmxlZCkgLnZzX19zZWFyY2h7Y3Vyc29yOnBvaW50ZXJ9LnZzLS1zaW5nbGUudnMtLXNlYXJjaGluZzpub3QoLnZzLS1vcGVuKTpub3QoLnZzLS1sb2FkaW5nKSAudnNfX3NlYXJjaHtvcGFjaXR5Oi4yfS52c19fc3Bpbm5lcnthbGlnbi1zZWxmOmNlbnRlcjstd2Via2l0LWFuaW1hdGlvbjp2U2VsZWN0U3Bpbm5lciAxLjFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246dlNlbGVjdFNwaW5uZXIgMS4xcyBsaW5lYXIgaW5maW5pdGU7Ym9yZGVyOi45ZW0gc29saWQgaHNsYSgwLDAlLDM5JSwuMSk7Ym9yZGVyLWxlZnQtY29sb3I6cmdiYSg2MCw2MCw2MCwuNDUpO2ZvbnQtc2l6ZTo1cHg7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjt0ZXh0LWluZGVudDotOTk5OWVtO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApIHNjYWxlKHZhcigtLXZzLWNvbnRyb2xzLS1zcGlubmVyLXNpemUsdmFyKC0tdnMtY29udHJvbHMtc2l6ZSkpKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzfS52c19fc3Bpbm5lciwudnNfX3NwaW5uZXI6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCU7aGVpZ2h0OjVlbTt0cmFuc2Zvcm06c2NhbGUodmFyKC0tdnMtY29udHJvbHMtLXNwaW5uZXItc2l6ZSx2YXIoLS12cy1jb250cm9scy1zaXplKSkpO3dpZHRoOjVlbX0udnMtLWxvYWRpbmcgLnZzX19zcGlubmVye29wYWNpdHk6MX1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9dnVlLXNlbGVjdC5jc3MubWFwKi8iLCIvKiFcbiAqIENvcHlyaWdodCAoYykgSEFORFNPTkNPREUgc3AuIHogby4gby5cbiAqIFxuICogSEFORFNPTlRBQkxFIGlzIGEgc29mdHdhcmUgZGlzdHJpYnV0ZWQgYnkgSEFORFNPTkNPREUgc3AuIHogby4gby4sIGEgUG9saXNoIGNvcnBvcmF0aW9uIGJhc2VkIGluXG4gKiBHZHluaWEsIFBvbGFuZCwgYXQgQWxlamEgWnd5Y2llzKhzdHdhIDk2LTk4LCByZWdpc3RlcmVkIGJ5IHRoZSBEaXN0cmljdCBDb3VydCBpbiBHZGFuc2sgdW5kZXIgbnVtYmVyXG4gKiA1Mzg2NTEsIEVVIHRheCBJRCBudW1iZXI6IFBMNTg2MjI5NDAwMiwgc2hhcmUgY2FwaXRhbDogUExOIDYyLDgwMC4wMC5cbiAqIFxuICogVGhpcyBzb2Z0d2FyZSBpcyBwcm90ZWN0ZWQgYnkgYXBwbGljYWJsZSBjb3B5cmlnaHQgbGF3cywgaW5jbHVkaW5nIGludGVybmF0aW9uYWwgdHJlYXRpZXMsIGFuZCBkdWFsLVxuICogbGljZW5zZWQg4oCTIGRlcGVuZGluZyBvbiB3aGV0aGVyIHlvdXIgdXNlIGZvciBjb21tZXJjaWFsIHB1cnBvc2VzLCBtZWFuaW5nIGludGVuZGVkIGZvciBvclxuICogcmVzdWx0aW5nIGluIGNvbW1lcmNpYWwgYWR2YW50YWdlIG9yIG1vbmV0YXJ5IGNvbXBlbnNhdGlvbiwgb3Igbm90LlxuICogXG4gKiBJZiB5b3VyIHVzZSBpcyBzdHJpY3RseSBwZXJzb25hbCBvciBzb2xlbHkgZm9yIGV2YWx1YXRpb24gcHVycG9zZXMsIG1lYW5pbmcgZm9yIHRoZSBwdXJwb3NlcyBvZiB0ZXN0aW5nXG4gKiB0aGUgc3VpdGFiaWxpdHksIHBlcmZvcm1hbmNlLCBhbmQgdXNlZnVsbmVzcyBvZiB0aGlzIHNvZnR3YXJlIG91dHNpZGUgdGhlIHByb2R1Y3Rpb24gZW52aXJvbm1lbnQsXG4gKiB5b3UgYWdyZWUgdG8gYmUgYm91bmQgYnkgdGhlIHRlcm1zIGluY2x1ZGVkIGluIHRoZSBcImhhbmRzb250YWJsZS1ub24tY29tbWVyY2lhbC1saWNlbnNlLnBkZlwiIGZpbGUuXG4gKiBcbiAqIFlvdXIgdXNlIG9mIHRoaXMgc29mdHdhcmUgZm9yIGNvbW1lcmNpYWwgcHVycG9zZXMgaXMgc3ViamVjdCB0byB0aGUgdGVybXMgaW5jbHVkZWQgaW4gYW4gYXBwbGljYWJsZVxuICogbGljZW5zZSBhZ3JlZW1lbnQuXG4gKiBcbiAqIEluIGFueSBjYXNlLCB5b3UgbXVzdCBub3QgbWFrZSBhbnkgc3VjaCB1c2Ugb2YgdGhpcyBzb2Z0d2FyZSBhcyB0byBkZXZlbG9wIHNvZnR3YXJlIHdoaWNoIG1heSBiZVxuICogY29uc2lkZXJlZCBjb21wZXRpdGl2ZSB3aXRoIHRoaXMgc29mdHdhcmUuXG4gKiBcbiAqIFVOTEVTUyBFWFBSRVNTTFkgQUdSRUVEIE9USEVSV0lTRSwgSEFORFNPTkNPREUgUFJPVklERVMgVEhJUyBTT0ZUV0FSRSBPTiBBTiBcIkFTIElTXCJcbiAqIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgQU5EIElOIE5PIEVWRU5UIEFORCBVTkRFUiBOT1xuICogTEVHQUwgVEhFT1JZLCBTSEFMTCBIQU5EU09OQ09ERSBCRSBMSUFCTEUgVE8gWU9VIEZPUiBEQU1BR0VTLCBJTkNMVURJTkcgQU5ZIERJUkVDVCxcbiAqIElORElSRUNULCBTUEVDSUFMLCBJTkNJREVOVEFMLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT0YgQU5ZIENIQVJBQ1RFUiBBUklTSU5HIEZST01cbiAqIFVTRSBPUiBJTkFCSUxJVFkgVE8gVVNFIFRISVMgU09GVFdBUkUuXG4gKiBcbiAqIFZlcnNpb246IDEyLjMuMFxuICogUmVsZWFzZSBkYXRlOiAxNC8xMi8yMDIyIChidWlsdCBhdCAxNC8xMi8yMDIyIDEyOjI2OjQ2KVxuICovXG4vKipcbiAqIEZpeCBmb3IgYm9vdHN0cmFwIHN0eWxlc1xuICovXG4uaGFuZHNvbnRhYmxlIC50YWJsZSB0aCwgLmhhbmRzb250YWJsZSAudGFibGUgdGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmhhbmRzb250YWJsZSB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG5cbi5oYW5kc29udGFibGUgLnRhYmxlIGNhcHRpb24gKyB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCxcbi5oYW5kc29udGFibGUgLnRhYmxlIGNhcHRpb24gKyB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0ZCxcbi5oYW5kc29udGFibGUgLnRhYmxlIGNvbGdyb3VwICsgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSBjb2xncm91cCArIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRkLFxuLmhhbmRzb250YWJsZSAudGFibGUgdGhlYWQ6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGgsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSB0aGVhZDpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQ0NDQ0NDO1xufVxuXG4vKiB0YWJsZS1ib3JkZXJlZCAqL1xuLmhhbmRzb250YWJsZSAudGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG59XG5cbi5oYW5kc29udGFibGUgLnRhYmxlLWJvcmRlcmVkIHRoLFxuLmhhbmRzb250YWJsZSAudGFibGUtYm9yZGVyZWQgdGQge1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLmhhbmRzb250YWJsZSAudGFibGUtYm9yZGVyZWQgdGg6Zmlyc3QtY2hpbGQsXG4uaGFuZHNvbnRhYmxlIC50YWJsZS1ib3JkZXJlZCB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0NDQ0NDQztcbn1cblxuLmhhbmRzb250YWJsZSAudGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbi5oYW5kc29udGFibGUgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLFxuLmhhbmRzb250YWJsZSAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGgsXG4uaGFuZHNvbnRhYmxlIC50YWJsZSA+IHRoZWFkID4gdHIgPiB0ZCxcbi5oYW5kc29udGFibGUgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jb2wtbGctMS5oYW5kc29udGFibGUsIC5jb2wtbGctMTAuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTExLmhhbmRzb250YWJsZSwgLmNvbC1sZy0xMi5oYW5kc29udGFibGUsXG4uY29sLWxnLTIuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTMuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTQuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTUuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTYuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTcuaGFuZHNvbnRhYmxlLCAuY29sLWxnLTguaGFuZHNvbnRhYmxlLCAuY29sLWxnLTkuaGFuZHNvbnRhYmxlLFxuLmNvbC1tZC0xLmhhbmRzb250YWJsZSwgLmNvbC1tZC0xMC5oYW5kc29udGFibGUsIC5jb2wtbWQtMTEuaGFuZHNvbnRhYmxlLCAuY29sLW1kLTEyLmhhbmRzb250YWJsZSxcbi5jb2wtbWQtMi5oYW5kc29udGFibGUsIC5jb2wtbWQtMy5oYW5kc29udGFibGUsIC5jb2wtbWQtNC5oYW5kc29udGFibGUsIC5jb2wtbWQtNS5oYW5kc29udGFibGUsIC5jb2wtbWQtNi5oYW5kc29udGFibGUsIC5jb2wtbWQtNy5oYW5kc29udGFibGUsIC5jb2wtbWQtOC5oYW5kc29udGFibGUsIC5jb2wtbWQtOS5oYW5kc29udGFibGUgLmNvbC1zbS0xLmhhbmRzb250YWJsZSxcbi5jb2wtc20tMTAuaGFuZHNvbnRhYmxlLCAuY29sLXNtLTExLmhhbmRzb250YWJsZSwgLmNvbC1zbS0xMi5oYW5kc29udGFibGUsXG4uY29sLXNtLTIuaGFuZHNvbnRhYmxlLCAuY29sLXNtLTMuaGFuZHNvbnRhYmxlLCAuY29sLXNtLTQuaGFuZHNvbnRhYmxlLCAuY29sLXNtLTUuaGFuZHNvbnRhYmxlLCAuY29sLXNtLTYuaGFuZHNvbnRhYmxlLCAuY29sLXNtLTcuaGFuZHNvbnRhYmxlLCAuY29sLXNtLTguaGFuZHNvbnRhYmxlLCAuY29sLXNtLTkuaGFuZHNvbnRhYmxlIC5jb2wteHMtMS5oYW5kc29udGFibGUsXG4uY29sLXhzLTEwLmhhbmRzb250YWJsZSwgLmNvbC14cy0xMS5oYW5kc29udGFibGUsIC5jb2wteHMtMTIuaGFuZHNvbnRhYmxlLFxuLmNvbC14cy0yLmhhbmRzb250YWJsZSwgLmNvbC14cy0zLmhhbmRzb250YWJsZSwgLmNvbC14cy00LmhhbmRzb250YWJsZSwgLmNvbC14cy01LmhhbmRzb250YWJsZSwgLmNvbC14cy02LmhhbmRzb250YWJsZSwgLmNvbC14cy03LmhhbmRzb250YWJsZSwgLmNvbC14cy04LmhhbmRzb250YWJsZSwgLmNvbC14cy05LmhhbmRzb250YWJsZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmhhbmRzb250YWJsZSAudGFibGUtc3RyaXBlZCA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuLmhhbmRzb250YWJsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbmRzb250YWJsZSAuaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgLnJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIC53dEhpZGVyIHtcbiAgd2lkdGg6IDA7XG59XG5cbi5oYW5kc29udGFibGUgLnd0U3ByZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qbXVzdCBiZSAwLCBvdGhlcndpc2UgYmxhbmsgc3BhY2UgYXBwZWFycyBpbiBzY3JvbGwgZGVtbyBhZnRlciBzY3JvbGxpbmcgbWF4IHRvIHRoZSByaWdodCAqL1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRhYmxlLFxuLmhhbmRzb250YWJsZSB0Ym9keSxcbi5oYW5kc29udGFibGUgdGhlYWQsXG4uaGFuZHNvbnRhYmxlIHRkLFxuLmhhbmRzb250YWJsZSB0aCxcbi5oYW5kc29udGFibGUgaW5wdXQsXG4uaGFuZHNvbnRhYmxlIHRleHRhcmVhLFxuLmhhbmRzb250YWJsZSBkaXYge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLmhhbmRzb250YWJsZSBpbnB1dCxcbi5oYW5kc29udGFibGUgdGV4dGFyZWEge1xuICBtaW4taGVpZ2h0OiBpbml0aWFsO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRhYmxlLmh0Q29yZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIC8qIGl0IG11c3QgYmUgc2VwYXJhdGUsIG90aGVyd2lzZSB0aGVyZSBhcmUgb2Zmc2V0IG1pc2NhbGN1bGF0aW9ucyBpbiBXZWJLaXQ6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMjY1NTk4Ny9ib3JkZXItY29sbGFwc2UtZGlmZmVyZW5jZXMtaW4tZmYtYW5kLXdlYmtpdCAqL1xuICAvKiB0aGlzIGFjdHVhbGx5IG9ubHkgY2hhbmdlcyBhcHBlYXJhbmNlIG9mIHVzZXIgc2VsZWN0aW9uIC0gZG9lcyBub3QgbWFrZSB0ZXh0IHVuc2VsZWN0YWJsZSAqL1xuICAvKiAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1vLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgLy8gbm8gYnJvd3NlciBzdXBwb3J0cyB1bnByZWZpeGVkIHZlcnNpb25cbiAgKi9cbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMDtcbiAgb3V0bGluZS13aWR0aDogMDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICAvKiByZXNldCBib290c3RyYXAgdGFibGUgc3R5bGUuIGZvciBtb3JlIGluZm8gc2VlOiBodHRwczovL2dpdGh1Yi5jb20vaGFuZHNvbnRhYmxlL2hhbmRzb250YWJsZS9pc3N1ZXMvMjI0ICovXG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWF4LWhlaWdodDogbm9uZTtcbn1cblxuLmhhbmRzb250YWJsZSBjb2wge1xuICB3aWR0aDogNTBweDtcbn1cblxuLmhhbmRzb250YWJsZSBjb2wucm93SGVhZGVyIHtcbiAgd2lkdGg6IDUwcHg7XG59XG5cbi5oYW5kc29udGFibGUgdGgsXG4uaGFuZHNvbnRhYmxlIHRkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICBoZWlnaHQ6IDIycHg7XG4gIGVtcHR5LWNlbGxzOiBzaG93O1xuICBsaW5lLWhlaWdodDogMjFweDtcbiAgcGFkZGluZzogMCA0cHggMCA0cHg7XG4gIC8qIHRvcCwgYm90dG9tIHBhZGRpbmcgZGlmZmVyZW50IHRoYW4gMCBpcyBoYW5kbGVkIHBvb3JseSBieSBGRiB3aXRoIEhUTUw1IGRvY3R5cGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3V0bGluZS13aWR0aDogMDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoLCBbZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRkIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2M7XG59XG5cbi5oYW5kc29udGFibGUgdGg6bGFzdC1jaGlsZCB7XG4gIC8qRm91bmRhdGlvbiBmcmFtZXdvcmsgZml4Ki9cbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoOmxhc3QtY2hpbGQge1xuICAvKkZvdW5kYXRpb24gZnJhbWV3b3JrIGZpeCovXG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoOmZpcnN0LWNoaWxkLFxuLmhhbmRzb250YWJsZSB0aDpudGgtY2hpbGQoMiksXG4uaGFuZHNvbnRhYmxlIHRkOmZpcnN0LW9mLXR5cGUge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2M7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgdGg6Zmlyc3QtY2hpbGQsIFtkaXI9cnRsXS5oYW5kc29udGFibGUgdGg6bnRoLWNoaWxkKDIpLCBbZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRkOmZpcnN0LW9mLXR5cGUge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4vKiBJdCByZW1vdmVzIGRvdWJsZSByaWdodCBib3JkZXIgZnJvbSBmaXJzdCBjb2x1bW4gaGVhZGVyIHdoZW4gcm93IGhlYWRlcnMgYXJlIGRpc2FibGVkICovXG4uaGFuZHNvbnRhYmxlIC5odF9jbG9uZV90b3AgdGg6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0X2Nsb25lX3RvcCB0aDpudGgtY2hpbGQoMikge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYztcbn1cblxuLmhhbmRzb250YWJsZS5odFJvd0hlYWRlcnMgdGhlYWQgdHIgdGg6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlLmh0Um93SGVhZGVycyB0aGVhZCB0ciB0aDpudGgtY2hpbGQoMikge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRyOmZpcnN0LWNoaWxkIHRoLFxuLmhhbmRzb250YWJsZSB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uaHRfbWFzdGVyOm5vdCguaW5uZXJCb3JkZXJJbmxpbmVTdGFydCk6bm90KC5lbXB0eUNvbHVtbnMpIH4gLmhhbmRzb250YWJsZSB0Ym9keSB0ciB0aCxcbi5odF9tYXN0ZXI6bm90KC5pbm5lckJvcmRlcklubGluZVN0YXJ0KTpub3QoLmVtcHR5Q29sdW1ucykgfiAuaGFuZHNvbnRhYmxlOm5vdCguaHRfY2xvbmVfdG9wKSB0aGVhZCB0ciB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG5bZGlyPXJ0bF0uaHRfbWFzdGVyOm5vdCguaW5uZXJCb3JkZXJJbmxpbmVTdGFydCk6bm90KC5lbXB0eUNvbHVtbnMpIH4gLmhhbmRzb250YWJsZSB0Ym9keSB0ciB0aCwgW2Rpcj1ydGxdLmh0X21hc3Rlcjpub3QoLmlubmVyQm9yZGVySW5saW5lU3RhcnQpOm5vdCguZW1wdHlDb2x1bW5zKSB+IC5oYW5kc29udGFibGU6bm90KC5odF9jbG9uZV90b3ApIHRoZWFkIHRyIHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XG59XG5cbi8qXG5pbm5lckJvcmRlclRvcCAtIFByb3BlcnR5IGNvbnRyb2xsZWQgYnkgdG9wIG92ZXJsYXlcbmlubmVyQm9yZGVyQm90dG9tIC0gUHJvcGVydHkgY29udHJvbGxlZCBieSBib3R0b20gb3ZlcmxheVxuICovXG4uaHRfbWFzdGVyOm5vdCguaW5uZXJCb3JkZXJUb3ApOm5vdCguaW5uZXJCb3JkZXJCb3R0b20pIHRoZWFkIHRyOmxhc3QtY2hpbGQgdGgsXG4uaHRfbWFzdGVyOm5vdCguaW5uZXJCb3JkZXJUb3ApOm5vdCguaW5uZXJCb3JkZXJCb3R0b20pIH4gLmhhbmRzb250YWJsZSB0aGVhZCB0cjpsYXN0LWNoaWxkIHRoLFxuLmh0X21hc3Rlcjpub3QoLmlubmVyQm9yZGVyVG9wKTpub3QoLmlubmVyQm9yZGVyQm90dG9tKSB0aGVhZCB0ci5sYXN0Q2hpbGQgdGgsXG4uaHRfbWFzdGVyOm5vdCguaW5uZXJCb3JkZXJUb3ApOm5vdCguaW5uZXJCb3JkZXJCb3R0b20pIH4gLmhhbmRzb250YWJsZSB0aGVhZCB0ci5sYXN0Q2hpbGQgdGgge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgY29sb3I6ICMyMjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmhhbmRzb250YWJsZSB0aGVhZCB0aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5oYW5kc29udGFibGUgdGguYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbn1cblxuLmhhbmRzb250YWJsZSB0aGVhZCB0aCAucmVsYXRpdmUge1xuICBwYWRkaW5nOiAycHggNHB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuXG4vKiBTZWxlY3Rpb24gKi9cbi5oYW5kc29udGFibGUgLnd0Qm9yZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IDA7XG59XG5cbi5oYW5kc29udGFibGUgLnd0Qm9yZGVyLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogQSBsYXllciBvcmRlciBvZiB0aGUgc2VsZWN0aW9uIHR5cGVzICovXG4uaGFuZHNvbnRhYmxlIC53dEJvcmRlci5jdXJyZW50IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5oYW5kc29udGFibGUgLnd0Qm9yZGVyLmFyZWEge1xuICB6LWluZGV4OiA4O1xufVxuXG4uaGFuZHNvbnRhYmxlIC53dEJvcmRlci5maWxsIHtcbiAgei1pbmRleDogNjtcbn1cblxuLyogZmlsbCBoYW5kbGUgKi9cbi5oYW5kc29udGFibGUgLnd0Qm9yZGVyLmNvcm5lciB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgY3Vyc29yOiBjcm9zc2hhaXI7XG59XG5cbi5odF9jbG9uZV9tYXN0ZXIge1xuICB6LWluZGV4OiAxMDA7XG59XG5cbi5odF9jbG9uZV9pbmxpbmVfc3RhcnQge1xuICB6LWluZGV4OiAxMjA7XG59XG5cbi5odF9jbG9uZV9ib3R0b20ge1xuICB6LWluZGV4OiAxMzA7XG59XG5cbi5odF9jbG9uZV9ib3R0b21faW5saW5lX3N0YXJ0X2Nvcm5lciB7XG4gIHotaW5kZXg6IDE1MDtcbn1cblxuLmh0X2Nsb25lX3RvcCB7XG4gIHotaW5kZXg6IDE2MDtcbn1cblxuLmh0X2Nsb25lX3RvcF9pbmxpbmVfc3RhcnRfY29ybmVyIHtcbiAgei1pbmRleDogMTgwO1xufVxuXG4uaGFuZHNvbnRhYmxlIGNvbC5oaWRkZW4ge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRyLmhpZGRlbixcbi5oYW5kc29udGFibGUgdHIuaGlkZGVuIHRkLFxuLmhhbmRzb250YWJsZSB0ci5oaWRkZW4gdGgge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaHRfbWFzdGVyLFxuLmh0X2Nsb25lX2lubGluZV9zdGFydCxcbi5odF9jbG9uZV90b3AsXG4uaHRfY2xvbmVfYm90dG9tIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmh0X21hc3RlciAud3RIb2xkZXIge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLmhhbmRzb250YWJsZSAuaHRfbWFzdGVyIHRoZWFkLFxuLmhhbmRzb250YWJsZSAuaHRfbWFzdGVyIHRyIHRoLFxuLmhhbmRzb250YWJsZSAuaHRfY2xvbmVfaW5saW5lX3N0YXJ0IHRoZWFkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uaHRfY2xvbmVfdG9wIC53dEhvbGRlcixcbi5odF9jbG9uZV9pbmxpbmVfc3RhcnQgLnd0SG9sZGVyLFxuLmh0X2Nsb25lX2JvdHRvbSAud3RIb2xkZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuLmhhbmRzb250YWJsZSB7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMzNzM3Mzc7XG59XG5cbi5oYW5kc29udGFibGUgYSB7XG4gIGNvbG9yOiAjMTA0YWNjO1xufVxuXG4uaGFuZHNvbnRhYmxlLmh0QXV0b1NpemUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGxlZnQ6IC05OTAwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5MDAwcHg7XG59XG5cbi5oYW5kc29udGFibGUgdGQuaHRJbnZhbGlkIHtcbiAgLypnaXZlcyBwcmlvcml0eSBvdmVyIHRkLmFyZWEgc2VsZWN0aW9uIGJhY2tncm91bmQqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY0YzQyICFpbXBvcnRhbnQ7XG59XG5cbi5oYW5kc29udGFibGUgdGQuaHROb1dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4jaG90LWRpc3BsYXktbGljZW5zZS1pbmZvIHtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMzczNzM3O1xuICBwYWRkaW5nOiA1cHggMCAzcHggMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuI2hvdC1kaXNwbGF5LWxpY2Vuc2UtaW5mbyBhIHtcbiAgY29sb3I6ICMxMDRhY2M7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLyogcGx1Z2lucyAqL1xuLyogcm93ICsgY29sdW1uIHJlc2l6ZXIqL1xuLmhhbmRzb250YWJsZSAubWFudWFsQ29sdW1uUmVzaXplciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBjdXJzb3I6IGNvbC1yZXNpemU7XG4gIHotaW5kZXg6IDIxMDtcbiAgd2lkdGg6IDVweDtcbiAgaGVpZ2h0OiAyNXB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5tYW51YWxSb3dSZXNpemVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBjdXJzb3I6IHJvdy1yZXNpemU7XG4gIHotaW5kZXg6IDIxMDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5tYW51YWxDb2x1bW5SZXNpemVyOmhvdmVyLFxuLmhhbmRzb250YWJsZSAubWFudWFsQ29sdW1uUmVzaXplci5hY3RpdmUsXG4uaGFuZHNvbnRhYmxlIC5tYW51YWxSb3dSZXNpemVyOmhvdmVyLFxuLmhhbmRzb250YWJsZSAubWFudWFsUm93UmVzaXplci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzRhOWRiO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5tYW51YWxDb2x1bW5SZXNpemVyR3VpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiB1bnNldDtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzRhOWRiO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICM3Nzc7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5tYW51YWxDb2x1bW5SZXNpemVyR3VpZGUge1xuICBsZWZ0OiB1bnNldDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBkYXNoZWQgIzc3NztcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5tYW51YWxSb3dSZXNpemVyR3VpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0YTlkYjtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICM3Nzc7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLmhhbmRzb250YWJsZSAubWFudWFsQ29sdW1uUmVzaXplckd1aWRlLmFjdGl2ZSxcbi5oYW5kc29udGFibGUgLm1hbnVhbFJvd1Jlc2l6ZXJHdWlkZS5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMjA5O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5jb2x1bW5Tb3J0aW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5jb2x1bW5Tb3J0aW5nLnNvcnRBY3Rpb246aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufSAvKiBBcnJvdyBwb3NpdGlvbiAqL1xuLmhhbmRzb250YWJsZSBzcGFuLmNvbEhlYWRlci5jb2x1bW5Tb3J0aW5nOjpiZWZvcmUge1xuICAvKiBDZW50ZXJpbmcgc3RhcnQgKi9cbiAgdG9wOiA1MCU7XG4gIC8qIE9uZSBleHRyYSBwaXhlbCBmb3IgcHVycG9zZSBvZiBwcm9wZXIgcG9zaXRpb25pbmcgb2Ygc29ydGluZyBhcnJvdywgd2hlbiBgZm9udC1zaXplYCBzZXQgdG8gZGVmYXVsdCAqL1xuICBtYXJnaW4tdG9wOiAtNnB4O1xuICAvKiBDZW50ZXJpbmcgZW5kICovXG4gIC8qIEZvciBwdXJwb3NlIG9mIGNvbnRpbnVvdXMgbW91c2Ugb3ZlciBleHBlcmllbmNlLCB3aGVuIG1vdmluZyBiZXR3ZWVuIHRoZSBgc3BhbmAgYW5kIHRoZSBgOjpiZWZvcmVgIGVsZW1lbnRzICovXG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtOXB4O1xuICBsZWZ0OiB1bnNldDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxMHB4O1xuICB3aWR0aDogNXB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teDogcmlnaHQ7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZzo6YmVmb3JlIHtcbiAgLyogQ2VudGVyaW5nIGVuZCAqL1xuICAvKiBGb3IgcHVycG9zZSBvZiBjb250aW51b3VzIG1vdXNlIG92ZXIgZXhwZXJpZW5jZSwgd2hlbiBtb3ZpbmcgYmV0d2VlbiB0aGUgYHNwYW5gIGFuZCB0aGUgYDo6YmVmb3JlYCBlbGVtZW50cyAqL1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGVmdDogLTlweDtcbiAgcmlnaHQ6IHVuc2V0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGxlZnQ7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5hc2NlbmRpbmc6OmJlZm9yZSB7XG4gIC8qIGFycm93IHVwOyAyMCB4IDQwIHB4LCBzY2FsZWQgdG8gNSB4IDEwIHB4OyBiYXNlNjQgc2l6ZTogMC4za0IgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFvQ0FNQUFBREo3eXJwQUFBQUtsQk1WRVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtFODZJQUFBQURYUlNUbE1BQkJFbVJHcHJsSlc3MmU3N3RUa1RLd0FBQUZOSlJFRlVlQUh0emprU2dDQVVCTkhQZ3NveTk3K3VsR1hScUpFNUwreGt4b1l0MlVkc0xiNWJxRklOeithTHV1TG41ckl1MlJrTzNmWnBXRU5pbU5naXc2aUJZUlRQTUxKakdGeFFaMWh4eGIveEJJMXFDOGszOUNkS0FBQUFBRWxGVGtTdVFtQ0NcIik7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5kZXNjZW5kaW5nOjpiZWZvcmUge1xuICAvKiBhcnJvdyBkb3duOyAyMCB4IDQwIHB4LCBzY2FsZWQgdG8gNSB4IDEwIHB4OyBiYXNlNjQgc2l6ZTogMC4za0IgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFvQ0FNQUFBREo3eXJwQUFBQUtsQk1WRVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtFODZJQUFBQURYUlNUbE1BQkJFbVJHcHJsSlc3MmU3N3RUa1RLd0FBQUZKSlJFRlVlQUh0emprU2dDQVFSTkZtUVlVWjduOWRLVXZydTBUbXZQQW4zYnIwUWZnZFo1eHg2eCtyUW4yM0dxVFlucTFGRGNudXpaSU8yV21lZFZxSVJWeGdHS0V5ak5nWVJqS0drWjFoRklaM0k3MEx5TTBWdFU4QUFBQUFTVVZPUks1Q1lJST1cIik7XG59XG5cbi5odEdob3N0VGFibGUgLmh0Q29yZSBzcGFuLmNvbEhlYWRlci5jb2x1bW5Tb3J0aW5nOm5vdCguaW5kaWNhdG9yRGlzYWJsZWQpOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiKlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogVGhlIG11bHRpLWxpbmUgaGVhZGVyIGFuZCBoZWFkZXIgd2l0aCBsb25nZXIgdGV4dCBuZWVkIG1vcmUgcGFkZGluZyB0byBub3QgaGlkZSBhcnJvdyxcbiAgd2UgbWFrZSBoZWFkZXIgd2lkZXIgaW4gYEdob3N0VGFibGVgIHRvIG1ha2Ugc29tZSBzcGFjZSBmb3IgYXJyb3cgd2hpY2ggaXMgcG9zaXRpb25lZCBhYnNvbHV0ZWx5IGluIHRoZSBtYWluIHRhYmxlICovXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYSxcbi5oYW5kc29udGFibGUgdGQuYXJlYS0xLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTIsXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEtMyxcbi5oYW5kc29udGFibGUgdGQuYXJlYS00LFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTUsXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEtNixcbi5oYW5kc29udGFibGUgdGQuYXJlYS03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWE6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTE6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTI6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTM6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTQ6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTU6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTY6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIC8qIEZpeCBmb3IgSUU5IHRvIHNwcmVhZCB0aGUgXCI6YmVmb3JlXCIgcHNldWRvIGVsZW1lbnQgdG8gMTAwJSBoZWlnaHQgb2YgdGhlIHBhcmVudCBlbGVtZW50ICovXG4gIGJvdHRvbTogLTEwMCUgXFw5IDtcbiAgYmFja2dyb3VuZDogIzAwNWVmZjtcbn1cblxuLyogRml4IGZvciBJRTEwIGFuZCBJRTExIHRvIHNwcmVhZCB0aGUgXCI6YmVmb3JlXCIgcHNldWRvIGVsZW1lbnQgdG8gMTAwJSBoZWlnaHQgb2YgdGhlIHBhcmVudCBlbGVtZW50ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuaGFuZHNvbnRhYmxlIHRkLmFyZWE6YmVmb3JlLFxuICAuaGFuZHNvbnRhYmxlIHRkLmFyZWEtMTpiZWZvcmUsXG4gIC5oYW5kc29udGFibGUgdGQuYXJlYS0yOmJlZm9yZSxcbiAgLmhhbmRzb250YWJsZSB0ZC5hcmVhLTM6YmVmb3JlLFxuICAuaGFuZHNvbnRhYmxlIHRkLmFyZWEtNDpiZWZvcmUsXG4gIC5oYW5kc29udGFibGUgdGQuYXJlYS01OmJlZm9yZSxcbiAgLmhhbmRzb250YWJsZSB0ZC5hcmVhLTY6YmVmb3JlLFxuICAuaGFuZHNvbnRhYmxlIHRkLmFyZWEtNzpiZWZvcmUge1xuICAgIGJvdHRvbTogLTEwMCU7XG4gIH1cbn1cbi5oYW5kc29udGFibGUgdGQuYXJlYTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjE7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYXJlYS0xOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMjtcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTI6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4yNztcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTM6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4zNTtcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTQ6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC40MTtcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTU6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC40Nztcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTY6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC41NDtcbn1cblxuLmhhbmRzb250YWJsZSB0ZC5hcmVhLTc6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC41ODtcbn1cblxuLmhhbmRzb250YWJsZSB0Ym9keSB0aC5odF9faGlnaGxpZ2h0LFxuLmhhbmRzb250YWJsZSB0aGVhZCB0aC5odF9faGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjZGNkYztcbn1cblxuLmhhbmRzb250YWJsZSB0Ym9keSB0aC5odF9fYWN0aXZlX2hpZ2hsaWdodCxcbi5oYW5kc29udGFibGUgdGhlYWQgdGguaHRfX2FjdGl2ZV9oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGViMGU3O1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmhhbmRzb250YWJsZUlucHV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lLXdpZHRoOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDFweCA1cHggMCA1cHg7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMjFweDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzUyOTJGNyBpbnNldDtcbiAgcmVzaXplOiBub25lO1xuICAvKmJlbG93IGFyZSBuZWVkZWQgdG8gb3ZlcndyaXRlIHN0dWZmIGFkZGVkIGJ5IGpRdWVyeSBVSSBCb290c3RyYXAgdGhlbWUqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIC8qb3ZlcndyaXRlIHN0eWxlcyBwb3RlbnRpb25hbGx5IG1hZGUgYnkgYSBmcmFtZXdvcmsqL1xufVxuXG4uaGFuZHNvbnRhYmxlSW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlSW5wdXRIb2xkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLmh0U2VsZWN0RWRpdG9yIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZW51bGlzdC1idXR0b24gIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmh0U2VsZWN0RWRpdG9yOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLypcblRleHRSZW5kZXJlciByZWFkT25seSBjZWxsXG4qL1xuLmhhbmRzb250YWJsZSAuaHREaW1tZWQge1xuICBjb2xvcjogIzc3Nztcbn1cblxuLmhhbmRzb250YWJsZSAuaHRTdWJtZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFN1Ym1lbnUgOmFmdGVyIHtcbiAgY29udGVudDogXCLilrZcIjtcbiAgY29sb3I6ICM3Nzc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgZm9udC1zaXplOiA5cHg7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0U3VibWVudSA6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odFN1Ym1lbnUgOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4peAXCI7XG4gIGNvbG9yOiAjNzc3O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDVweDtcbiAgZm9udC1zaXplOiA5cHg7XG59XG5cbi8qXG5UZXh0UmVuZGVyZXIgaG9yaXpvbnRhbCBhbGlnbm1lbnRcbiovXG4uaGFuZHNvbnRhYmxlIC5odExlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odENlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRSaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odEp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG4vKlxuVGV4dFJlbmRlcmVyIHZlcnRpY2FsIGFsaWdubWVudFxuKi9cbi5oYW5kc29udGFibGUgLmh0VG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRNaWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odEJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qXG5UZXh0UmVuZGVyZXIgcGxhY2Vob2xkZXIgdmFsdWVcbiovXG4uaGFuZHNvbnRhYmxlIC5odFBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qKlxuICogSGFuZHNvbnRhYmxlIGxpc3Rib3ggdGhlbWVcbiAqL1xuLmhhbmRzb250YWJsZS5saXN0Ym94IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggLmh0X21hc3RlciB0YWJsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggdGgsXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggdHI6Zmlyc3QtY2hpbGQgdGgsXG4uaGFuZHNvbnRhYmxlLmxpc3Rib3ggdHI6bGFzdC1jaGlsZCB0aCxcbi5oYW5kc29udGFibGUubGlzdGJveCB0cjpmaXJzdC1jaGlsZCB0ZCxcbi5oYW5kc29udGFibGUubGlzdGJveCB0ZCB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLmhhbmRzb250YWJsZS5saXN0Ym94IHRoLFxuLmhhbmRzb250YWJsZS5saXN0Ym94IHRkIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5oYW5kc29udGFibGUubGlzdGJveCB0ZC5odERpbW1lZCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG59XG5cbi5oYW5kc29udGFibGUubGlzdGJveCAud3RCb3JkZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5oYW5kc29udGFibGUubGlzdGJveCB0ciB0ZC5jdXJyZW50LFxuLmhhbmRzb250YWJsZS5saXN0Ym94IHRyOmhvdmVyIHRkIHtcbiAgYmFja2dyb3VuZDogI2VlZTtcbn1cblxuLmh0X2VkaXRvcl9oaWRkZW4ge1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmh0X2VkaXRvcl92aXNpYmxlIHtcbiAgei1pbmRleDogMjAwO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmh0U2VhcmNoUmVzdWx0IHtcbiAgYmFja2dyb3VuZDogI2ZjZWRkOTtcbiAgY29sb3I6ICM1ODM3MDc7XG59XG5cbi5oYW5kc29udGFibGUgLmNvbGxhcHNpYmxlSW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICBsZWZ0OiB1bnNldDtcbiAgcmlnaHQ6IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0E2QTZBNjtcbiAgbGluZS1oZWlnaHQ6IDhweDtcbiAgY29sb3I6ICMyMjI7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDZweCByZ2IoMjM4LCAyMzgsIDIzOCk7XG4gIC1tb3otYm94LXNoYWRvdzogMCAwIDAgNnB4IHJnYigyMzgsIDIzOCwgMjM4KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgNnB4IHJnYigyMzgsIDIzOCwgMjM4KTtcbiAgYmFja2dyb3VuZDogI2VlZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5jb2xsYXBzaWJsZUluZGljYXRvciB7XG4gIHJpZ2h0OiB1bnNldDtcbiAgbGVmdDogNXB4O1xufVxuLypcblxuIEhhbmRzb250YWJsZSBNb2JpbGUgVGV4dCBFZGl0b3Igc3R5bGVzaGVldFxuXG4gKi9cbi5oYW5kc29udGFibGUubW9iaWxlLFxuLmhhbmRzb250YWJsZS5tb2JpbGUgLnd0SG9sZGVyIHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uaGFuZHNvbnRhYmxlLm1vYmlsZSAuaGFuZHNvbnRhYmxlSW5wdXQ6Zm9jdXMge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDJweCAjNTI5MmY3IGluc2V0O1xuICAtbW96LWJveC1zaGFkb3c6IDAgMCAwIDJweCAjNTI5MmY3IGluc2V0O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggIzUyOTJmNyBpbnNldDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4udG9wU2VsZWN0aW9uSGFuZGxlOm5vdCguaHRfbWFzdGVyIC50b3BTZWxlY3Rpb25IYW5kbGUpLFxuLnRvcFNlbGVjdGlvbkhhbmRsZS1IaXRBcmVhOm5vdCguaHRfbWFzdGVyIC50b3BTZWxlY3Rpb25IYW5kbGUtSGl0QXJlYSkge1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4vKiBJbml0aWFsIGxlZnQvdG9wIGNvb3JkaW5hdGVzIC0gb3ZlcndyaXR0ZW4gd2hlbiBhY3R1YWwgcG9zaXRpb24gaXMgc2V0ICovXG4uaGFuZHNvbnRhYmxlIC50b3BTZWxlY3Rpb25IYW5kbGUsXG4uaGFuZHNvbnRhYmxlIC50b3BTZWxlY3Rpb25IYW5kbGUtSGl0QXJlYSxcbi5oYW5kc29udGFibGUgLmJvdHRvbVNlbGVjdGlvbkhhbmRsZSxcbi5oYW5kc29udGFibGUgLmJvdHRvbVNlbGVjdGlvbkhhbmRsZS1IaXRBcmVhIHtcbiAgbGVmdDogLTEwMDAwcHg7XG4gIHJpZ2h0OiB1bnNldDtcbiAgdG9wOiAtMTAwMDBweDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAudG9wU2VsZWN0aW9uSGFuZGxlLCBbZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC50b3BTZWxlY3Rpb25IYW5kbGUtSGl0QXJlYSwgW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuYm90dG9tU2VsZWN0aW9uSGFuZGxlLCBbZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5ib3R0b21TZWxlY3Rpb25IYW5kbGUtSGl0QXJlYSB7XG4gIHJpZ2h0OiAtMTAwMDBweDtcbiAgbGVmdDogdW5zZXQ7XG59XG5cbi5oYW5kc29udGFibGUuaGlkZS10d2VlbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBvcGFjaXR5LWhpZGUgMC4zcztcbiAgYW5pbWF0aW9uOiBvcGFjaXR5LWhpZGUgMC4zcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5cbi5oYW5kc29udGFibGUuc2hvdy10d2VlbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBvcGFjaXR5LXNob3cgMC4zcztcbiAgYW5pbWF0aW9uOiBvcGFjaXR5LXNob3cgMC4zcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5AY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIFBpa2FkYXlcbiAqIENvcHlyaWdodCDCqSAyMDE0IERhdmlkIEJ1c2hlbGwgfCBCU0QgJiBNSVQgbGljZW5zZSB8IGh0dHBzOi8vZGJ1c2hlbGwuY29tL1xuICovXG4ucGlrYS1zaW5nbGUge1xuICB6LWluZGV4OiA5OTk5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2JiYjtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cblxuLypcbmNsZWFyIGNoaWxkIGZsb2F0IChwaWthLWxlbmRhciksIHVzaW5nIHRoZSBmYW1vdXMgbWljcm8gY2xlYXJmaXggaGFja1xuaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG4qL1xuLnBpa2Etc2luZ2xlOmJlZm9yZSxcbi5waWthLXNpbmdsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnBpa2Etc2luZ2xlOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5waWthLXNpbmdsZS5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGlrYS1zaW5nbGUuaXMtYm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5waWthLWxlbmRhciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjQwcHg7XG4gIG1hcmdpbjogOHB4O1xufVxuXG4ucGlrYS10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGlrYS1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTk5O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDVweCAzcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ucGlrYS10aXRsZSBzZWxlY3Qge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5ODtcbiAgbWFyZ2luOiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IDVweDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnBpa2EtcHJldixcbi5waWthLW5leHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgLyogaGlkZSB0ZXh0IHVzaW5nIHRleHQtaW5kZW50IHRyaWNrLCB1c2luZyB3aWR0aCB2YWx1ZSAoaXQncyBlbm91Z2gpICovXG4gIHRleHQtaW5kZW50OiAyMHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA3NSUgNzUlO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5waWthLXByZXY6aG92ZXIsXG4ucGlrYS1uZXh0OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBpa2EtcHJldixcbi5pcy1ydGwgLnBpa2EtbmV4dCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVWtsRVFWUjQydTNWTVFvQUlCQURRZjhQZ2orT0Q5aEcyQ3RPTkpCMnltUWtLZTBIYndBUDB4dWNEaVFXQVJJVElERUJFbk1nTVE4UzgrQXFCSWw2a0tnSGlYcVFxQWVKZXBCby96MzhKL1UwdUFIbGFCa0JsOUk0R3dBQUFBQkpSVTVFcmtKZ2dnPT1cIik7XG59XG5cbi5waWthLW5leHQsXG4uaXMtcnRsIC5waWthLXByZXYge1xuICBmbG9hdDogcmlnaHQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQlFBQUFBZUNBWUFBQUFzRWo1ckFBQUFVMGxFUVZSNDJ1M1ZPd29BTUFnRTBkd2ZBbk5qVTI2YllrQkNGR3dmaUw5VlZXb08rQko0R2YzZ3RzRUtLb0ZCTlRDb0NBWVZ3YUFpR05RR01VSE1rakdiZ2prMm1JT051WG8wbkM4WG5DZjFKWGdBclZJWkFRaDVUS1lBQUFBQVNVVk9SSzVDWUlJPVwiKTtcbn1cblxuLnBpa2EtcHJldi5pcy1kaXNhYmxlZCxcbi5waWthLW5leHQuaXMtZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG9wYWNpdHk6IDAuMjtcbn1cblxuLnBpa2Etc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucGlrYS10YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4ucGlrYS10YWJsZSB0aCxcbi5waWthLXRhYmxlIHRkIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucGlrYS10YWJsZSB0aCB7XG4gIGNvbG9yOiAjOTk5O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGlrYS1idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4O1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGhlaWdodDogaW5pdGlhbDtcbn1cblxuLnBpa2Etd2VlayB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5pcy10b2RheSAucGlrYS1idXR0b24ge1xuICBjb2xvcjogIzMzYWFmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5pcy1zZWxlY3RlZCAucGlrYS1idXR0b24sXG4uaGFzLWV2ZW50IC5waWthLWJ1dHRvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYmFja2dyb3VuZDogIzMzYWFmZjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4ICMxNzhmZTU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLmhhcy1ldmVudCAucGlrYS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMDA1ZGE5O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggIzAwNzZjOTtcbn1cblxuLmlzLWRpc2FibGVkIC5waWthLWJ1dHRvbixcbi5pcy1pbnJhbmdlIC5waWthLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNENUU5Rjc7XG59XG5cbi5pcy1zdGFydHJhbmdlIC5waWthLWJ1dHRvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjNkNCMzFEO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5pcy1lbmRyYW5nZSAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzMzYWFmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4uaXMtZGlzYWJsZWQgLnBpa2EtYnV0dG9uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6ICM5OTk7XG4gIG9wYWNpdHk6IDAuMztcbn1cblxuLmlzLW91dHNpZGUtY3VycmVudC1tb250aCAucGlrYS1idXR0b24ge1xuICBjb2xvcjogIzk5OTtcbiAgb3BhY2l0eTogMC4zO1xufVxuXG4uaXMtc2VsZWN0aW9uLWRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnBpa2EtYnV0dG9uOmhvdmVyLFxuLnBpa2Etcm93LnBpY2std2hvbGUtd2Vlazpob3ZlciAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogI2ZmODAwMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4vKiBzdHlsaW5nIGZvciBhYmJyICovXG4ucGlrYS10YWJsZSBhYmJyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgY3Vyc29yOiBoZWxwO1xufVxuLypcbkF1dG9jb21wbGV0ZVJlbmRlcmVyIGRvd24gYXJyb3dcbiovXG4uaGFuZHNvbnRhYmxlIC5odEF1dG9jb21wbGV0ZUFycm93IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjRUVFO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHdpZHRoOiAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0QXV0b2NvbXBsZXRlQXJyb3cge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmhhbmRzb250YWJsZSB0ZCAuaHRBdXRvY29tcGxldGVBcnJvdzpob3ZlciB7XG4gIGNvbG9yOiAjNzc3O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRkLmFyZWEgLmh0QXV0b2NvbXBsZXRlQXJyb3cge1xuICBjb2xvcjogI2QzZDNkMztcbn1cbi8qXG5DaGVja2JveFJlbmRlcmVyXG4qL1xuLmhhbmRzb250YWJsZSAuaHRDaGVja2JveFJlbmRlcmVySW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5oYW5kc29udGFibGUgLmh0Q2hlY2tib3hSZW5kZXJlcklucHV0Lm5vVmFsdWUge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0Q2hlY2tib3hSZW5kZXJlckxhYmVsIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmhhbmRzb250YWJsZSAuaHRDaGVja2JveFJlbmRlcmVyTGFiZWwuZnVsbFdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGFuZHNvbnRhYmxlIC5odENvbW1lbnRDZWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odENvbW1lbnRDZWxsOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiB1bnNldDtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3JkZXItdG9wOiA2cHggc29saWQgYmxhY2s7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0Q29tbWVudENlbGw6YWZ0ZXIge1xuICBsZWZ0OiAwO1xuICByaWdodDogdW5zZXQ7XG4gIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLmh0Q29tbWVudHNDb250YWluZXIgLmh0Q29tbWVudHMge1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiAxMDU5O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5odENvbW1lbnRzQ29udGFpbmVyIC5odENvbW1lbnRUZXh0QXJlYSB7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xMTc2NDcpIDAgMXB4IDNweCwgcmdiYSgwLCAwLCAwLCAwLjIzOTIxNikgMCAxcHggMnB4O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDIxNXB4O1xuICBoZWlnaHQ6IDkwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogNXB4O1xuICBvdXRsaW5lOiAwcHggIWltcG9ydGFudDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5bZGlyPXJ0bF0uaHRDb21tZW50c0NvbnRhaW5lciAuaHRDb21tZW50VGV4dEFyZWEge1xuICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjY2NjO1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLmh0Q29tbWVudHNDb250YWluZXIgLmh0Q29tbWVudFRleHRBcmVhOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjExNzY0NykgMCAxcHggM3B4LCByZ2JhKDAsIDAsIDAsIDAuMjM5MjE2KSAwIDFweCAycHgsIGluc2V0IDAgMCAwIDFweCAjNTI5MmY3O1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICM1MjkyZjc7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuW2Rpcj1ydGxdLmh0Q29tbWVudHNDb250YWluZXIgLmh0Q29tbWVudFRleHRBcmVhOmZvY3VzIHtcbiAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgIzUyOTJmNztcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG4vKiFcbiAqIEhhbmRzb250YWJsZSBDb250ZXh0TWVudVxuICovXG4uaHRDb250ZXh0TWVudTpub3QoLmh0R2hvc3RUYWJsZSkge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8qIG5lZWRzIHRvIGJlIGhpZ2hlciB0aGFuIDEwNTAgLSB6LWluZGV4IGZvciBUd2l0dGVyIEJvb3RzdHJhcCBtb2RhbCAoIzE1NjkpICovXG4gIHotaW5kZXg6IDEwNjA7XG59XG5cbi5odENvbnRleHRNZW51IC5odF9jbG9uZV90b3AsXG4uaHRDb250ZXh0TWVudSAuaHRfY2xvbmVfYm90dG9tLFxuLmh0Q29udGV4dE1lbnUgLmh0X2Nsb25lX2lubGluZV9zdGFydCxcbi5odENvbnRleHRNZW51IC5odF9jbG9uZV90b3BfaW5saW5lX3N0YXJ0X2Nvcm5lcixcbi5odENvbnRleHRNZW51IC5odF9jbG9uZV9ib3R0b21faW5saW5lX3N0YXJ0X2Nvcm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5odENvbnRleHRNZW51IC5odF9tYXN0ZXIgdGFibGUuaHRDb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG59XG5cbltkaXI9cnRsXS5odENvbnRleHRNZW51IC5odF9tYXN0ZXIgdGFibGUuaHRDb3JlIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAycHg7XG59XG5cbi5odENvbnRleHRNZW51IC53dEJvcmRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBwYWRkaW5nOiA0cHggNnB4IDAgNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uaHRDb250ZXh0TWVudSB0YWJsZSB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG59XG5cbltkaXI9cnRsXS5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbn1cblxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaW1tZWQge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiAjMzIzMjMyO1xufVxuXG4uaHRDb250ZXh0TWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5jdXJyZW50LFxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQuemVyb2NsaXBib2FyZC1pcy1ob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmM2YzZjM7XG59XG5cbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0U2VwYXJhdG9yIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uaHRDb250ZXh0TWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5odERpc2FibGVkIHtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyLmh0SGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmh0Q29udGV4dE1lbnUgdGFibGUgdGJvZHkgdHIgdGQgLmh0SXRlbVdyYXBwZXIge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG59XG5cbi5odENvbnRleHRNZW51IHRhYmxlIHRib2R5IHRyIHRkIGRpdiBzcGFuLnNlbGVjdGVkIHtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA0cHg7XG59XG5cbi5odENvbnRleHRNZW51IC5odF9tYXN0ZXIgLnd0SG9sZGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbnRleHRhcmVhLkhhbmRzb250YWJsZUNvcHlQYXN0ZSB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgb3V0bGluZTogMCBub25lICFpbXBvcnRhbnQ7XG59XG5AY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbmRzb250YWJsZSBEcm9wZG93bk1lbnVcbiAqL1xuLmhhbmRzb250YWJsZSAuY2hhbmdlVHlwZSB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbiAgY29sb3I6ICNiYmI7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBsaW5lLWhlaWdodDogOXB4O1xuICBwYWRkaW5nOiAycHg7XG4gIG1hcmdpbjogM3B4IDFweCAwIDVweDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5jaGFuZ2VUeXBlIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5oYW5kc29udGFibGUgLmNoYW5nZVR5cGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLilrwgXCI7XG59XG5cbi5oYW5kc29udGFibGUgLmNoYW5nZVR5cGU6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzc3O1xuICBjb2xvcjogIzc3NztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uaHREcm9wZG93bk1lbnU6bm90KC5odEdob3N0VGFibGUpIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAvKiBuZWVkcyB0byBiZSBoaWdoZXIgdGhhbiAxMDUwIC0gei1pbmRleCBmb3IgVHdpdHRlciBCb290c3RyYXAgbW9kYWwgKCMxNTY5KSAqL1xuICB6LWluZGV4OiAxMDYwO1xufVxuXG4uaHREcm9wZG93bk1lbnUgLmh0X2Nsb25lX3RvcCxcbi5odERyb3Bkb3duTWVudSAuaHRfY2xvbmVfYm90dG9tLFxuLmh0RHJvcGRvd25NZW51IC5odF9jbG9uZV9pbmxpbmVfc3RhcnQsXG4uaHREcm9wZG93bk1lbnUgLmh0X2Nsb25lX3RvcF9pbmxpbmVfc3RhcnRfY29ybmVyLFxuLmh0RHJvcGRvd25NZW51IC5odF9jbG9uZV9ib3R0b21faW5saW5lX3N0YXJ0X2Nvcm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5odERyb3Bkb3duTWVudSB0YWJsZS5odENvcmUge1xuICBib3JkZXItY29sb3I6ICNjY2M7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbn1cblxuW2Rpcj1ydGxdLmh0RHJvcGRvd25NZW51IHRhYmxlLmh0Q29yZSB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMnB4O1xufVxuXG4uaHREcm9wZG93bk1lbnUgLnd0Qm9yZGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBwYWRkaW5nOiA0cHggNnB4IDAgNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuXG5bZGlyPXJ0bF0uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaW1tZWQge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiAjMzIzMjMyO1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQuY3VycmVudCxcbi5odERyb3Bkb3duTWVudSB0YWJsZSB0Ym9keSB0ciB0ZC56ZXJvY2xpcGJvYXJkLWlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U5ZTllOTtcbn1cblxuLmh0RHJvcGRvd25NZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0U2VwYXJhdG9yIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaXNhYmxlZCB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQuaHREaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5odERyb3Bkb3duTWVudTpub3QoLmh0R2hvc3RUYWJsZSkgdGFibGUgdGJvZHkgdHIuaHRIaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQgLmh0SXRlbVdyYXBwZXIge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uaHREcm9wZG93bk1lbnUgdGFibGUgdGJvZHkgdHIgdGQgZGl2IHNwYW4uc2VsZWN0ZWQge1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDRweDtcbn1cblxuLmh0RHJvcGRvd25NZW51IC5odF9tYXN0ZXIgLnd0SG9sZGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFuZHNvbnRhYmxlIEZpbHRlcnNcbiAqL1xuLyogQ29uZGl0aW9ucyBtZW51ICovXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnU6bm90KC5odEdob3N0VGFibGUpIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDcwO1xufVxuXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgLmh0X2Nsb25lX3RvcCxcbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSAuaHRfY2xvbmVfaW5saW5lX3N0YXJ0LFxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IC5odF9jbG9uZV9jb3JuZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgdGFibGUuaHRDb3JlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IC53dEJvcmRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgcGFkZGluZzogNHB4IDZweCAwIDZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbn1cblxuW2Rpcj1ydGxdLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkLmh0RGltbWVkIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogIzMyMzIzMjtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkLmN1cnJlbnQsXG4uaHRGaWx0ZXJzQ29uZGl0aW9uc01lbnUgdGFibGUgdGJvZHkgdHIgdGQuemVyb2NsaXBib2FyZC1pcy1ob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlOWU5ZTk7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5odFNlcGFyYXRvciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5odERpc2FibGVkIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSB0YWJsZSB0Ym9keSB0ciB0ZC5odERpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkIC5odEl0ZW1XcmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmh0RmlsdGVyc0NvbmRpdGlvbnNNZW51IHRhYmxlIHRib2R5IHRyIHRkIGRpdiBzcGFuLnNlbGVjdGVkIHtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA0cHg7XG59XG5cbi5odEZpbHRlcnNDb25kaXRpb25zTWVudSAuaHRfbWFzdGVyIC53dEhvbGRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5oYW5kc29udGFibGUgLmh0TWVudUZpbHRlcmluZyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI2NjYztcbiAgaGVpZ2h0OiAxMzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRfbWFzdGVyIHRhYmxlIHRkLmh0Q3VzdG9tTWVudVJlbmRlcmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4vKiBNZW51IGxhYmVsICovXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51TGFiZWwge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLyogQ29tcG9uZW50IGFjdGlvbiBiYXIgKi9cbi5oYW5kc29udGFibGUgLmh0RmlsdGVyc01lbnVBY3Rpb25CYXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xufVxuXG4vKiBDb21wb25lbnQgZmlsdGVyIGJ5IGNvbmRpdGlvbmFsICovXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51Q29uZGl0aW9uLmJvcmRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI2NjYyAhaW1wb3J0YW50O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51Q29uZGl0aW9uIC5odFVJSW5wdXQge1xuICBwYWRkaW5nOiAwIDAgNXB4IDA7XG59XG5cbi8qIENvbXBvbmVudCBmaWx0ZXIgYnkgdmFsdWUgKi9cbi5oYW5kc29udGFibGUgLmh0RmlsdGVyc01lbnVWYWx1ZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI2NjYyAhaW1wb3J0YW50O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNNZW51VmFsdWUgLmh0VUlNdWx0aXBsZVNlbGVjdFNlYXJjaCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5oYW5kc29udGFibGUgLmh0RmlsdGVyc01lbnVDb25kaXRpb24gLmh0VUlJbnB1dCBpbnB1dCxcbi5oYW5kc29udGFibGUgLmh0RmlsdGVyc01lbnVWYWx1ZSAuaHRVSU11bHRpcGxlU2VsZWN0U2VhcmNoIGlucHV0IHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBwYWRkaW5nOiA0cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaHRVSU11bHRpcGxlU2VsZWN0IC5odF9tYXN0ZXIgLnd0SG9sZGVyIHtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odEZpbHRlcnNBY3RpdmUgLmNoYW5nZVR5cGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTA5MjcyO1xuICBjb2xvcjogIzE4ODA0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyZTBkOTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVNlbGVjdEFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0VUlTZWxlY3RBbGwge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJQ2xlYXJBbGwsIC5oYW5kc29udGFibGUgLmh0VUlTZWxlY3RBbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlDbGVhckFsbCBhLCAuaGFuZHNvbnRhYmxlIC5odFVJU2VsZWN0QWxsIGEge1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVNlbGVjdGlvbkNvbnRyb2xzIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgLmh0VUlTZWxlY3Rpb25Db250cm9scyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5oYW5kc29udGFibGUgLmh0Q2hlY2tib3hSZW5kZXJlcklucHV0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDFlbTtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuaHRDaGVja2JveFJlbmRlcmVySW5wdXQge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qIFVJIGVsZW1lbnRzICovXG4vKiBJbnB1dCAqL1xuLmhhbmRzb250YWJsZSAuaHRVSUlucHV0IHtcbiAgcGFkZGluZzogM3B4IDAgN3B4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJSW5wdXQgaW5wdXQge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMmQxZDE7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dCBpbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dEljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8qIEJ1dHRvbiAqL1xuLmhhbmRzb250YWJsZSAuaHRVSUlucHV0Lmh0VUlCdXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSUlucHV0Lmh0VUlCdXR0b24gaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBjb2xvcjogIzAwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IDE5cHg7XG4gIG1pbi13aWR0aDogNjRweDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSUlucHV0Lmh0VUlCdXR0b24gaW5wdXQ6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNiOWI5Yjk7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dC5odFVJQnV0dG9uT0sge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIC5odFVJSW5wdXQuaHRVSUJ1dHRvbk9LIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSUlucHV0Lmh0VUlCdXR0b25PSyBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZjlkNTg7XG4gIGJvcmRlci1jb2xvcjogIzE4ODA0ZTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlJbnB1dC5odFVJQnV0dG9uT0sgaW5wdXQ6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMxYTZmNDY7XG59XG5cbi8qIFNlbGVjdCAqL1xuLmhhbmRzb250YWJsZSAuaHRVSVNlbGVjdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlTZWxlY3RDYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDJkMWQxO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAzcHggMjBweCAzcHggMTBweDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlTZWxlY3RDYXB0aW9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I5YjliOTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVNlbGVjdERyb3Bkb3duOmFmdGVyIHtcbiAgY29udGVudDogXCLilrJcIjtcbiAgZm9udC1zaXplOiA3cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogMDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVNlbGVjdERyb3Bkb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pa8XCI7XG4gIGZvbnQtc2l6ZTogN3B4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDhweDtcbn1cblxuLyogU2VsZWN0TXVsdGlwbGUgKi9cbi5oYW5kc29udGFibGUgLmh0VUlNdWx0aXBsZVNlbGVjdCAuaGFuZHNvbnRhYmxlIC5odENvcmUge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0VUlNdWx0aXBsZVNlbGVjdCAuaGFuZHNvbnRhYmxlIC5odENvcmUgdGQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJTXVsdGlwbGVTZWxlY3RTZWFyY2ggaW5wdXQge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMmQxZDE7XG4gIHBhZGRpbmc6IDNweDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVJhZGlvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuaHRVSVJhZGlvIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIC5odFVJUmFkaW86bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVJhZGlvID4gaW5wdXRbdHlwZT1yYWRpb10ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVleDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSAuaHRVSVJhZGlvID4gaW5wdXRbdHlwZT1yYWRpb10ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwLjVleDtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRVSVJhZGlvIGxhYmVsIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRGaWx0ZXJzTWVudU9wZXJhdG9ycyB7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG59XG5AY2hhcnNldCBcIlVURi04XCI7XG4vKlxuICogSGFuZHNvbnRhYmxlIEhpZGRlbkNvbHVtbnNcbiAqL1xuLmhhbmRzb250YWJsZSB0aC5iZWZvcmVIaWRkZW5Db2x1bW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW5kc29udGFibGUgdGguYmVmb3JlSGlkZGVuQ29sdW1uOjphZnRlcixcbi5oYW5kc29udGFibGUgdGguYWZ0ZXJIaWRkZW5Db2x1bW46OmJlZm9yZSB7XG4gIGNvbG9yOiAjYmJiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBmb250LXNpemU6IDVwdDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLmFmdGVySGlkZGVuQ29sdW1uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLmJlZm9yZUhpZGRlbkNvbHVtbjo6YWZ0ZXIge1xuICByaWdodDogMXB4O1xuICBjb250ZW50OiBcIuKXgFwiOyAvKiBsZWZ0IGFycm93ICovXG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgdGguYmVmb3JlSGlkZGVuQ29sdW1uOjphZnRlciB7XG4gIHJpZ2h0OiBpbml0aWFsO1xuICBsZWZ0OiAxcHg7XG4gIGNvbnRlbnQ6IFwi4pa2XCI7IC8qIHJpZ2h0IGFycm93ICovXG59XG5cbi5oYW5kc29udGFibGUgdGguYWZ0ZXJIaWRkZW5Db2x1bW46OmJlZm9yZSB7XG4gIGxlZnQ6IDFweDtcbiAgY29udGVudDogXCLilrZcIjsgLyogcmlnaHQgYXJyb3cgKi9cbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0aC5hZnRlckhpZGRlbkNvbHVtbjo6YmVmb3JlIHtcbiAgcmlnaHQ6IDFweDtcbiAgbGVmdDogaW5pdGlhbDtcbiAgY29udGVudDogXCLil4BcIjsgLyogbGVmdCBhcnJvdyAqL1xufVxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBIYW5kc29udGFibGUgSGlkZGVuUm93c1xuICovXG4uaGFuZHNvbnRhYmxlIHRoLmJlZm9yZUhpZGRlblJvdzo6YmVmb3JlLFxuLmhhbmRzb250YWJsZSB0aC5hZnRlckhpZGRlblJvdzo6YWZ0ZXIge1xuICBjb2xvcjogI2JiYjtcbiAgZm9udC1zaXplOiA2cHQ7XG4gIGxpbmUtaGVpZ2h0OiA2cHQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMnB4O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoLmJlZm9yZUhpZGRlblJvdyxcbi5oYW5kc29udGFibGUgdGguYWZ0ZXJIaWRkZW5Sb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW5kc29udGFibGUgdGguYmVmb3JlSGlkZGVuUm93OjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKWslwiO1xuICBib3R0b206IDJweDtcbn1cblxuLmhhbmRzb250YWJsZSB0aC5hZnRlckhpZGRlblJvdzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKWvFwiO1xuICB0b3A6IDJweDtcbn1cblxuLmhhbmRzb250YWJsZS5odF9fc2VsZWN0aW9uLS1yb3dzIHRib2R5IHRoLmJlZm9yZUhpZGRlblJvdy5odF9faGlnaGxpZ2h0OmJlZm9yZSxcbi5oYW5kc29udGFibGUuaHRfX3NlbGVjdGlvbi0tcm93cyB0Ym9keSB0aC5hZnRlckhpZGRlblJvdy5odF9faGlnaGxpZ2h0OmFmdGVyIHtcbiAgY29sb3I6ICNlZWU7XG59XG5cbi5oYW5kc29udGFibGUgdGQuYWZ0ZXJIaWRkZW5Sb3cuZmlyc3RWaXNpYmxlUm93LFxuLmhhbmRzb250YWJsZSB0aC5hZnRlckhpZGRlblJvdy5maXJzdFZpc2libGVSb3cge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0NDQztcbn1cbi5odFJvd0hlYWRlcnMgLmh0X21hc3Rlci5pbm5lckJvcmRlcklubGluZVN0YXJ0IH4gLmh0X2Nsb25lX3RvcF9pbmxpbmVfc3RhcnRfY29ybmVyIHRoOm50aC1jaGlsZCgyKSxcbi5odFJvd0hlYWRlcnMgLmh0X21hc3Rlci5pbm5lckJvcmRlcklubGluZVN0YXJ0IH4gLmh0X2Nsb25lX2lubGluZV9zdGFydCB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgYm9yZGVyLWxlZnQ6IDAgbm9uZTtcbn1cbi5oYW5kc29udGFibGUgLnd0SGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW5kc29udGFibGUuaHRfX21hbnVhbENvbHVtbk1vdmUuYWZ0ZXItc2VsZWN0aW9uLS1jb2x1bW5zIHRoZWFkIHRoLmh0X19oaWdobGlnaHQge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogLW1vei1ncmFiO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxDb2x1bW5Nb3ZlLm9uLW1vdmluZy0tY29sdW1ucyxcbi5oYW5kc29udGFibGUuaHRfX21hbnVhbENvbHVtbk1vdmUub24tbW92aW5nLS1jb2x1bW5zIHRoZWFkIHRoLmh0X19oaWdobGlnaHQge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxDb2x1bW5Nb3ZlLm9uLW1vdmluZy0tY29sdW1ucyAubWFudWFsQ29sdW1uUmVzaXplciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLS1ndWlkZWxpbmUsXG4uaGFuZHNvbnRhYmxlIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tYmFja2xpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLS1ndWlkZWxpbmUge1xuICBiYWNrZ3JvdW5kOiAjNzU3NTc1O1xuICB3aWR0aDogMnB4O1xuICB0b3A6IDA7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IC0xcHg7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwO1xuICB6LWluZGV4OiAyMDU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLS1iYWNrbGlnaHQge1xuICBiYWNrZ3JvdW5kOiAjMzQzNDM0O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCA1MiwgNTIsIDAuMjUpO1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiAyMDU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlLm9uLW1vdmluZy0tY29sdW1ucy5zaG93LXVpIC5odF9fbWFudWFsQ29sdW1uTW92ZS0tZ3VpZGVsaW5lLFxuLmhhbmRzb250YWJsZS5vbi1tb3ZpbmctLWNvbHVtbnMgLmh0X19tYW51YWxDb2x1bW5Nb3ZlLS1iYWNrbGlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5oYW5kc29udGFibGUgLnd0SGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW5kc29udGFibGUuaHRfX21hbnVhbFJvd01vdmUuYWZ0ZXItc2VsZWN0aW9uLS1yb3dzIHRib2R5IHRoLmh0X19oaWdobGlnaHQge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogLW1vei1ncmFiO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxSb3dNb3ZlLm9uLW1vdmluZy0tcm93cyxcbi5oYW5kc29udGFibGUuaHRfX21hbnVhbFJvd01vdmUub24tbW92aW5nLS1yb3dzIHRib2R5IHRoLmh0X19oaWdobGlnaHQge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4uaGFuZHNvbnRhYmxlLmh0X19tYW51YWxSb3dNb3ZlLm9uLW1vdmluZy0tcm93cyAubWFudWFsUm93UmVzaXplciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0X19tYW51YWxSb3dNb3ZlLS1ndWlkZWxpbmUsXG4uaGFuZHNvbnRhYmxlIC5odF9fbWFudWFsUm93TW92ZS0tYmFja2xpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhhbmRzb250YWJsZSAuaHRfX21hbnVhbFJvd01vdmUtLWd1aWRlbGluZSB7XG4gIGJhY2tncm91bmQ6ICM3NTc1NzU7XG4gIGhlaWdodDogMnB4O1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICB6LWluZGV4OiAyMDU7XG59XG5cbi5oYW5kc29udGFibGUgLmh0X19tYW51YWxSb3dNb3ZlLS1iYWNrbGlnaHQge1xuICBiYWNrZ3JvdW5kOiAjMzQzNDM0O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCA1MiwgNTIsIDAuMjUpO1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiAyMDU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uaGFuZHNvbnRhYmxlLm9uLW1vdmluZy0tcm93cy5zaG93LXVpIC5odF9fbWFudWFsUm93TW92ZS0tZ3VpZGVsaW5lLFxuLmhhbmRzb250YWJsZS5vbi1tb3ZpbmctLXJvd3MgLmh0X19tYW51YWxSb3dNb3ZlLS1iYWNrbGlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdOm5vdChbY2xhc3MqPWZ1bGx5U2VsZWN0ZWRNZXJnZWRDZWxsXSk6YmVmb3JlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhhbmRzb250YWJsZSB0Ym9keSB0ZFtyb3dzcGFuXVtjbGFzcyo9YXJlYV1bY2xhc3MqPWhpZ2hsaWdodF1bY2xhc3MqPWZ1bGx5U2VsZWN0ZWRNZXJnZWRDZWxsLW11bHRpcGxlXTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjE7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbC0wXTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjE7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbC0xXTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjI7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbC0yXTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjI3O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRib2R5IHRkW3Jvd3NwYW5dW2NsYXNzKj1hcmVhXVtjbGFzcyo9aGlnaGxpZ2h0XVtjbGFzcyo9ZnVsbHlTZWxlY3RlZE1lcmdlZENlbGwtM106YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4zNTtcbn1cblxuLmhhbmRzb250YWJsZSB0Ym9keSB0ZFtyb3dzcGFuXVtjbGFzcyo9YXJlYV1bY2xhc3MqPWhpZ2hsaWdodF1bY2xhc3MqPWZ1bGx5U2VsZWN0ZWRNZXJnZWRDZWxsLTRdOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNDE7XG59XG5cbi5oYW5kc29udGFibGUgdGJvZHkgdGRbcm93c3Bhbl1bY2xhc3MqPWFyZWFdW2NsYXNzKj1oaWdobGlnaHRdW2NsYXNzKj1mdWxseVNlbGVjdGVkTWVyZ2VkQ2VsbC01XTpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjQ3O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRib2R5IHRkW3Jvd3NwYW5dW2NsYXNzKj1hcmVhXVtjbGFzcyo9aGlnaGxpZ2h0XVtjbGFzcyo9ZnVsbHlTZWxlY3RlZE1lcmdlZENlbGwtNl06YmVmb3JlIHtcbiAgb3BhY2l0eTogMC41NDtcbn1cblxuLmhhbmRzb250YWJsZSB0Ym9keSB0ZFtyb3dzcGFuXVtjbGFzcyo9YXJlYV1bY2xhc3MqPWhpZ2hsaWdodF1bY2xhc3MqPWZ1bGx5U2VsZWN0ZWRNZXJnZWRDZWxsLTddOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNTg7XG59XG4vKiBDb2x1bW4ncyBudW1iZXIgcG9zaXRpb24gKi9cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZzo6YWZ0ZXIge1xuICAvKiBDZW50ZXJpbmcgc3RhcnQgKi9cbiAgdG9wOiA1MCU7XG4gIC8qIFR3byBleHRyYSBwaXhlbHMgKC0yIGluc3RlYWQgb2YgLTQpIGZvciBwdXJwb3NlIG9mIHByb3BlciBwb3NpdGlvbmluZyBvZiBudW1lcmljIGluZGljYXRvcnMsIHdoZW4gYGZvbnQtc2l6ZWAgc2V0IHRvIGRlZmF1bHQgKi9cbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgLyogQ2VudGVyaW5nIGVuZCAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMTVweDtcbiAgbGVmdDogdW5zZXQ7XG4gIC8qIEZvciBwdXJwb3NlIG9mIGNvbnRpbnVvdXMgbW91c2Ugb3ZlciBleHBlcmllbmNlLCB3aGVuIG1vdmluZyBiZXR3ZWVuIHRoZSBgOjpiZWZvcmVgIGFuZCB0aGUgYDo6YWZ0ZXJgIGVsZW1lbnRzICovXG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgZm9udC1zaXplOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBsaW5lLWhlaWdodDogMS4xO1xuICAvKiBXb3JrYXJvdW5kIGZvciBJRTkgLSBJRTExICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmc6OmFmdGVyIHtcbiAgbGVmdDogLTE1cHg7XG4gIHJpZ2h0OiB1bnNldDtcbiAgLyogRm9yIHB1cnBvc2Ugb2YgY29udGludW91cyBtb3VzZSBvdmVyIGV4cGVyaWVuY2UsIHdoZW4gbW92aW5nIGJldHdlZW4gdGhlIGA6OmJlZm9yZWAgYW5kIHRoZSBgOjphZnRlcmAgZWxlbWVudHMgKi9cbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xufVxuXG4vKiBXb3JrYXJvdW5kIGZvciBJRTkgLSBJRTExLCBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMjE5MDI1NjYsIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8zMjEyMDI0NyAqL1xuLmhhbmRzb250YWJsZSBzcGFuLmNvbEhlYWRlci5jb2x1bW5Tb3J0aW5nOjphZnRlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogV2Ugc3VwcG9ydCB1cCB0byA3IG51bWVyaWMgaW5kaWNhdG9ycywgZGVzY3JpYmluZyBvcmRlciBvZiBjb2x1bW4gaW4gc29ydGVkIGNvbHVtbnMgcXVldWUgKi9cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZ1tjbGFzc149c29ydC1dOjphZnRlcixcbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZ1tjbGFzcyo9XCIgc29ydC1cIl06OmFmdGVyIHtcbiAgY29udGVudDogXCIrXCI7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5zb3J0LTE6OmFmdGVyIHtcbiAgY29udGVudDogXCIxXCI7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5zb3J0LTI6OmFmdGVyIHtcbiAgY29udGVudDogXCIyXCI7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5zb3J0LTM6OmFmdGVyIHtcbiAgY29udGVudDogXCIzXCI7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5zb3J0LTQ6OmFmdGVyIHtcbiAgY29udGVudDogXCI0XCI7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5zb3J0LTU6OmFmdGVyIHtcbiAgY29udGVudDogXCI1XCI7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5zb3J0LTY6OmFmdGVyIHtcbiAgY29udGVudDogXCI2XCI7XG59XG5cbi5oYW5kc29udGFibGUgc3Bhbi5jb2xIZWFkZXIuY29sdW1uU29ydGluZy5zb3J0LTc6OmFmdGVyIHtcbiAgY29udGVudDogXCI3XCI7XG59XG5cbi8qIERyb3AtZG93biBtZW51IHdpZGVucyBoZWFkZXIgYnkgNSBwaXhlbHMsIHNvcnQgc2VxdWVuY2UgbnVtYmVycyB3b24ndCBvdmVybGFwIHRoZSBpY29uOyBtYWlubHkgZm9yIHRoZSBJRTkrICovXG4uaHRHaG9zdFRhYmxlIHRoIGRpdiBidXR0b24uY2hhbmdlVHlwZSArIHNwYW4uY29sSGVhZGVyLmNvbHVtblNvcnRpbmc6bm90KC5pbmRpY2F0b3JEaXNhYmxlZCkge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG4uaGFuZHNvbnRhYmxlIHRoZWFkIHRoLmhpZGRlbkhlYWRlcjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBjaGFyc2V0IFwiVVRGLThcIjtcbi5oYW5kc29udGFibGUgdGguaHRfbmVzdGluZ0xldmVscyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogN3B4O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoLmh0X25lc3RpbmdMZXZlbHMge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogN3B4O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoIGRpdi5odF9uZXN0aW5nTGV2ZWxzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDExcHg7XG4gIHJpZ2h0OiB1bnNldDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZSB0aCBkaXYuaHRfbmVzdGluZ0xldmVscyB7XG4gIHJpZ2h0OiAxMXB4O1xuICBsZWZ0OiB1bnNldDtcbn1cblxuLmhhbmRzb250YWJsZS5pbm5lckJvcmRlcklubGluZVN0YXJ0IHRoIGRpdi5odF9uZXN0aW5nTGV2ZWxzLFxuLmhhbmRzb250YWJsZS5pbm5lckJvcmRlcklubGluZVN0YXJ0IH4gLmhhbmRzb250YWJsZSB0aCBkaXYuaHRfbmVzdGluZ0xldmVscyB7XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiB1bnNldDtcbn1cblxuW2Rpcj1ydGxdLmhhbmRzb250YWJsZS5pbm5lckJvcmRlcklubGluZVN0YXJ0IHRoIGRpdi5odF9uZXN0aW5nTGV2ZWxzLCBbZGlyPXJ0bF0uaGFuZHNvbnRhYmxlLmlubmVyQm9yZGVySW5saW5lU3RhcnQgfiAuaGFuZHNvbnRhYmxlIHRoIGRpdi5odF9uZXN0aW5nTGV2ZWxzIHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IHVuc2V0O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoIHNwYW4uaHRfbmVzdGluZ0xldmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoIHNwYW4uaHRfbmVzdGluZ0xldmVsX2VtcHR5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG5bZGlyPXJ0bF0uaGFuZHNvbnRhYmxlIHRoIHNwYW4uaHRfbmVzdGluZ0xldmVsX2VtcHR5IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaGFuZHNvbnRhYmxlIHRoIHNwYW4uaHRfbmVzdGluZ0xldmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwi4pSQXCI7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiAzcHg7XG59XG5cbi5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC0ycHg7XG4gIGxlZnQ6IHVuc2V0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24ge1xuICBsZWZ0OiAtMnB4O1xuICByaWdodDogdW5zZXQ7XG59XG5cbi5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24uaHRfbmVzdGluZ0V4cGFuZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIitcIjtcbn1cblxuLmhhbmRzb250YWJsZSB0aCBkaXYuaHRfbmVzdGluZ0J1dHRvbi5odF9uZXN0aW5nQ29sbGFwc2U6OmFmdGVyIHtcbiAgY29udGVudDogXCItXCI7XG59XG5cbi5oYW5kc29udGFibGUuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB0aCBkaXYuaHRfbmVzdGluZ0J1dHRvbixcbi5oYW5kc29udGFibGUuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB+IC5oYW5kc29udGFibGUgdGggZGl2Lmh0X25lc3RpbmdCdXR0b24ge1xuICByaWdodDogMDtcbiAgbGVmdDogdW5zZXQ7XG59XG5cbltkaXI9cnRsXS5oYW5kc29udGFibGUuaW5uZXJCb3JkZXJJbmxpbmVTdGFydCB0aCBkaXYuaHRfbmVzdGluZ0J1dHRvbiwgW2Rpcj1ydGxdLmhhbmRzb250YWJsZS5pbm5lckJvcmRlcklubGluZVN0YXJ0IH4gLmhhbmRzb250YWJsZSB0aCBkaXYuaHRfbmVzdGluZ0J1dHRvbiB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiB1bnNldDtcbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBMaWJyYXJ5XG5cbi8vIEZvbnRzXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0bycpO1xuXG4vLyBWYXJpYWJsZXNcbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5cbi8vIEJvb3RzdHJhcFxuQGltcG9ydCAnfmJvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcCc7XG5AaW1wb3J0ICd+Ym9vdHN0cmFwLXZ1ZS9zcmMvaW5kZXguc2Nzcyc7XG5cbi8vIHZ1ZS1zZWxjdFxuQGltcG9ydCAnfnZ1ZS1zZWxlY3QvZGlzdC92dWUtc2VsZWN0LmNzcyc7XG5cbi8vIEhhbmRzb250YWJsZVxuQGltcG9ydCAnfmhhbmRzb250YWJsZS9kaXN0L2hhbmRzb250YWJsZS5mdWxsLmNzcyc7XG5cbi8vIFZ1ZSBNb250aCBQaWNrZXJcbi8vQGltcG9ydCAnfnZ1ZS1tb250aC1waWNrZXIvZGlzdC9hc3NldHMvY3NzL2luZGV4LmZjZDE5OGIxLmNodW5rLmNzcyc7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEFwcFxuXG5AZnVuY3Rpb24gdW5pY29kZSgkc3RybGlzdCkge1xuICAgICRyZXQ6ICcnO1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkc3RybGlzdCB7XG4gICAgICAgICRyZXQ6ICRyZXQgKyB1bnF1b3RlKHN0ci1pbnNlcnQoJHZhbHVlLCBcIlxcXFxcIiwgMSkpO1xuICAgIH1cbiAgICBAcmV0dXJuIHVucXVvdGUoXCJcXFwiXCIpICsgJHJldCArIHVucXVvdGUoXCJcXFwiXCIpO1xufVxuXG4vLyBmb250LWZhY2VcbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcImZsYWdzLWNvbG9yLXdvcmxkLWZvbnQtZjQxMDkwXCI7XG4gICAgc3JjOiB1cmwoL2ltYWdlcy9GbGFnc0NvbG9yV29ybGQtNlluUk0udHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbi8vIGNvbnRhaW5lclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgLmFwcC13cmFwcGVyIHtcbiAgICAgICAgJi5jb250YWluZXItbGcge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gbmF2XG4uYi1uYXYtaXRlbS10ZXh0LWljb24ge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgc21hbGwge1xuICAgICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgIH1cbn1cblxuLy8gTW9kYWxcbi5tb2RhbC1kaWFsb2cge1xuICAgICYubW9kYWwteGwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuXG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubW9kYWwtbGcge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogOTB2dztcbiAgICAgICAgaGVpZ2h0OiA5MHZoO1xuICAgICAgICBtYXgtd2lkdGg6IDkwdnc7XG4gICAgICAgIG1heC1oZWlnaHQ6IDkwdmg7XG5cbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICAgICYuYnRuLW5vbmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRm9ybVxuLmZvcm0tbmFtZSB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbi5mb3JtLWRlc2NyaXB0aW9uIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbn1cbi5mb3JtLXBheW1lbnQtYmFuay1hY2NvdW50IHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxudWwuZm9ybS1pbnB1dC1kZXNjcmlwdGlvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDFlbTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgIGxpIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXDIwM0JcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBUaXB0YXBcbi5lZGl0b3JfX2NvbnRlbnQge1xuICAgIC5Qcm9zZU1pcnJvciB7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDEwLCAxMCwgMTAsIDAuMSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYmRiZGI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDEyZW0pO1xuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgICAgICAgJltjb250ZW50ZWRpdGFibGU9XCJmYWxzZVwiXSB7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICByZXNpemU6IHVuc2V0O1xuICAgICAgICAgICAgcG9zaXRpb246IHVuc2V0O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBUb0RvXG4gICAgdWxbZGF0YS10eXBlPVwidG9kb19saXN0XCJdIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgIGxpW2RhdGEtdHlwZT1cInRvZG9faXRlbVwiXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgICAgJltkYXRhLWRvbmU9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgICA+IC50b2RvLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICA+IHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPiAudG9kby1jaGVja2JveCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJltkYXRhLWRvbmU9XCJmYWxzZVwiXSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudG9kby1jaGVja2JveCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGRhcms7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjllbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMC45ZW07XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4zcmVtO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNHMgYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRvZG8tY29udGVudCB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICA+IHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPiB1bFtkYXRhLXR5cGU9XCJ0b2RvX2xpc3RcIl0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC41cmVtIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmFkaW9cbiAgICB1bFtkYXRhLXR5cGU9XCJyYWRpb19saXN0XCJdIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgIGxpW2RhdGEtdHlwZT1cInJhZGlvX2l0ZW1cIl0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAgICZbZGF0YS1jaGVja2VkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgPiAucmFkaW8tY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgID4gcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+IC5yYWRpby10b2dnbGUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbZGF0YS1jaGVja2VkPVwiZmFsc2VcIl0ge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhZGlvLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGRhcms7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjllbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMC45ZW07XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4zcmVtO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNHMgYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhZGlvLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgPiBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gdWxbZGF0YS10eXBlPVwicmFkaW9fbGlzdFwiXSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLjVyZW0gMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gaWZyYW1lXG4gICAgLmlmcmFtZSB7XG4gICAgICAgICZfX2VtYmVkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXJlbTtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgICAmX19pbnB1dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRhcmssIDAuMSk7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjNyZW0gMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIGJsb2NrcXVvdGVcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCByZ2JhKDAsMCwwLC4xKTtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwwLDAsLjgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IC44cmVtO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIC8vIGNvZGVcbiAgICAgICAgY29kZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMnJlbSAuNHJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMSk7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgwLDAsMCwuOCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcmUge1xuICAgICAgICBwYWRkaW5nOiAuN3JlbSAxcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYW5ndWFnZSk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IC42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgY29kZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQnV0dG9uXG4uYnRuIHtcbiAgICAmLmJ0bi10aGVtZSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAgICAgJHRoZW1lLFxuICAgICAgICAgICAgJHRoZW1lXG4gICAgICAgICk7XG5cbiAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi5idG4tZmFjZWJvb2sge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I1OTk4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiNTk5OCAhaW1wb3J0YW50O1xuICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMDRkOGEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzMwNGQ4YSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXR3aXR0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTVhY2VlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzU1YWNlZSAhaW1wb3J0YW50O1xuICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNWEyZjQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzM1YTJmNCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLWxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjFiYTQ1ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzIxYmE0NSAhaW1wb3J0YW50O1xuICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNmFiMzkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzE2YWIzOSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLWZhdm9yaXRlIHtcbiAgICAgICAgJi5pc19teV9mYXZvcml0ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbiAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjODIzMzMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNjODIzMzMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1jaXJjbGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgXG4gICAgICAgIHdpZHRoOiAzOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMzhweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxOXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW0gIWltcG9ydGFudDtcbiAgICBcbiAgICAgICAgJi5idG4tc20ge1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiA4cHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5idG4tbWQge1xuICAgICAgICB9XG4gICAgICAgICYuYnRuLWxnIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICYuYnRuLXhsIHtcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDM1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1mYXZvcml0ZSB7XG4gICAgICAgICYuYnRuLWxnIHtcbiAgICAgICAgICAgIC5idG4tZmF2b3JpdGUtY291bnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG5maWVsZHNldC5mb3JtLWdyb3VwIHtcbiAgICAmLmZvcm0tZ3JvdXAtbm93cmFwIHtcbiAgICAgICAgPiAuZm9ybS1yb3cge1xuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnJlcXVpcmVkIHtcbiAgICAgICAgPiBsZWdlbmQuY29sLWZvcm0tbGFiZWwge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVuaWNvZGUoKFwiMjAzQlwiLFwiNUZDNVwiLFwiOTgwOFwiKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZXF1aXJlZCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB1bmljb2RlKChcIjIwM0JcIixcIjVGQzVcIixcIjk4MDhcIikpO1xuICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgfVxufVxuXG4udy1jb3VudHJ5IHtcbiAgICB3aWR0aDogOGVtO1xuICAgIC52c19fc2VsZWN0ZWQge1xuICAgICAgICB3aWR0aDogY2FsYyg4ZW0gLSA0LjVlbSk7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG59XG4udnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gICAgcGFkZGluZy10b3A6IDIuNXB4O1xufVxuXG5cblxuLmRnLWNvbnRhaW5lciB7XG4gICAgLmRnLWNvbnRlbnQtY29udCB7XG4gICAgICAgIC5kZy12aWV3LXdyYXBwZXIge1xuICAgICAgICAgICAgLmRnLWNvbnRlbnQtZm9vdGVyIHtcbiAgICAgICAgICAgICAgICAuZGctYnRuLS1vayB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgJHRoZW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgJHRoZW1lXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRnLWJ0bi0tY2FuY2VsIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAkc2Vjb25kYXJ5XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5kZy1idG4tbG9hZGVyIC5kZy1jaXJjbGUge1xuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRnLWNvbnRhaW5lci0taGFzLWlucHV0IHtcbiAgICAgICAgLmRnLWNvbnRlbnQtY29udCB7XG4gICAgICAgICAgICAuZGctdmlldy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAuZGctZm9ybSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZGctY29udGVudC1mb290ZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgICAgICAuZGctYnRuLS1vayB7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZGctYnRuLS1jYW5jZWwge1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmRnLWJ0bi1sb2FkZXIgLmRnLWNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIHNpemVcbi8vLm13LTEwMCB7XG4vLyAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbi8vfVxuLy8ubWgtMTAwIHtcbi8vICAgIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbi8vfVxuLnZ3LTUwIHtcbiAgICB3aWR0aDogNTB2dyAhaW1wb3J0YW50O1xufVxuLnZoLTUwIHtcbiAgICBoZWlnaHQ6IDUwdmggIWltcG9ydGFudDtcbn1cbi5taW4tdnctNTAge1xuICAgIG1pbi13aWR0aDogNTB2dyAhaW1wb3J0YW50O1xufVxuLm1pbi12aC01MCB7XG4gICAgbWluLWhlaWdodDogNTB2aCAhaW1wb3J0YW50O1xufVxuLnZ3LTc1IHtcbiAgICB3aWR0aDogNzV2dyAhaW1wb3J0YW50O1xufVxuLnZoLTc1IHtcbiAgICBoZWlnaHQ6IDc1dmggIWltcG9ydGFudDtcbn1cbi5taW4tdnctNzUge1xuICAgIG1pbi13aWR0aDogNzV2dyAhaW1wb3J0YW50O1xufVxuLm1pbi12aC03NSB7XG4gICAgbWluLWhlaWdodDogNzV2aCAhaW1wb3J0YW50O1xufVxuLm1pbi1oZWlnaHQtMSB7XG4gICAgbWluLWhlaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuLm1pbi1oZWlnaHQtMiB7XG4gICAgbWluLWhlaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG4ubWluLWhlaWdodC0zIHtcbiAgICBtaW4taGVpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG4ubWluLWhlaWdodC00IHtcbiAgICBtaW4taGVpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cbi5taW4taGVpZ2h0LTQtNSB7XG4gICAgbWluLWhlaWdodDogMnJlbSAhaW1wb3J0YW50O1xufVxuLm1pbi1oZWlnaHQtNSB7XG4gICAgbWluLWhlaWdodDogM2VtICFpbXBvcnRhbnQ7XG59XG4ubWluLWgtNTAge1xuICAgIG1pbi1oZWlnaHQ6IDUwJSAhaW1wb3J0YW50O1xufVxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgIC5taW4taC0jeyRicmVha3BvaW50fS01MCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWluLXZoLSN7JGJyZWFrcG9pbnR9LTUwIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwdmggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWluLXZoLSN7JGJyZWFrcG9pbnR9LTkwIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDkwdmggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAudmgtI3skYnJlYWtwb2ludH0tODAge1xuICAgICAgICAgICAgaGVpZ2h0OiA4MHZoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnZoLSN7JGJyZWFrcG9pbnR9LTkwIHtcbiAgICAgICAgICAgIGhlaWdodDogOTB2aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBtXG4ubS0tMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuLm0tLTIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50O1xufVxuLm0tLTMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDtcbn1cbi5tLS00IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDtcbn1cbi5tLS01IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7XG59XG4ubXgtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cbi5teC0tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cbi5teC0tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xufVxuLm14LS00IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuLm14LS01IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7XG59XG4ubXktLTEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDtcbn1cbi5teS0tMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDtcbn1cbi5teS0tMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50O1xufVxuLm15LS00IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50O1xufVxuLm15LS01IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8vIGxoXG4ubGgtMSB7XG4gICAgbGluZS1oZWlnaHQ6IDEhaW1wb3J0YW50O1xufVxuLmxoLXNtIHtcbiAgICBsaW5lLWhlaWdodDogMS4yNSFpbXBvcnRhbnQ7XG59XG4ubGgtYmFzZSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNSFpbXBvcnRhbnQ7XG59XG4ubGgtbGcge1xuICAgIGxpbmUtaGVpZ2h0OiAyIWltcG9ydGFudDtcbn1cblxuLy8gb3ZlcmZsb3dcbi5vdmVyZmxvdy1hdXRvIHtcbiAgICBvdmVyZmxvdzogYXV0byFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3ctaGlkZGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuIWltcG9ydGFudDtcbn1cbi5vdmVyZmxvdy12aXNpYmxlIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3ctc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsIWltcG9ydGFudDtcbn1cbi5vdmVyZmxvdy14LWF1dG8ge1xuICAgIG92ZXJmbG93LXg6IGF1dG8haW1wb3J0YW50O1xufVxuLm92ZXJmbG93LXgtaGlkZGVuIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW4haW1wb3J0YW50O1xufVxuLm92ZXJmbG93LXgtdmlzaWJsZSB7XG4gICAgb3ZlcmZsb3cteDogdmlzaWJsZSFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3cteC1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbCFpbXBvcnRhbnQ7XG59XG4ub3ZlcmZsb3cteS1hdXRvIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvIWltcG9ydGFudDtcbn1cbi5vdmVyZmxvdy15LWhpZGRlbiB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuIWltcG9ydGFudDtcbn1cbi5vdmVyZmxvdy15LXZpc2libGUge1xuICAgIG92ZXJmbG93LXk6IHZpc2libGUhaW1wb3J0YW50O1xufVxuLm92ZXJmbG93LXktc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGwhaW1wb3J0YW50O1xufVxuXG4vLyBmbGV4XG4uZmxleC1ldmVuIHtcbiAgICBmbGV4OiAxO1xufVxuXG4vLyBmbGFncy1jb2xvci13b3JsZFxuLmZjIHtcbiAgICBmb250LWZhbWlseTogXCJmbGFncy1jb2xvci13b3JsZC1mb250LWY0MTA5MFwiO1xuICAgIGZvbnQtc3R5bGU6IHVuc2V0O1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xufVxuLmZjLWFtYXpvbjo6YWZ0ZXIsXG4uZmMtZWJheTo6YWZ0ZXJcbntcbiAgICBjb250ZW50OiBcInVcIjtcbn1cbi5mYy1hbWF6b25fYXU6OmFmdGVyLFxuLmZjLWViYXlfYXU6OmFmdGVyXG57XG4gICAgY29udGVudDogXCJeXCI7XG59XG4uZmMtYW1hem9uX2NhOjphZnRlcixcbi5mYy1lYmF5X2NhOjphZnRlclxue1xuICAgIGNvbnRlbnQ6IFwiY1wiO1xufVxuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAgICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgICAgICAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgICAgICAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEhhbmRzb250YWJsZVxuLmh0RGF0ZXBpY2tlckhvbGRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSAhaW1wb3J0YW50O1xufVxuLmhhbmRzb250YWJsZSB7XG4gICAgJlttb2RlXSB7XG4gICAgICAgICY6bm90KFttb2RlPVwicmVhZFwiXSkge1xuICAgICAgICAgICAgLmh0RGltbWVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIGNzcyBhbmltYXRpb25cbi5ibGluayB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGJsaW5rIDFzIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZTtcbiAgICBhbmltYXRpb246IGJsaW5rIDFzIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZTtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBibGluayB7XG4gICAgMCUge29wYWNpdHk6IDA7fVxuICAgIDEwMCUge29wYWNpdHk6IDE7fVxufVxuQGtleWZyYW1lcyBibGluayB7XG4gICAgMCUge29wYWNpdHk6IDA7fVxuICAgIDEwMCUge29wYWNpdHk6IDE7fVxufVxuIiwiLy8gQm9keVxuJGJvZHktYmc6ICNmOGZhZmM7XG5cbi8vIFR5cG9ncmFwaHlcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAnTnVuaXRvJywgc2Fucy1zZXJpZjtcbiRmb250LXNpemUtYmFzZTogMC45cmVtO1xuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcblxuLy8gQ29sb3JzXG4vLyRibHVlOiAjMzQ5MGRjO1xuLy8kaW5kaWdvOiAjNjU3NGNkO1xuLy8kcHVycGxlOiAjOTU2MWUyO1xuLy8kcGluazogI2Y2NmQ5Yjtcbi8vJHJlZDogI2UzMzQyZjtcbi8vJG9yYW5nZTogI2Y2OTkzZjtcbi8vJHllbGxvdzogI2ZmZWQ0YTtcbi8vJGdyZWVuOiAjMzhjMTcyO1xuLy8kdGVhbDogIzRkYzBiNTtcbi8vJGN5YW46ICM2Y2IyZWI7XG5cbiRibHVlOiAjMDA3YmZmO1xuJGluZGlnbzogIzY2MTBmMjtcbiRwdXJwbGU6ICM2ZjQyYzE7XG4kcGluazogI2U4M2U4YztcbiRyZWQ6ICNkYzM1NDU7XG4kb3JhbmdlOiAjZmQ3ZTE0O1xuJHllbGxvdzogI2ZmYzEwNztcbiRncmVlbjogIzI4YTc0NTtcbiR0ZWFsOiAjMjBjOTk3O1xuJGN5YW46ICMxN2EyYjg7XG4kd2hpdGU6ICNmZmY7XG4kZ3JheTogIzZjNzU3ZDtcbiRncmF5LWRhcms6ICMzNDNhNDA7XG4kcHJpbWFyeTogIzAwN2JmZjtcbiRzZWNvbmRhcnk6ICM2Yzc1N2Q7XG4kc3VjY2VzczogIzI4YTc0NTtcbiRpbmZvOiAjMTdhMmI4O1xuJHdhcm5pbmc6ICNmZmMxMDc7XG4kZGFuZ2VyOiAjZGMzNTQ1O1xuJGxpZ2h0OiAjZjhmOWZhO1xuJGRhcms6ICMzNDNhNDA7XG5cbiR0aGVtZTogI2ZmYzEwNztcbiIsIi8vIC0tLSBCb290c3RyYXBWdWUgdXRpbGl0eSAvIGhlbHBlciBjbGFzc2VzIC0tLVxuXG4kYnYtdXRpbGl0eS1jbGFzc2VzLWRlZmluZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBNYWtlIHN1cmUgdG8gaW5jbHVkZSB0aGVzZSBzdHlsZSBkZWZpbml0aW9ucyBvbmx5IG9uY2VcbkBpZiAkYnYtdXRpbGl0eS1jbGFzc2VzLWRlZmluZWQgPT0gZmFsc2Uge1xuICAkYnYtdXRpbGl0eS1jbGFzc2VzLWRlZmluZWQ6IHRydWU7XG5cbiAgLy8gTm8gZm9jdXMgb3V0bGluZSBoZWxwZXIgKHVzZSBzcGFyaW5nbHkpXG4gIC5idi1uby1mb2N1cy1yaW5nOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLy8gQ3JlYXRlIGAuYnYtZC08YnA+LWRvd24tbm9uZWAgaGVscGVyIGNsYXNzZXNcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgIC5idi1kLSN7JGJyZWFrcG9pbnR9LWRvd24tbm9uZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNwZWNpYWwgc3R5bGluZyBmb3Igc29tZSBCb290c3RyYXBWdWUgY3VzdG9tIGZvcm0gY29udHJvbHMgdGhhdCBkb1xuLy8gbm90IGhhdmUgYSBuYXRpdmUgSFRNTCBpbnB1dCB0eXBlIHJvb3QgZWxlbWVudCAob3IgdGFiaW5kZXgpXG4vLyBVc2VkIGJ5IEJGb3JtU3BpbmJ1dHRvbiwgQkZvcm1EYXRlcGlja2VyLCBCRm9ybVRpbWVwaWNrZXIsIEJUaW1lLCBCQ2FsZW5kYXJcbi5mb3JtLWNvbnRyb2wge1xuICAvLyBBZGRzIGZvY3VzIHN0eWxpbmcgdG8gdGhlIGZvcm0tY29udHJvbCBjbGFzcyAodmlhIHRoZSBmb2N1cyBjbGFzcylcbiAgLy8gU3BlY2lmaWNhbGx5IHdoZW4gd2UgYXJlIHVzaW5nIG5vbiBmb2N1c2FibGUgZWxlbWVudHMsIG9yIHdoZW4gdHJ1ZSBmb2N1c1xuICAvLyBpcyB3aXRoaW4gdGhlIGAuZm9ybS1jb250cm9sYCBlbGVtZW50LlxuICAvLyBNaW1pY3MgdGhlIGAuZm9ybS1jb250cm9sOmZvY3VzYCBzdHlsaW5nXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJi5pcy12YWxpZCB7XG4gICAgICBib3JkZXItY29sb3I6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsIDAuMjUpO1xuICAgIH1cblxuICAgICYuaXMtaW52YWxpZCB7XG4gICAgICBib3JkZXItY29sb3I6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLCAwLjI1KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJBdmF0YXIgY3VzdG9tIHN0eWxlc1xuXG4uYi1hdmF0YXIge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogJGItYXZhdGFyLXNpemU7XG4gIGhlaWdodDogJGItYXZhdGFyLXNpemU7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCxcbiAgICBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAmLmJ0bixcbiAgJltocmVmXSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG5cbiAgICAuYi1hdmF0YXItaW1nIGltZyB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IGlmKCRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMsIHBvaW50ZXIsIG51bGwpO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmItYXZhdGFyLWltZyBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLmItYXZhdGFyLWN1c3RvbSxcbiAgLmItYXZhdGFyLXRleHQsXG4gIC5iLWF2YXRhci1pbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8vIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2F5YW1mbG93L2I2MDJhYjQzNmFjOWYwNTY2MGQ5YzE1MTkwZjRmZDdiXG4gICAgbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7XG4gIH1cblxuICAuYi1hdmF0YXItdGV4dCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgJltocmVmXSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgPiAuYi1pY29uIHtcbiAgICB3aWR0aDogNjAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuYi1hdmF0YXItaW1nIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICAvLyBUaGlzIGlzIG5vdCBzdXBwb3J0ZWQgaW4gSUUxMSBhbmQgRWRnZSA8MTZcbiAgICAvLyBodHRwczovL2Nhbml1c2UuY29tL29iamVjdC1maXRcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuXG4gIC5iLWF2YXRhci1iYWRnZSB7XG4gICAgLy8gUG9zaXRpb25pbmcgd2lsbCBiZSBoYW5kbGVkIHZpYSBpbmxpbmUgc3R5bGVzXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1pbi1oZWlnaHQ6IDEuNWVtO1xuICAgIG1pbi13aWR0aDogMS41ZW07XG4gICAgcGFkZGluZzogMC4yNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwZW07XG4gICAgZm9udC1zaXplOiA3MCU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi5iLWF2YXRhci1zbSB7XG4gIHdpZHRoOiAkYi1hdmF0YXItc2l6ZS1zbTtcbiAgaGVpZ2h0OiAkYi1hdmF0YXItc2l6ZS1zbTtcblxuICAuYi1hdmF0YXItdGV4dCB7XG4gICAgZm9udC1zaXplOiBjYWxjKCN7JGItYXZhdGFyLXNpemUtc20gKiAkYi1hdmF0YXItZm9udC1zaXplLXNjYWxlfSk7XG4gIH1cblxuICAuYi1hdmF0YXItYmFkZ2Uge1xuICAgIGZvbnQtc2l6ZTogY2FsYygjeyRiLWF2YXRhci1zaXplLXNtICogJGItYXZhdGFyLWJhZGdlLWZvbnQtc2l6ZS1zY2FsZX0pO1xuICB9XG59XG5cbi5iLWF2YXRhci1sZyB7XG4gIHdpZHRoOiAkYi1hdmF0YXItc2l6ZS1sZztcbiAgaGVpZ2h0OiAkYi1hdmF0YXItc2l6ZS1sZztcblxuICAuYi1hdmF0YXItdGV4dCB7XG4gICAgZm9udC1zaXplOiBjYWxjKCN7JGItYXZhdGFyLXNpemUtbGcgKiAkYi1hdmF0YXItZm9udC1zaXplLXNjYWxlfSk7XG4gIH1cblxuICAuYi1hdmF0YXItYmFkZ2Uge1xuICAgIGZvbnQtc2l6ZTogY2FsYygjeyRiLWF2YXRhci1zaXplLWxnICogJGItYXZhdGFyLWJhZGdlLWZvbnQtc2l6ZS1zY2FsZX0pO1xuICB9XG59XG5cbi5iLWF2YXRhci1ncm91cCB7XG4gIC5iLWF2YXRhci1ncm91cC1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAuYi1hdmF0YXIge1xuICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgYSxcbiAgLmJ0biB7XG4gICAgJi5iLWF2YXRhcjpob3Zlcjpub3QoLmRpc2FibGVkKTpub3QoZGlzYWJsZWQpIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG4iLCIvLyAtLS0gQm9vdHN0cmFwVnVlIGN1c3RvbSBTQ1NTIHZhcmlhYmxlcyAtLS1cbi8vXG4vLyBVc2VycyBjYW4gb3ZlcnJpZGUgdGhlc2UgdmFyaWFibGVzIGluIHRoZWlyIGN1c3RvbSBTQ1NTXG4vL1xuLy8gVmFyaWFibGVzIGJlZ2lubmluZyB3aXRoIGAkYnYtYCBhcmUgdXNlZCB0byBlbmFibGUvZGlzYWJsZSBzcGVjaWZpYyBzZWN0aW9uIENTUyBnZW5lcmF0aW9uXG4vLyBWYXJpYWJsZXMgYmVnaW5uaW5nIHdpdGggYCRiLWAgYXJlIHVzZWQgdG8gY29udHJvbCB2YWx1ZXMgd2l0aGluIHRoZSBDU1MgZ2VuZXJhdGlvblxuXG4vLyAtLS0gQ3VzdG9tIGlucHV0cyAoYWRkcyBzaXppbmcgc3VwcG9ydCkgLS0tXG5cbi8vIEluZGljYXRvciBoZWlnaHQgKGFuZCBzb21ldGltZXMgd2lkdGgpXG4kYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS4yNSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAwLjg3NSAhZGVmYXVsdDtcblxuLy8gSW5kaWNhdG9yIGJhY2tncm91bmRcbiRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplLWxnOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemUgIWRlZmF1bHQ7XG4kYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1zbTogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplICFkZWZhdWx0O1xuXG4vLyBHdXR0ZXIgd2lkdGhzXG4kYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGc6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKiAxLjI1ICFkZWZhdWx0O1xuJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLXNtOiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICogMC44NzUgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbSByYWRpbyBzaXplcyAodXNlcyBkZWZhdWx0cyBvZiA1MCUsIHNpbmNlIHJhZGlvcyBhcmUgcm91bmQpXG4kYi1jdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtbGc6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYi1jdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc206ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbSBjaGVja2JveCBzaXplc1xuJGItY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnOiAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRiLWN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1zbTogJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbSBzd2l0Y2ggc2l6ZXNcbiRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtbGc6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnICogMS43NSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtc206ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtICogMS43NSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtbGc6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnIC8gMiAhZGVmYXVsdDtcbiRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc206ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtIC8gMiAhZGVmYXVsdDtcbiRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemUtbGc6IGNhbGMoXG4gICN7JGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGd9IC0gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDR9XG4pICFkZWZhdWx0O1xuJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZS1zbTogY2FsYyhcbiAgI3skYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbX0gLSAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNH1cbikgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbSBmaWxlIHNpemVzXG4kYi1jdXN0b20tZmlsZS1mb250LXNpemUtbGc6ICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1mb250LXNpemUtc206ICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1saW5lLWhlaWdodC1sZzogJGlucHV0LWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQtc206ICRpbnB1dC1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1maWxlLWhlaWdodC1sZzogJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcbiRiLWN1c3RvbS1maWxlLWhlaWdodC1zbTogJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMtbGc6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGItY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cy1zbTogJGlucHV0LWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1wYWRkaW5nLXktbGc6ICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1wYWRkaW5nLXktc206ICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1wYWRkaW5nLXgtbGc6ICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1wYWRkaW5nLXgtc206ICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYi1jdXN0b20tZmlsZS1oZWlnaHQtaW5uZXItbGc6IGNhbGMoXG4gICN7JGItY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQtbGcgKiAxZW19ICsgI3skYi1jdXN0b20tZmlsZS1wYWRkaW5nLXktbGcgKiAyfVxuKSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1maWxlLWhlaWdodC1pbm5lci1zbTogY2FsYyhcbiAgI3skYi1jdXN0b20tZmlsZS1saW5lLWhlaWdodC1zbSAqIDFlbX0gKyAjeyRiLWN1c3RvbS1maWxlLXBhZGRpbmcteS1zbSAqIDJ9XG4pICFkZWZhdWx0O1xuXG4vLyAtLS0gSWNvbnMgLS0tXG5cbiRiLWljb24tdmVydGljYWwtb2Zmc2V0OiAtMC4xNWVtO1xuXG4vLyBBbmltYXRpb25zXG4kYi1pY29uLWFuaW1hdGlvbi1jeWxvbi1kdXJhdGlvbjogMC43NXMgIWRlZmF1bHQ7XG4kYi1pY29uLWFuaW1hdGlvbi1jeWxvbi12ZXJ0aWNhbC1kdXJhdGlvbjogJGItaWNvbi1hbmltYXRpb24tY3lsb24tZHVyYXRpb24gIWRlZmF1bHQ7XG4kYi1pY29uLWFuaW1hdGlvbi1mYWRlLWR1cmF0aW9uOiAwLjc1cyAhZGVmYXVsdDtcbiRiLWljb24tYW5pbWF0aW9uLXNwaW4tZHVyYXRpb246IDJzICFkZWZhdWx0O1xuJGItaWNvbi1hbmltYXRpb24tc3Bpbi1yZXZlcnNlLWR1cmF0aW9uOiAkYi1pY29uLWFuaW1hdGlvbi1zcGluLWR1cmF0aW9uICFkZWZhdWx0O1xuJGItaWNvbi1hbmltYXRpb24tc3Bpbi1wdWxzZS1kdXJhdGlvbjogMXMgIWRlZmF1bHQ7XG4kYi1pY29uLWFuaW1hdGlvbi1zcGluLXJldmVyc2UtcHVsc2UtZHVyYXRpb246ICRiLWljb24tYW5pbWF0aW9uLXNwaW4tcHVsc2UtZHVyYXRpb24gIWRlZmF1bHQ7XG4kYi1pY29uLWFuaW1hdGlvbi10aHJvYi1kdXJhdGlvbjogMC43NXMgIWRlZmF1bHQ7XG5cbi8vIC0tLSBTaWRlYmFyIC0tLVxuXG4kYi1zaWRlYmFyLXdpZHRoOiAzMjBweCAhZGVmYXVsdDtcbiRiLXNpZGViYXItdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcyAhZGVmYXVsdDtcbiRiLXNpZGViYXItemluZGV4OiBjYWxjKCN7JHppbmRleC1maXhlZH0gKyA1KSAhZGVmYXVsdDtcbiRiLXNpZGViYXItaGVhZGVyLWZvbnQtc2l6ZTogMS41cmVtICFkZWZhdWx0O1xuJGItc2lkZWJhci1oZWFkZXItcGFkZGluZy15OiAkbmF2YmFyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRiLXNpZGViYXItaGVhZGVyLXBhZGRpbmcteDogJG5hdmJhci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbi8vIC0tLSBUYWJsZXMgLS0tXG5cbi8vIFRhYmxlIGJ1c3kgc3RhdGVcbiRiLXRhYmxlLWJ1c3ktb3BhY2l0eTogMC41NSAhZGVmYXVsdDtcblxuLy8gVGFibGUgc29ydGluZ1xuJGItdGFibGUtc29ydC1pY29uLWJnLXdpZHRoOiAwLjY1ZW0gIWRlZmF1bHQ7XG4kYi10YWJsZS1zb3J0LWljb24tYmctaGVpZ2h0OiAxZW0gIWRlZmF1bHQ7XG4vLyBTb3J0IGljb25zIGFyZSBzcXVhcmUsIGJ1dCBcInNxdWlzaGVkXCIgaG9yaXpvbnRhbGx5IGJ5IHRoZSBhYm92ZSB2YXJpYWJsZXNcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy1ub3Qtc29ydGVkOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnPjxwYXRoIGZpbGw9J2JsYWNrJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnpNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGItdGFibGUtc29ydC1pY29uLWJnLWFzY2VuZGluZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAxJyBoZWlnaHQ9JzEwMScgdmlldy1ib3g9JzAgMCAxMDEgMTAxJyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSdub25lJz48cGF0aCBmaWxsPSdibGFjaycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLz48cGF0aCBmaWxsPSdibGFjaycgb3BhY2l0eT0nLjMnIGQ9J001MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYi10YWJsZS1zb3J0LWljb24tYmctZGVzY2VuZGluZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAxJyBoZWlnaHQ9JzEwMScgdmlldy1ib3g9JzAgMCAxMDEgMTAxJyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSdub25lJz48cGF0aCBmaWxsPSdibGFjaycgb3BhY2l0eT0nLjMnIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6Jy8+PHBhdGggZmlsbD0nYmxhY2snIGQ9J001MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBJY29ucyB0byB1c2Ugb24gZGFyayB0YWJsZSBvciBkYXJrIGhlYWRlci9mb290ZXIgKGxpZ2h0ZXIgY29sb3IgaWNvbnMpXG4vLyBXZSBzaW1wbHkganVzdCByZXBsYWNlIHRoZSBmaWxsIGNvbG9yICdibGFjaycgd2hpdGUgJ3doaXRlJ1xuJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstbm90LXNvcnRlZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAxJyBoZWlnaHQ9JzEwMScgdmlldy1ib3g9JzAgMCAxMDEgMTAxJyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSdub25lJz48cGF0aCBmaWxsPSd3aGl0ZScgb3BhY2l0eT0nLjMnIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6TTUxIDEwMWwyNS0yMyAyNC0yMkgxbDI1IDIyeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLWFzY2VuZGluZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAxJyBoZWlnaHQ9JzEwMScgdmlldy1ib3g9JzAgMCAxMDEgMTAxJyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSdub25lJz48cGF0aCBmaWxsPSd3aGl0ZScgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLz48cGF0aCBmaWxsPSd3aGl0ZScgb3BhY2l0eT0nLjMnIGQ9J001MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1kZXNjZW5kaW5nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnPjxwYXRoIGZpbGw9J3doaXRlJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLz48cGF0aCBmaWxsPSd3aGl0ZScgZD0nTTUxIDEwMWwyNS0yMyAyNC0yMkgxbDI1IDIyeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuLy8gRmxhZyB0byBlbmFibGUgc3RpY2t5IHRhYmxlIGhlYWRlciBhbmQgY29sdW1uIENTUyBnZW5lcmF0aW9uXG4kYnYtZW5hYmxlLXRhYmxlLXN0aWNreTogdHJ1ZSAhZGVmYXVsdDtcbi8vIERlZmF1bHQgbWF4LWhlaWdodCBmb3IgdGFibGVzIHdpdGggc3RpY2t5IGhlYWRlcnNcbiRiLXRhYmxlLXN0aWNreS1oZWFkZXItbWF4LWhlaWdodDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vIEZsYWcgdG8gZW5hYmxlIHRhYmxlIHN0YWNrZWQgQ1NTIGdlbmVyYXRpb25cbiRidi1lbmFibGUtdGFibGUtc3RhY2tlZDogdHJ1ZSAhZGVmYXVsdDtcbi8vIFRhYmxlIHN0YWNrZWQgZGVmYXVsdHNcbiRiLXRhYmxlLXN0YWNrZWQtaGVhZGluZy13aWR0aDogNDAlICFkZWZhdWx0O1xuJGItdGFibGUtc3RhY2tlZC1nYXA6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vIEJvb3RzdHJhcCB2NC4zIGlzIG1pc3NpbmcgdGhlIFwiYWN0aXZlXCIgdmFyaWFudCBmb3IgZGFyayB0YWJsZXNcbi8vIFdoaWNoIHRyYW5zbGF0ZXMgdG8gYGJnLWFjdGl2ZWAsIGJ1dCBvbmx5IGZvciB0YWJsZXNcbiR0YWJsZS1kYXJrLWFjdGl2ZS1iZzogJHRhYmxlLWRhcmstaG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vIC0tLSBUb2FzdHMgLS0tXG5cbi8vIFRvYXN0ZXIgZGVmYXVsdHNcbiRiLXRvYXN0ZXItemluZGV4OiAxMTAwICFkZWZhdWx0O1xuJGItdG9hc3Rlci1vZmZzZXQtdG9wOiAwLjVyZW0gIWRlZmF1bHQ7XG4kYi10b2FzdGVyLW9mZnNldC1ib3R0b206ICRiLXRvYXN0ZXItb2Zmc2V0LXRvcCAhZGVmYXVsdDtcbiRiLXRvYXN0ZXItb2Zmc2V0LWxlZnQ6ICRiLXRvYXN0ZXItb2Zmc2V0LXRvcCAhZGVmYXVsdDtcbiRiLXRvYXN0ZXItb2Zmc2V0LXJpZ2h0OiAkYi10b2FzdGVyLW9mZnNldC10b3AgIWRlZmF1bHQ7XG5cbi8vIERlZmF1bHQgdG9hc3Qgb3BhY2l0eVxuLy8gVmFsdWUgZnJvbSAwIHRvIDEsIG9yIDAlIHRvIDEwMCVcbi8vIEJvb3RzdHJhcCBkZWZhdWx0IGlzIDAuODUgKGV4dHJhY3RlZCBmcm9tIHRoZSBgJHRvYXN0LWJhY2tncm91bmQtY29sb3JgIHZhbHVlKVxuLy8gQm9vdHN0cmFwIGRvZXMgbm90IGhhdmUgdGhpcyBhcyBhIHZhcmlhYmxlLCBzbyB3ZSBhZGQgaXQgaW4uXG4kYi10b2FzdC1iYWNrZ3JvdW5kLW9wYWNpdHk6IGFscGhhKCR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yKSAhZGVmYXVsdDtcblxuLy8gVG9hc3QgdmFyaWFudCBsZXZlbHMgd3J0IHRoZW1lIGNvbG9yIHZhbHVlXG4kYi10b2FzdC1iZy1sZXZlbDogJGFsZXJ0LWJnLWxldmVsICFkZWZhdWx0O1xuJGItdG9hc3QtYm9yZGVyLWxldmVsOiAkYWxlcnQtYm9yZGVyLWxldmVsICFkZWZhdWx0O1xuJGItdG9hc3QtY29sb3ItbGV2ZWw6ICRhbGVydC1jb2xvci1sZXZlbCAhZGVmYXVsdDtcblxuLy8gLS0tIFRvb2x0aXBzIC0tLVxuXG4vLyBGbGFnIHRvIGVuYWJsZSB0b29sdGlwIHZhcmlhbnQgQ1NTIGdlbmVyYXRpb25cbiRidi1lbmFibGUtdG9vbHRpcC12YXJpYW50czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gVG9vbHRpcCBiYWNrZ3JvdW5kIHZhcmlhbnQgbGV2ZWwgd3J0IHRoZW1lIGNvbG9yIHZhbHVlXG4kYi10b29sdGlwLWJnLWxldmVsOiAwICFkZWZhdWx0O1xuXG4vLyAtLS0gUG9wb3ZlcnMgLS0tXG5cbi8vIEZsYWcgdG8gZW5hYmxlIHBvcG92ZXIgdmFyaWFudCBDU1MgZ2VuZXJhdGlvblxuJGJ2LWVuYWJsZS1wb3BvdmVyLXZhcmlhbnRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBQb3BvdmVyIHZhcmlhbnQgbGV2ZWxzIHdydCB0aGVtZSBjb2xvciB2YWx1ZVxuJGItcG9wb3Zlci1iZy1sZXZlbDogJGFsZXJ0LWJnLWxldmVsICFkZWZhdWx0O1xuJGItcG9wb3Zlci1ib3JkZXItbGV2ZWw6ICRhbGVydC1ib3JkZXItbGV2ZWwgIWRlZmF1bHQ7XG4kYi1wb3BvdmVyLWNvbG9yLWxldmVsOiAkYWxlcnQtY29sb3ItbGV2ZWwgIWRlZmF1bHQ7XG5cbi8vIC0tLSBBdmF0YXIgLS0tXG5cbiRiLWF2YXRhci1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG4kYi1hdmF0YXItc2l6ZS1zbTogMS41cmVtICFkZWZhdWx0O1xuJGItYXZhdGFyLXNpemUtbGc6IDMuNXJlbSAhZGVmYXVsdDtcbiRiLWF2YXRhci1mb250LXNpemUtc2NhbGU6IDAuNCAhZGVmYXVsdDtcbiRiLWF2YXRhci1iYWRnZS1mb250LXNpemUtc2NhbGU6ICRiLWF2YXRhci1mb250LXNpemUtc2NhbGUgKiAwLjcgIWRlZmF1bHQ7XG5cbi8vIC0tLSBTa2VsZXRvbiAtLS1cblxuJGItc2tlbGV0b24tYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKSAhZGVmYXVsdDtcbiRiLXNrZWxldG9uLWxvYWRpbmctY3Vyc29yOiB3YWl0ICFkZWZhdWx0O1xuJGItc2tlbGV0b24tYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjc1cyAhZGVmYXVsdDtcbiRiLXNrZWxldG9uLXRleHQtc3BhY2luZzogbWFwLWdldCgkc3BhY2VycywgMSkgIWRlZmF1bHQ7XG4kYi1za2VsZXRvbi1idG4td2lkdGg6IDc1cHggIWRlZmF1bHQ7XG4iLCIvLyBCQ2FsZW5kYXIgY3VzdG9tIHN0eWxlc1xuXG4uYi1jYWxlbmRhciB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXG4gIC5iLWNhbGVuZGFyLWlubmVyIHtcbiAgICAvLyBQcmV2ZW50IGNhbGVuZGFyIGZyb20gZ29pbmcgYmVsb3cgdGhpcyB3aWR0aFxuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gIH1cblxuICAuYi1jYWxlbmRhci1oZWFkZXIsXG4gIC5iLWNhbGVuZGFyLW5hdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgfVxuXG4gIC5iLWNhbGVuZGFyLW5hdiAuYnRuIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICB9XG5cbiAgb3V0cHV0IHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogODAlO1xuXG4gICAgJi5yZWFkb25seSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIC5iLWNhbGVuZGFyLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICB9XG5cbiAgLmItY2FsZW5kYXItZ3JpZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgLy8gRWFzeSByb3VuZGVkIGNvcm5lcnMgb24gY29udGFpbmVkIGVsZW1lbnRzLFxuICAgIC8vIHNwZWNpZmljYWxseSB0aGUgZm9vdGVyIG9mIHRoZSBjYWxlbmRhciBncmlkXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5yb3cge1xuICAgICAgLy8gUHJldmVudCBncmlkIHJvd3MgZnJvbSB3cmFwcGluZ1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuICB9XG5cbiAgLmItY2FsZW5kYXItZ3JpZC1jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICB9XG5cbiAgLmItY2FsZW5kYXItZ3JpZC1ib2R5IHtcbiAgICAuY29sW2RhdGEtZGF0ZV0ge1xuICAgICAgLy8gV2UgaGFyZCBjb2RlIHRoZSBzaXplcyBpbiBgcHhgIHRvIGZpdFxuICAgICAgLy8gY29ycmVjdGx5IG9uIHNtYWxsIG1vYmlsZSBkZXZpY2Ugc2NyZWVuc1xuICAgICAgLmJ0biB7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbjogM3B4IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDlweCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlIHRvIGdldCBhcm91bmQgQm9vdHN0cmFwIHY0LjQgYnVnXG4gIC8vIHdpdGggaGFuZCBjdXJzb3Igb24gZGlzYWJsZWQgYnV0dG9uc1xuICAvLyBBcyB3ZWxsLCB3aGVuIGEgYnV0dG9uIGlzIHN0aWxsIGZvY3VzYWJsZSwgYnV0IGlzXG4gIC8vIGBhcmlhLWRpc2FibGVkYCB3ZSB3YW50IGBwb2ludGVyLWV2ZW50czogbm9uZWBcbiAgLmJ0biB7XG4gICAgJjpkaXNhYmxlZCxcbiAgICAmLmRpc2FibGVkLFxuICAgICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0ge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIuY2FyZC1pbWctbGVmdCB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLXJpZ2h0IHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIiRidi1kcm9wZG93bi1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gTWFrZSBzdXJlIHRvIGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25seSBvbmNlXG5AaWYgJGJ2LWRyb3Bkb3duLWRlZmluZWQgPT0gZmFsc2Uge1xuICAkYnYtZHJvcGRvd24tZGVmaW5lZDogdHJ1ZTtcblxuICAvLyBIaWRlIHRoZSBjYXJldCBmb3IgYG5vLWNhcmV0YCBzZXR0aW5nXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2Jvb3RzdHJhcC12dWUvYm9vdHN0cmFwLXZ1ZS9pc3N1ZXMvMTQ3M1xuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjM3MjRcbiAgLmRyb3Bkb3duIHtcbiAgICAmOm5vdCguZHJvcGxlZnQpIHtcbiAgICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAmLmRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldDo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2Jvb3RzdHJhcC12dWUvYm9vdHN0cmFwLXZ1ZS9pc3N1ZXMvMjkwOVxuICAgICYuZHJvcGxlZnQge1xuICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICYuZHJvcGRvd24tdG9nZ2xlLW5vLWNhcmV0OjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhpZGUgdGhlIGZvY3VzIHJpbmcgaW50cm9kdWNlZCBieSBCb290c3RyYXRwIHY0LjQgcmVib290XG4gICAgLy8gb24gaXRlbXMgd2l0aCB0YWJpbmRleD1cIi0xXCIsIGFzIHdlIGtub3cgaG93IHVzZXJzIGZlZWxcbiAgICAvLyBhYm91dCBibHVlIHJpbmdzIHdoZXJlIHRoZXkgZG9uJ3QgZXhwZWN0IHRoZW0uXG4gICAgLmRyb3Bkb3duLW1lbnU6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBQcmV2ZW50IGRyb3Bkb3duIGJhY2tncm91bmQgb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gICAgLy8gQWRkZWQgaGVyZSB0byBhZGRyZXNzIDxsaT4gd3JhcHBpbmcgb2YgaXRlbXNcbiAgICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIC5kcm9wZG93bi1pdGVtLFxuICAgICAgICAgIC5kcm9wZG93bi1mb3JtLFxuICAgICAgICAgIC5kcm9wZG93bi10ZXh0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAuZHJvcGRvd24taXRlbSxcbiAgICAgICAgICAuZHJvcGRvd24tZm9ybSxcbiAgICAgICAgICAuZHJvcGRvd24tdGV4dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIkYnYtZHJvcGRvd24tZm9ybS1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuQGlmICRidi1kcm9wZG93bi1mb3JtLWRlZmluZWQgPT0gZmFsc2Uge1xuICAvLyBUaGlzIHRlc3Qgd2lsbCBvbmx5IGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25jZVxuICAkYnYtZHJvcGRvd24tZm9ybS1kZWZpbmVkOiB0cnVlO1xuXG4gIC8vIEN1c3RvbSBzdHlsZXMgZm9yIDxiLWRyb3Bkb3duLWZvcm0+XG4gIC8vIEJhc2VkIG9uIGNsYXNzIGAuZHJvcGRvd24taXRlbWBcbiAgLmItZHJvcGRvd24tZm9ybSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEZyb20gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL3Njc3MvX3JlYm9vdC5zY3NzXG4gICAgICAvLyBtaW1pY2tpbmcgYnV0dG9uOmZvY3VzIHN0eWxpbmcuXG4gICAgICAvLyBXZSBhZGQgaW1wb3J0YW50IGhlcmUgYXMgYW55dGhpbmcgd2l0aCB0YWJpbmRleCBgLTFgIGFuZCBmb2N1c2VkIHdpbGwgbm90XG4gICAgICAvLyBoYXZlIGEgZm9jdXMgcmluZyBkdWUgdG8gcmVib290LnNjc3MgYW5kIGl0cyBgIWltcG9ydGFudGAgb3ZlcnJpZGUuXG4gICAgICAvLyBOZWVkZWQgZm9yIGtleWJvYXJkIG5hdmlnYXRpb24gaGlnaC1saWdodGluZ1xuICAgICAgb3V0bGluZTogMXB4IGRvdHRlZCAhaW1wb3J0YW50O1xuICAgICAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICAgIC8vIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAvLyAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAvLyB9XG4gICAgfVxuICB9XG59XG4iLCIkYnYtZHJvcGRvd24tdGV4dC1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuQGlmICRidi1kcm9wZG93bi10ZXh0LWRlZmluZWQgPT0gZmFsc2Uge1xuICAvLyBUaGlzIHRlc3Qgd2lsbCBvbmx5IGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25jZVxuICAkYnYtZHJvcGRvd24tdGV4dC1kZWZpbmVkOiB0cnVlO1xuXG4gIC8vIEN1c3RvbSBzdHlsZXMgZm9yIDxiLWRyb3Bkb3duLXRleHQ+XG4gIC8vIEJhc2VkIG9uIGNsYXNzIGAuZHJvcGRvd24taXRlbWBcbiAgLmItZHJvcGRvd24tdGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI7XG4gIH1cbn1cbiIsIi8vIEFkZHMgY29udHJvbCBzaXppbmcgdG8gQm9vdHN0cmFwIGN1c3RvbSBjaGVja2JveC9zd2l0Y2ggaW5wdXRzXG5cbi5jdXN0b20tY2hlY2tib3guYi1jdXN0b20tY29udHJvbC1sZyxcbi5pbnB1dC1ncm91cC1sZyAuY3VzdG9tLWNoZWNrYm94IHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1sZyArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGcpIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1sZyArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiLWN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1sZyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGcpIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1sZyArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZztcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplLWxnO1xuICB9XG59XG5cbi5jdXN0b20tY2hlY2tib3guYi1jdXN0b20tY29udHJvbC1zbSxcbi5pbnB1dC1ncm91cC1zbSAuY3VzdG9tLWNoZWNrYm94IHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiLWN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1zbSk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbSArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplLXNtO1xuICB9XG59XG5cbi5jdXN0b20tc3dpdGNoLmItY3VzdG9tLWNvbnRyb2wtbGcsXG4uaW5wdXQtZ3JvdXAtbGcgLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtbGcgKyAkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGc7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6ICgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGcpIC8gMjtcbiAgICAgIGhlaWdodDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgICBsZWZ0OiAtKCRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtbGcgKyAkYi1jdXN0b20tY29udHJvbC1ndXR0ZXItbGcpO1xuICAgICAgd2lkdGg6ICRiLWN1c3RvbS1zd2l0Y2gtd2lkdGgtbGc7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogY2FsYyhcbiAgICAgICAgI3soKCRmb250LXNpemUtbGcgKiAkbGluZS1oZWlnaHQtbGcgLSAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZykgLyAyKX0gKyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICpcbiAgICAgICAgICAyfVxuICAgICAgKTtcbiAgICAgIGxlZnQ6IGNhbGMoXG4gICAgICAgICN7LSAoJGItY3VzdG9tLXN3aXRjaC13aWR0aC1sZyArICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1sZyl9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqXG4gICAgICAgICAgMn1cbiAgICAgICk7XG4gICAgICB3aWR0aDogJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZS1sZztcbiAgICAgIGhlaWdodDogJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZS1sZztcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtbGc7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplLWxnO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGItY3VzdG9tLXN3aXRjaC13aWR0aC1sZyAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKTtcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1zd2l0Y2guYi1jdXN0b20tY29udHJvbC1zbSxcbi5pbnB1dC1ncm91cC1zbSAuY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGItY3VzdG9tLXN3aXRjaC13aWR0aC1zbSArICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbTtcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogKCRmb250LXNpemUtc20gKiAkbGluZS1oZWlnaHQtc20gLSAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSkgLyAyO1xuICAgICAgbGVmdDogLSgkYi1jdXN0b20tc3dpdGNoLXdpZHRoLXNtICsgJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLXNtKTtcbiAgICAgIHdpZHRoOiAkYi1jdXN0b20tc3dpdGNoLXdpZHRoLXNtO1xuICAgICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc207XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiBjYWxjKFxuICAgICAgICAjeygoJGZvbnQtc2l6ZS1zbSAqICRsaW5lLWhlaWdodC1zbSAtICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtKSAvIDIpfSArICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKlxuICAgICAgICAgIDJ9XG4gICAgICApO1xuICAgICAgbGVmdDogY2FsYyhcbiAgICAgICAgI3stICgkYi1jdXN0b20tc3dpdGNoLXdpZHRoLXNtICsgJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLXNtKX0gKyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICpcbiAgICAgICAgICAyfVxuICAgICAgKTtcbiAgICAgIHdpZHRoOiAkYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplLXNtO1xuICAgICAgaGVpZ2h0OiAkYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplLXNtO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1zbTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemUtc207XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkYi1jdXN0b20tc3dpdGNoLXdpZHRoLXNtIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pO1xuICAgIH1cbiAgfVxufVxuIiwiJGJ2LWlucHV0LWdyb3VwLWRyb3Bkb3duLXBhdGNoZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBNYWtlIHN1cmUgdG8gaW5jbHVkZSB0aGVzZSBzdHlsZSBkZWZpbml0aW9ucyBvbmx5IG9uY2VcbkBpZiAkYnYtaW5wdXQtZ3JvdXAtZHJvcGRvd24tcGF0Y2hlZCA9PSBmYWxzZSB7XG4gICRidi1pbnB1dC1ncm91cC1kcm9wZG93bi1wYXRjaGVkOiB0cnVlO1xuXG4gIC8vIFdvcmthcm91bmQgZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzE1NjBcbiAgLy8gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL2Jvb3RzdHJhcC12dWUvYm9vdHN0cmFwLXZ1ZS9pc3N1ZXMvMjExNCAqL1xuICAvLyBCYXNlZCBvbjogYH5ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2Nzc2BcbiAgLmlucHV0LWdyb3VwIHtcbiAgICA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bi1ncm91cCxcbiAgICA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4tZ3JvdXAsXG4gICAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICAgID4gLmJ0biB7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLWdyb3VwLFxuICAgID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLWdyb3VwLFxuICAgID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgID4gLmJ0biB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIkYnYtZm9ybS1idG4tbGFiZWwtY29udHJvbC1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gTWFrZSBzdXJlIHRvIGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25seSBvbmNlXG5AaWYgJGJ2LWZvcm0tYnRuLWxhYmVsLWNvbnRyb2wtZGVmaW5lZCA9PSBmYWxzZSB7XG4gICRidi1mb3JtLWJ0bi1sYWJlbC1jb250cm9sLWRlZmluZWQ6IHRydWU7XG5cbiAgLy8gQ3VzdG9tIEJWRm9ybUJ0bkxhYmVsQ29udHJvbCBzdHlsaW5nXG4gIC8vIEN1cnJlbnRseSB1c2VkIGJ5IEJGb3JtVGltZXBpY2tlciBhbmQgQkZvcm1EYXRlcGlja2VyXG4gIC8vIERvZXMgbm90IGFwcGx5IHRvIGJ1dHRvbi1vbmx5IHN0eWxpbmdcbiAgLmItZm9ybS1idG4tbGFiZWwtY29udHJvbC5mb3JtLWNvbnRyb2wge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLy8gUmVtb3ZlIGJhY2tncm91bmQgdmFsaWRhdGlvbiBpbWFnZXMgYW5kIHBhZGRpbmcgZnJvbVxuICAgIC8vIG1haW4gd3JhcHBlciBhcyB0aGV5IHdpbGwgYmUgcHJlc2VudCBpbiB0aGUgaW5uZXIgbGFiZWwgZWxlbWVudFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cbiAgICBAYXQtcm9vdCB7XG4gICAgICAvLyBIYW5kbGUgYC5pbnB1dC1ncm91cGAgcGFkZGluZyBvdmVycmlkZXNcbiAgICAgIC5pbnB1dC1ncm91cCAmIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAYXQtcm9vdCB7XG4gICAgICAvLyBQcmV2ZW50IHRoZSBidXR0b24vbGFiZWwgZnJvbSByZXZlcnNpbmcgb3JkZXIgb24gaW4gaG9yaXpvbnRhbCBSVEwgbW9kZVxuICAgICAgW2Rpcj1cInJ0bFwiXSAmLFxuICAgICAgJltkaXI9XCJydGxcIl0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgPiBsYWJlbCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5idG4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXZhbGlkID4gLmJ0biB7XG4gICAgICBjb2xvcjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I7XG4gICAgfVxuXG4gICAgJi5pcy1pbnZhbGlkID4gLmJ0biB7XG4gICAgICBjb2xvcjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjtcbiAgICB9XG5cbiAgICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICB9XG5cbiAgICA+IC5mb3JtLWNvbnRyb2wge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgLy8gU2V0IGEgbWluaW11bSBoZWlnaHQsIGFzIHdlIGhhdmUgaGVpZ2h0IHNldCB0byBgYXV0b2BcbiAgICAgIC8vICh0byBhbGxvdyB0aGUgY29udGVudCB0byB3cmFwLCBpZiBuZWVkZWQpXG4gICAgICAvLyBXZSBzdWJ0cmFjdCBvZmYgdGhlIGJvcmRlciwgYXMgd2UgaGF2ZSBib3JkZXIgc2V0IHRvIGAwYFxuICAgICAgbWluLWhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHR9IC0gI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICBAaWYgJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodC1zbX0gLSAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSk7XG4gICAgICB9XG5cbiAgICAgICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICAgICAgbWluLWhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHQtbGd9IC0gI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pO1xuICAgICAgfVxuXG4gICAgICBAYXQtcm9vdCB7XG4gICAgICAgIC8vIEhhbmRsZSBpbnB1dCBncm91cCBzaXppbmdcbiAgICAgICAgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLXNtICYge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoI3skaW5wdXQtaGVpZ2h0LXNtfSAtICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogJGlucHV0LXBhZGRpbmcteS1zbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteS1zbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC1sZyAmIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodC1sZ30gLSAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSk7XG4gICAgICAgICAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXktbGc7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206ICRpbnB1dC1wYWRkaW5nLXktbGc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IHN0eWxpbmdcbiAgICAmW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdLFxuICAgICZbYXJpYS1yZWFkb25seT1cInRydWVcIl0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICA+IGxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiBvbmx5IG1vZGUgbWVudSBwYWRkaW5nIG92ZXJyaWRlc1xuICAuYi1mb3JtLWJ0bi1sYWJlbC1jb250cm9sLmJ0bi1ncm91cCB7XG4gICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG4iLCIvLyBBZGRzIGluIHNpemVzIGZvciBjdXN0b20tZmlsZVxuXG4vLyBQcmV2ZW50IGZpbGUgbmFtZXMgZnJvbSBvdmVyZmxvd2luZyB0aGUgZmlsZSBpbnB1dFxuLy8gVGhlc2Ugc3R5bGVzIGNhbiBiZSByZW1vdmVkIHdoZW4gdGhlIHJlbGF0ZWQgQm9vdHN0cmFwIGJ1ZyBnZXRzIGZpeGVkOlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8zMTU3N1xuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4uYi1jdXN0b20tY29udHJvbC1sZyxcbi5pbnB1dC1ncm91cC1sZyB7XG4gICYuY3VzdG9tLWZpbGUsXG4gIC5jdXN0b20tZmlsZS1pbnB1dCxcbiAgLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBmb250LXNpemU6ICRiLWN1c3RvbS1maWxlLWZvbnQtc2l6ZS1sZztcbiAgICBoZWlnaHQ6ICRiLWN1c3RvbS1maWxlLWhlaWdodC1sZztcbiAgfVxuXG4gIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgLmN1c3RvbS1maWxlLWxhYmVsOmFmdGVyIHtcbiAgICBwYWRkaW5nOiAkYi1jdXN0b20tZmlsZS1wYWRkaW5nLXktbGcgJGItY3VzdG9tLWZpbGUtcGFkZGluZy14LWxnO1xuICAgIGxpbmUtaGVpZ2h0OiAkYi1jdXN0b20tZmlsZS1saW5lLWhlaWdodC1sZztcbiAgfVxuXG4gIC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYi1jdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGhlaWdodDogJGItY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyLWxnO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRiLWN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMtbGcgJGItY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cy1sZyAwKTtcbiAgICB9XG4gIH1cbn1cblxuLmItY3VzdG9tLWNvbnRyb2wtc20sXG4uaW5wdXQtZ3JvdXAtc20ge1xuICAmLmN1c3RvbS1maWxlLFxuICAuY3VzdG9tLWZpbGUtaW5wdXQsXG4gIC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAkYi1jdXN0b20tZmlsZS1mb250LXNpemUtc207XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tZmlsZS1oZWlnaHQtc207XG4gIH1cblxuICAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gIC5jdXN0b20tZmlsZS1sYWJlbDphZnRlciB7XG4gICAgcGFkZGluZzogJGItY3VzdG9tLWZpbGUtcGFkZGluZy15LXNtICRiLWN1c3RvbS1maWxlLXBhZGRpbmcteC1zbTtcbiAgICBsaW5lLWhlaWdodDogJGItY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQtc207XG4gIH1cblxuICAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGItY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBoZWlnaHQ6ICRiLWN1c3RvbS1maWxlLWhlaWdodC1pbm5lci1zbTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkYi1jdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzLXNtICRiLWN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMtc20gMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBUZW1wb3JhcnkgZml4IGZvciBjc3NuYW5vIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL2Nzc25hbm8vY3NzbmFuby9pc3N1ZXMvNzEyXG4vLyBCeSBtb3ZpbmcgY2VudGVyIHRvIGxhc3QgdmFsdWUgaW4gYGJhY2tncm91bmQtcG9zaXRpb25gIHByb3BlcnR5XG4vLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzI1OTlcbkBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOmludmFsaWQsXG4gICAgLndhcy12YWxpZGF0ZWQgJjp2YWxpZCxcbiAgICAmLmlzLWludmFsaWQsXG4gICAgJi5pcy12YWxpZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCb290c3RyYXAgdjQueCBkb2VzIG5vdCBoYXZlIHNwZWNpYWwgc3R5bGluZyBmb3IgY29sb3IgaW5wdXRcbi8vIFNvIHdlIGRlZmluZSBzb21lIGJhc2ljIHN0eWxlcyB0byBjb21wZW5zYXRlXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAvLyBXZSB1c2UgdGhlIHNtYWxsZXIgcGFkZGluZyB0byBtYWtlIHRoZSBjb2xvciBibG9jayBsYXJnZXJcbiAgcGFkZGluZzogKCRpbnB1dC1wYWRkaW5nLXktc20gLyAyKSAoJGlucHV0LXBhZGRpbmcteC1zbSAvIDIpO1xufVxuXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0uZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1zbSxcbi5pbnB1dC1ncm91cC1zbSBpbnB1dFt0eXBlPVwiY29sb3JcIl0uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICAvLyBXZSB1c2UgdGhlIHNtYWxsZXIgcGFkZGluZyB0byBtYWtlIHRoZSBjb2xvciBibG9jayBsYXJnZXJcbiAgcGFkZGluZzogKCRpbnB1dC1wYWRkaW5nLXktc20gLyAyKSAoJGlucHV0LXBhZGRpbmcteC1zbSAvIDIpO1xufVxuXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0uZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1sZyxcbi5pbnB1dC1ncm91cC1sZyBpbnB1dFt0eXBlPVwiY29sb3JcIl0uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAoJGlucHV0LXBhZGRpbmcteS1zbSAvIDIpICgkaW5wdXQtcGFkZGluZy14LXNtIC8gMik7XG59XG5cbmlucHV0W3R5cGU9XCJjb2xvclwiXS5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQge1xuICAvLyBEaXNhYmxlZCBzdHlsaW5nIG5lZWRzIHRvIGJlIGEgYml0IGRpZmZlcmVudCB0aGFuIHJlZ3VsYXIgaW5wdXRzXG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTUwMDtcbiAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xufVxuXG4vLyAtLS0gQmFzZSBgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZWAgc3R5bGluZyAobm8gUFIgeWV0IG9uIEJvb3RzdHJhcCB2NCkgLS0tXG4uaW5wdXQtZ3JvdXAge1xuICA+IC5jdXN0b20tcmFuZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLXJhbmdlLFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1yYW5nZSxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgICsgLmN1c3RvbS1yYW5nZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgPiAuY3VzdG9tLXJhbmdlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgPiAuY3VzdG9tLXJhbmdlIHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgPiAuY3VzdG9tLXJhbmdlIHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcblxuICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuICAgIC8vIEJvb3RzdHJhcCB2NC4zLjIgaGFzIGRlcHJlY2F0ZWQgdGhpcyBtaXhpblxuICAgIC8vIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygpO1xuICAgIC8vIFNvIHdlIG1hbnVhbGx5IGFkZCBpdHMgY29udGVudCBoZXJlXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yOyAvLyBvbmx5IG5lZWRlZCBmb3IgZmFsbGJhY2sgdG8gdGV4dCBpbnB1dFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tcmFuZ2Uge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6IDAgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tcmFuZ2Uge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6IDAgJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi8vIC0tLSA8Yi1mb3JtLWlucHV0PjogY3VzdG9tLXJhbmdlIHZhbGlkYXRpb24gc3R5bGluZyAtIHZhbGlkIChubyBQUiB5ZXQgZm9yIEJvb3RzdHJhcCB2NC4yKSAtLS1cbi8vIE1peGluIGZvciBnZW5lcmF0aW5nIGAuaW5wdXQtZ3JvdXAgLmN1c3RvbS1yYW5nZWAgdmFsaWRhdGlvbiBzdHlsaW5nXG5AbWl4aW4gYnYtY3VzdG9tLXJhbmdlLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IpIHtcbiAgLmlucHV0LWdyb3VwIC5jdXN0b20tcmFuZ2Uge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgMC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1yYW5nZSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gYWZmZWN0XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkYm9keS1iZywgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCBsaWdodGVuKCRjb2xvciwgMzUlKTtcbiAgICAgICAgfVxuICAgICAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGJvZHktYmcsIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggbGlnaHRlbigkY29sb3IsIDM1JSk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LW1zLXRodW1iIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGJvZHktYmcsIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggbGlnaHRlbigkY29sb3IsIDM1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAzNSUpO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgMC4zNSk7XG4gICAgICB9XG5cbiAgICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAzNSUpO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAwLjM1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgJjo6LW1zLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMzUlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Oi1tcy10cmFjay1sb3dlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAwLjM1KTtcbiAgICAgIH1cbiAgICAgICY6Oi1tcy10cmFjay11cHBlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAwLjM1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgYnYtY3VzdG9tLXJhbmdlLXZhbGlkYXRpb24tc3RhdGUoXCJ2YWxpZFwiLCAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcik7XG5AaW5jbHVkZSBidi1jdXN0b20tcmFuZ2UtdmFsaWRhdGlvbi1zdGF0ZShcImludmFsaWRcIiwgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcik7XG4iLCIvLyBBZGRzIGNvbnRyb2wgc2l6aW5nIHRvIEJvb3RzdHJhcCBjdXN0b20gcmFkaW8gaW5wdXRzXG5cbi5jdXN0b20tcmFkaW8uYi1jdXN0b20tY29udHJvbC1sZyxcbi5pbnB1dC1ncm91cC1sZyAuY3VzdG9tLXJhZGlvIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1sZyArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGcpIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1sZyArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZztcbiAgICBib3JkZXItcmFkaXVzOiAkYi1jdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtbGc7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICB0b3A6ICgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnIC0gJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGcpIC8gMjtcbiAgICBsZWZ0OiAtKCRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1sZyArICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLWxnKTtcbiAgICB3aWR0aDogJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc7XG4gICAgaGVpZ2h0OiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZztcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1sZ307XG4gIH1cbn1cblxuLmN1c3RvbS1yYWRpby5iLWN1c3RvbS1jb250cm9sLXNtLFxuLmlucHV0LWdyb3VwLXNtIC5jdXN0b20tcmFkaW8ge1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc207XG4gIHBhZGRpbmctbGVmdDogJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLXNtICsgJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc207XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIHRvcDogKCRmb250LXNpemUtc20gKiAkbGluZS1oZWlnaHQtc20gLSAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSkgLyAyO1xuICAgIGxlZnQ6IC0oJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLXNtICsgJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pO1xuICAgIHdpZHRoOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICBoZWlnaHQ6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtO1xuICAgIGJvcmRlci1yYWRpdXM6ICRiLWN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1zbTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICAgIHRvcDogKCRmb250LXNpemUtc20gKiAkbGluZS1oZWlnaHQtc20gLSAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSkgLyAyO1xuICAgIGxlZnQ6IC0oJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLXNtICsgJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtc20pO1xuICAgIHdpZHRoOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTtcbiAgICBoZWlnaHQ6ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtO1xuICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgLyAjeyRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplLXNtfTtcbiAgfVxufVxuIiwiLmItcmF0aW5nIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYuZC1pbmxpbmUtZmxleCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuYi1yYXRpbmctc3RhcixcbiAgLmItcmF0aW5nLXZhbHVlIHtcbiAgICBwYWRkaW5nOiAwIDAuMjVlbTtcbiAgfVxuXG4gIC5iLXJhdGluZy12YWx1ZSB7XG4gICAgLy8gS2VlcCB0aGUgc3RhcnMgZnJvbSBtb3Zpbmcgd2hlbiB2YWx1ZSBjaGFuZ2VzICh1c3VhbGx5KVxuICAgIG1pbi13aWR0aDogMi41ZW07XG4gIH1cblxuICAuYi1yYXRpbmctc3RhciB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC5iLXJhdGluZy1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cblxuICAmOm5vdCguZGlzYWJsZWQpOm5vdCgucmVhZG9ubHkpIHtcbiAgICAuYi1yYXRpbmctc3RhciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLy8gWm9vbSBmb2N1c2VkIG9yIGhvdmVyZWQgaWNvbnNcbiAgICAmOmZvY3VzOm5vdCg6aG92ZXIpIC5iLXJhdGluZy1zdGFyLmZvY3VzZWQsXG4gICAgLmItcmF0aW5nLXN0YXI6aG92ZXIge1xuICAgICAgLmItcmF0aW5nLWljb24ge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRmxpcCB0aGUgaGFsZiBpY29uIGlmIFJUTCBtb2RlXG4gIC8vIFdlIHRyYW5zZm9ybSB0aGUgb3V0ZXIgc3RhciB3cmFwcGVyIHNvIHRoYXQgd2UgZG8gbm90XG4gIC8vIGludGVyZmVyZSB3aXRoIHRoZSBob3Zlci9mb2N1cyB0cmFuc2Zvcm0gYWJvdmVcbiAgJltkaXI9XCJydGxcIl0ge1xuICAgIC5iLXJhdGluZy1zdGFyLWhhbGYge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIuYi1mb3JtLXNwaW5idXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vIFF1aWNrIHdheSB0byBnZXQgZW5kIGJ1dHRvbnMgcm91bmRlZCBvbiBvdXRzaWRlIGVkZ2VzXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIEhpZGUgdmFsaWRhdGlvbiBpY29uLCBhcyB0aGVyZSBpcyBubyByb29tIGZvciBpdFxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBhdC1yb290IHtcbiAgICAvLyBQcmV2ZW50IHRoZSBidXR0b25zIGZyb20gcmV2ZXJzaW5nIG9yZGVyIG9uIGluIGhvcml6b250YWwgUlRMIG1vZGVcbiAgICBbZGlyPVwicnRsXCJdICY6bm90KC5mbGV4LWNvbHVtbiksXG4gICAgJltkaXI9XCJydGxcIl06bm90KC5mbGV4LWNvbHVtbikge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cbiAgfVxuXG4gIG91dHB1dCB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAuMjVyZW07XG5cbiAgICA+IGRpdixcbiAgICA+IGJkaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1pbi13aWR0aDogMi4yNWVtO1xuICAgICAgLy8gV2Ugc2V0IGEgaGVpZ2h0IHRvIGVuc3VyZSBhbiBlbXB0eSB2YWx1ZSBpc24ndCBjb2xsYXBzZWRcbiAgICAgIGhlaWdodDogMWVtICogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gICYuZmxleC1jb2x1bW4ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcblxuICAgIG91dHB1dCB7XG4gICAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMDtcbiAgICB9XG4gIH1cblxuICAmOm5vdCguZC1pbmxpbmUtZmxleCk6bm90KC5mbGV4LWNvbHVtbikge1xuICAgIG91dHB1dDoge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi5kLWlubGluZS1mbGV4Om5vdCguZmxleC1jb2x1bW4pIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5idG4ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSA+IGRpdiA+IC5iLWljb24ge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmLnJlYWRvbmx5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAmLmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuIiwiLmItZm9ybS10YWdzIHtcbiAgLmItZm9ybS10YWdzLWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtO1xuXG4gICAgLmItZnJvbS10YWdzLWZpZWxkLFxuICAgIC5iLWZvcm0tdGFnIHtcbiAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmLmlzLXZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciwgMC4yNSk7XG4gICAgfVxuXG4gICAgJi5pcy1pbnZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsIDAuMjUpO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgfVxufVxuXG4uYi1mb3JtLXRhZyB7XG4gIC8vIE92ZXJyaWRlIGRlZmF1bHQgYmFkZ2Ugc2V0dGluZ3NcbiAgLy8gRHVlIHRvIHVzaW5nIHRleHQtdHJ1bmNhdGUgb24gdGhlIGlubmVyIGNvbnRlbnRcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcblxuICAmLmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICB9XG5cbiAgLy8gT3ZlcnJpZGUgZGVmYXVsdCBjbG9zZSBidXR0b24gc2V0dGluZ3NcbiAgPiBidXR0b24uYi1mb3JtLXRhZy1yZW1vdmUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMTI1JTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLXNtIC5iLWZvcm0tdGFnIHtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyAuYi1mb3JtLXRhZyB7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG4iLCIubWVkaWEtYXNpZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbi5tZWRpYS1hc2lkZS1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4iLCIvLyBOZWVkZWQgdG8gYWxsb3cgVnVlIHRyYW5zaXRpb24gc3lzdGVtIHRvIHdvcmsgd2l0aCBCb290c3RyYXAgdjQgLm1vZGFsLWJhY2tkcm9wXG4vLyBhcyBtb2RhbCBvcGFjaXR5IGlzIDEgYnkgZGVmYXVsdFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7XG59XG4iLCIvLyA8cGFnaW5hdGlvbj4gYW5kIDxwYWdpbmF0aW9uLW5hdj4gcmVxdWlyZSB0aGUgaGVscGVyIHV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCBcIi4uLy4uL3V0aWxpdGllc1wiO1xuXG4kYnYtcGFnaW5hdGlvbi1jbGFzc2VzLWRlZmluZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBNYWtlIHN1cmUgdG8gaW5jbHVkZSB0aGVzZSBzdHlsZSBkZWZpbml0aW9ucyBvbmx5IG9uY2VcbkBpZiAkYnYtcGFnaW5hdGlvbi1jbGFzc2VzLWRlZmluZWQgPT0gZmFsc2Uge1xuICAkYnYtcGFnaW5hdGlvbi1jbGFzc2VzLWRlZmluZWQ6IHRydWU7XG5cbiAgLy8gUGFnaW5hdGlvbiBwaWxsIHN0eWxlXG4gIC5iLXBhZ2luYXRpb24tcGlsbHMge1xuICAgIC5wYWdlLWl0ZW0ge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBTb21lIG92ZXJyaWRlcyB0byBtYWtlIHBvcG92ZXIgdHJhbnNpdGlvbnMgd29yayB3aXRoIFZ1ZSBgPHRyYW5zaXRpb24+YFxuLnBvcG92ZXIuYi1wb3BvdmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIC8vIE5lZWRlZCBkdWUgdG8gQm9vdHN0cmFwIHY0LjQgcmVib290LmNzcyBjaGFuZ2VzXG4gIG91dGxpbmU6IDA7XG5cbiAgJi5mYWRlOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGlmICRidi1lbmFibGUtcG9wb3Zlci12YXJpYW50cyB7XG4gIEBlYWNoICR2YXJpYW50LCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLmItcG9wb3Zlci0jeyR2YXJpYW50fSB7XG4gICAgICAkcG8tYmctY29sb3I6IHRoZW1lLWNvbG9yLWxldmVsKCR2YXJpYW50LCAkYi1wb3BvdmVyLWJnLWxldmVsKTtcbiAgICAgICRwby1ib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yLWxldmVsKCR2YXJpYW50LCAkYi1wb3BvdmVyLWJvcmRlci1sZXZlbCk7XG4gICAgICAkcG8tY29sb3I6IHRoZW1lLWNvbG9yLWxldmVsKCR2YXJpYW50LCAkYi1wb3BvdmVyLWNvbG9yLWxldmVsKTtcbiAgICAgICRwby1oZWFkZXItYmc6IGRhcmtlbigkcG8tYmctY29sb3IsIDMlKTtcbiAgICAgICRwby1oZWFkZXItY29sb3I6IGNvbG9yLXlpcSgkcG8taGVhZGVyLWJnKTtcbiAgICAgICRwby1hcnJvdy1jb2xvcjogJHBvLWJnLWNvbG9yO1xuICAgICAgJHBvLWFycm93LWNvbG9yLWJvdHRvbTogJHBvLWhlYWRlci1iZztcbiAgICAgICRwby1hcnJvdy1vdXRlci1jb2xvcjogZmFkZS1pbigkcG8tYm9yZGVyLWNvbG9yLCAwLjA1KTtcblxuICAgICAgJi5wb3BvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBvLWJnLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRwby1ib3JkZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuYnMtcG9wb3Zlci10b3Age1xuICAgICAgICA+IC5hcnJvdyB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwby1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG8tYXJyb3ctY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtcG9wb3Zlci1yaWdodCB7XG4gICAgICAgID4gLmFycm93IHtcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG8tYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG8tYXJyb3ctY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtcG9wb3Zlci1ib3R0b20ge1xuICAgICAgICA+IC5hcnJvdyB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwby1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAvLyBVc2UgdGhlIGhlYWRlciBiZyBjb2xvclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvLWFycm93LWNvbG9yLWJvdHRvbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvLWhlYWRlci1iZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXBvcG92ZXItbGVmdCB7XG4gICAgICAgID4gLmFycm93IHtcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwby1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvLWFycm93LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXBvcG92ZXItYXV0byB7XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgICAgICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucG9wb3Zlci1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJHBvLWhlYWRlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBvLWhlYWRlci1iZztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogZGFya2VuKCRwby1oZWFkZXItYmcsIDUlKTtcbiAgICAgIH1cblxuICAgICAgLnBvcG92ZXItYm9keSB7XG4gICAgICAgIGNvbG9yOiAkcG8tY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYi1zaWRlYmFyLW91dGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB6LWluZGV4OiAkYi1zaWRlYmFyLXppbmRleDtcbn1cblxuLmItc2lkZWJhci1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5iLXNpZGViYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6ICRiLXNpZGViYXItd2lkdGg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cbiAgJi5zbGlkZSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRiLXNpZGViYXItdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dDtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCguYi1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bztcblxuICAgICYuc2xpZGU6bm90KC5zaG93KSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIH1cblxuICAgID4gLmItc2lkZWJhci1oZWFkZXIgLmNsb3NlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYuYi1zaWRlYmFyLXJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgJi5zbGlkZTpub3QoLnNob3cpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB9XG5cbiAgICA+IC5iLXNpZGViYXItaGVhZGVyIC5jbG9zZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgPiAuYi1zaWRlYmFyLWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAkYi1zaWRlYmFyLWhlYWRlci1mb250LXNpemU7XG4gICAgcGFkZGluZzogJGItc2lkZWJhci1oZWFkZXItcGFkZGluZy15ICRiLXNpZGViYXItaGVhZGVyLXBhZGRpbmcteDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAYXQtcm9vdCB7XG4gICAgICAvLyBLZWVwIHRoZSBidXR0b25zIG9uIHRoZSBjb3JyZWN0IGVuZCB3aGVuIGluIFJUTCBtb2RlXG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNsb3NlIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZm9udC1zaXplOiAkYi1zaWRlYmFyLWhlYWRlci1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgPiAuYi1zaWRlYmFyLWJvZHkge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gID4gLmItc2lkZWJhci1mb290ZXIge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgfVxufVxuIiwiLy8gV3JhcHBlclxuLmItc2tlbGV0b24td3JhcHBlciB7XG4gIGN1cnNvcjogJGItc2tlbGV0b24tbG9hZGluZy1jdXJzb3I7XG59XG5cbi8vIEJhc2Vcbi5iLXNrZWxldG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYi1za2VsZXRvbi1iYWNrZ3JvdW5kLWNvbG9yO1xuICBjdXJzb3I6ICRiLXNrZWxldG9uLWxvYWRpbmctY3Vyc29yO1xuICAvLyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9heWFtZmxvdy9iNjAyYWI0MzZhYzlmMDU2NjBkOWMxNTE5MGY0ZmQ3YlxuICBtYXNrLWltYWdlOiByYWRpYWwtZ3JhZGllbnQod2hpdGUsIGJsYWNrKTtcblxuICAvLyBVc2UgYDo6YmVmb3JlYCBzaW5jZSBgOjphZnRlcmAgaXMgdXNlZCBmb3IgdGhlIHdhdmUtYW5pbWF0aW9uXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDAwYTBcIjtcbiAgfVxufVxuXG4vLyBUZXh0XG4uYi1za2VsZXRvbi10ZXh0IHtcbiAgaGVpZ2h0OiAkZm9udC1zaXplLWJhc2U7XG4gIG1hcmdpbi1ib3R0b206ICRiLXNrZWxldG9uLXRleHQtc3BhY2luZztcblxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB9XG59XG5cbi8vIEJ1dHRvblxuLmItc2tlbGV0b24tYnV0dG9uIHtcbiAgd2lkdGg6ICRiLXNrZWxldG9uLWJ0bi13aWR0aDtcbiAgcGFkZGluZzogJGJ0bi1wYWRkaW5nLXkgJGJ0bi1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGJ0bi1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0O1xuXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG4vLyBBdmF0YXJcbi5iLXNrZWxldG9uLWF2YXRhciB7XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4vLyBJbnB1dFxuLmItc2tlbGV0b24taW5wdXQge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWNvbG9yIHNvbGlkICRpbnB1dC1ib3JkZXItd2lkdGg7XG5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuLy8gSWNvblxuLmItc2tlbGV0b24taWNvbi13cmFwcGVyIHtcbiAgc3ZnIHtcbiAgICBjb2xvcjogJGItc2tlbGV0b24tYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxufVxuXG4vLyBJbWFnZVxuLmItc2tlbGV0b24taW1nIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gV2F2ZSBhbmltYXRpb25cbi5iLXNrZWxldG9uLWFuaW1hdGUtd2F2ZSB7XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMDtcblxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdHJhbnNwYXJlbnQsIGhzbGEoMCwgMCUsIDEwMCUsIDAuNCksIHRyYW5zcGFyZW50KTtcbiAgICBhbmltYXRpb246IGItc2tlbGV0b24tYW5pbWF0ZS13YXZlICRiLXNrZWxldG9uLWFuaW1hdGlvbi1kdXJhdGlvbiBsaW5lYXIgaW5maW5pdGU7XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBiLXNrZWxldG9uLWFuaW1hdGUtd2F2ZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxufVxuXG4vLyBGYWRlIGFuaW1hdGlvblxuLmItc2tlbGV0b24tYW5pbWF0ZS1mYWRlIHtcbiAgYW5pbWF0aW9uOiBiLXNrZWxldG9uLWFuaW1hdGUtZmFkZSAoJGItc2tlbGV0b24tYW5pbWF0aW9uLWR1cmF0aW9uIC8gMikgZWFzZS1pbi1vdXQgYWx0ZXJuYXRlXG4gICAgaW5maW5pdGU7XG5cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBiLXNrZWxldG9uLWFuaW1hdGUtZmFkZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgfVxufVxuXG4vLyBUaHJvYiBhbmltYXRpb25cbi5iLXNrZWxldG9uLWFuaW1hdGUtdGhyb2Ige1xuICBhbmltYXRpb246IGItc2tlbGV0b24tYW5pbWF0ZS10aHJvYiAoJGItc2tlbGV0b24tYW5pbWF0aW9uLWR1cmF0aW9uIC8gMikgZWFzZS1pbiBhbHRlcm5hdGVcbiAgICBpbmZpbml0ZTtcblxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGItc2tlbGV0b24tYW5pbWF0ZS10aHJvYiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NzUpO1xuICB9XG59XG4iLCIvLyAtLS0gR2VuZXJhbCBzdHlsaW5nIC0tLVxuXG4udGFibGUuYi10YWJsZSB7XG4gIC8vIFRhYmxlIGZpeGVkIGhlYWRlciB3aWR0aCBsYXlvdXRcbiAgJi5iLXRhYmxlLWZpeGVkIHtcbiAgICAvLyBGaXhlZCB3aWR0aCBjb2x1bW5zXG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGJvcmRlci1jb2xsYXBzZVxuICAvLyBNYWlubHkgZm9yIHVzZSB3aXRoIHN0aWNreSBoZWFkZXJzIGFuZCBjb2x1bW5zXG4gICYuYi10YWJsZS1uby1ib3JkZXItY29sbGFwc2Uge1xuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIH1cblxuICAvLyBUYWJsZSBidXN5IHN0eWxpbmdcbiAgJlthcmlhLWJ1c3k9XCJ0cnVlXCJdIHtcbiAgICBvcGFjaXR5OiAkYi10YWJsZS1idXN5LW9wYWNpdHk7XG4gIH1cblxuICAvLyBEZXRhaWxzIHJvdyBzdHlsaW5nXG4gID4gdGJvZHkgPiB0ci5iLXRhYmxlLWRldGFpbHMgPiB0ZCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQ2FwdGlvbiBwb3NpdGlvbmluZ1xuICA+IGNhcHRpb24ge1xuICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICB9XG5cbiAgJi5iLXRhYmxlLWNhcHRpb24tdG9wIHtcbiAgICA+IGNhcHRpb24ge1xuICAgICAgY2FwdGlvbi1zaWRlOiB0b3AgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZS1kZWNsYXJlIGB0YWJsZS1hY3RpdmVgIGNsYXNzIGhlcmUgc28gdGhhdCBpdCBjYW4gdGFrZVxuICAvLyBwcmVjZWRlbmNlIG92ZXIgcm93IHZhcmlhbnRzIHdoZW4gdXNlZCBvbiBzZWxlY3RhYmxlIHJvd3NcbiAgLy8gQ2xhc3MgY2FuIG9ubHkgYmUgYXBwbGllZCB0byByb3dzIGFuZCBub3QgaW5kaXZpZHVhbCBjZWxsc1xuICA+IHRib2R5ID4gLnRhYmxlLWFjdGl2ZSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjdGl2ZS1iZztcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgc3BlY2lhbCBob3ZlciBzdHlsaW5nIGZvciBgdGFibGUtYWN0aXZlYCByb3cgdmFyaWFudFxuICAmLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci50YWJsZS1hY3RpdmU6aG92ZXIge1xuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICAvLyBgJHRhYmxlLWhvdmVyLWJnYCBkZWZhdWx0IGlzIGEgdmVyeSB0cmFuc3BhcmVudCBibGFja1xuICAgICAgLy8gV2Ugb3ZlcmxheSBpdCBvdmVyIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFjaGlldmUgdGhlXG4gICAgICAvLyBzYW1lIGNvbG9yIGVmZmVjdCB3aGlsZSBrZWVwaW5nIHRoZSBiYWNrZ3JvdW5kIHNvbGlkXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHRhYmxlLWhvdmVyLWJnLCAkdGFibGUtaG92ZXItYmcpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgaW4gbWlzc2luZyBgYmctYWN0aXZlYCBjbGFzcyBmb3IgdGFibGUgdGJvZHkgcm93c1xuICAvLyBCb290c3RyYXAgdjQuMyBpcyBtaXNzaW5nIHRoaXMgZm9yIGRhcmsgdGFibGVzXG4gIC8vIGBiZy1hY3RpdmVgIGNsYXNzIGNhbm5vdCBiZSBhcHBsaWVkIHRvIGluZGl2aWR1YWwgY2VsbHNcbiAgPiB0Ym9keSA+IC5iZy1hY3RpdmUge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIC8vIEltcG9ydGFudCBpcyBuZWVkZWQgdG8gb3ZlcnJpZGUgdGhlIHN0YW5kYXJkIGBiZy12YXJpYW50c2BcbiAgICAgIC8vIGFzIHRoZSBhbHNvIHVzZSBgIWltcG9ydGFudGBcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWFjdGl2ZS1iZyAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFkZCBzcGVjaWFsIGhvdmVyIHN0eWxpbmcgZm9yIGBiZy1hY3RpdmVgIHJvdyB2YXJpYW50IChkYXJrIHRhYmxlcylcbiAgJi50YWJsZS1ob3Zlci50YWJsZS1kYXJrID4gdGJvZHkgPiB0ci5iZy1hY3RpdmU6aG92ZXIge1xuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIC8vIGAkdGFibGUtZGFyay1ob3Zlci1iZ2AgZGVmYXVsdCBpcyBhIHZlcnkgdHJhbnNwYXJlbnQgd2hpdGVcbiAgICAgIC8vIFdlIG92ZXJsYXkgaXQgb3ZlciB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBhY2hpZXZlIHRoZVxuICAgICAgLy8gc2FtZSBjb2xvciBlZmZlY3Qgd2hpbGUga2VlcGluZyB0aGUgYmFja2dyb3VuZCBzb2xpZFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCR0YWJsZS1kYXJrLWhvdmVyLWJnLCAkdGFibGUtZGFyay1ob3Zlci1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbiAgfVxufVxuXG4vLyAtLS0gVGFibGUgc3RpY2t5IGhlYWRlciBzdHlsaW5nIC0tLVxuXG5AaWYgJGJ2LWVuYWJsZS10YWJsZS1zdGlja3kge1xuICAuYi10YWJsZS1zdGlja3ktaGVhZGVyLFxuICAudGFibGUtcmVzcG9uc2l2ZSxcbiAgW2NsYXNzKj1cInRhYmxlLXJlc3BvbnNpdmUtXCJdIHtcbiAgICAvLyBNb3ZlIHRoZSB0YWJsZSBib3R0b20gbWFyZ2luIHRvIHRoZSB3cmFwcGVyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblxuICAgID4gLnRhYmxlIHtcbiAgICAgIC8vIFJlc2V0IGBtYXJnaW4tYm90dG9tYCB0byB3ZSBkb24ndCBnZXQgYSBzcGFjZSBhZnRlclxuICAgICAgLy8gdGhlIHRhYmxlIGluc2lkZSB0aGUgc2Nyb2xsIGFyZWFcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmItdGFibGUtc3RpY2t5LWhlYWRlciB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAvLyBBbm5veWluZ2x5LCB3aGVuIG92ZXJmbG93LXkgaXMgc2V0LCBicm93c2VycyBjb252ZXJ0XG4gICAgLy8gJ292ZXJmbG93LXg6IHZpc2libGUnIHRvICdvdmVyZmxvdy14OiBhdXRvJyAtIHNvIGl0IGJlY29tZXNcbiAgICAvLyByZXNwb25zaXZlIGluIHRoZSB4IGF4aXMgYXV0b21hdGljYWxseVxuICAgIC8vIERlZmF1bHQgYG1heC1oZWlnaHRgIGJlZm9yZSBhIHNjcm9sbGJhciB3aWxsIHNob3dcbiAgICAvLyBXZSBkb24ndCB1c2UgYGhlaWdodGAgYXMgdGFibGUgY291bGQgYmUgc2hvcnRlciB0aGFuIHRoaXMgdmFsdWVcbiAgICBtYXgtaGVpZ2h0OiAkYi10YWJsZS1zdGlja3ktaGVhZGVyLW1heC1oZWlnaHQ7XG4gIH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgIC8vIE92ZXJyaWRlIGFueSBzdHlsZXMgKGluY2x1ZGluZyBpbmxpbmUgc3R5bGVzKVxuICAgIC8vIHdoZW4gcHJpbnRpbmdcbiAgICAuYi10YWJsZS1zdGlja3ktaGVhZGVyIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICAvLyBQb3NpdGlvbmluZyBvZiBzdGlja3kgaGVhZGVyc1xuICAgIC5iLXRhYmxlLXN0aWNreS1oZWFkZXIgPiAudGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgICAvLyBIZWFkZXIgY2VsbHMgbmVlZCB0byBiZSBzdGlja3kgb24gdG9wXG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZyBvZiBzdGlja3kgY29sdW1uc1xuICAgIC8vIFN0aWNreSBjb2x1bW5zIG9ubHkgd29yayB3aGVuIHRhYmxlIGhhcyBzdGlja3lcbiAgICAvLyBoZWFkZXJzIGFuZC9vciBpcyByZXNwb25zaXZlXG4gICAgLmItdGFibGUtc3RpY2t5LWhlYWRlcixcbiAgICAudGFibGUtcmVzcG9uc2l2ZSxcbiAgICBbY2xhc3MqPVwidGFibGUtcmVzcG9uc2l2ZS1cIl0ge1xuICAgICAgPiAudGFibGUuYi10YWJsZSB7XG4gICAgICAgID4gdGhlYWQsXG4gICAgICAgID4gdGJvZHksXG4gICAgICAgID4gdGZvb3Qge1xuICAgICAgICAgID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gdGhlYWQge1xuICAgICAgICAgID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uIHtcbiAgICAgICAgICAgIC8vIHotaW5kZXggbmVlZHMgdG8gYmUgaGlnaGVyIHRoYW4gc3RpY2t5IGNvbHVtbnMgYW5kXG4gICAgICAgICAgICAvLyBzdGlja3kgaGVhZGVycyBmb3IgY29ycmVjdCBsYXllcmluZ1xuICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IHRib2R5LFxuICAgICAgICA+IHRmb290IHtcbiAgICAgICAgICA+IHRyID4gLmItdGFibGUtc3RpY2t5LWNvbHVtbiB7XG4gICAgICAgICAgICAvLyB6LWluZGV4IG5lZWRzIHRvIGJlIGxvd2VyIHRoYW4gc3RpY2t5IGhlYWRlciB0aGF0XG4gICAgICAgICAgICAvLyBpcyBhbHNvIGEgc3RpY2t5IGNvbHVtblxuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEZWZhdWx0IHRoZW1lIGNvbG9yIGJhY2tncm91bmQgZm9yIHRhYmxlIGNlbGxzIHRoYXQgYXJlIHN0aWNreVxuICAgIC8vIEFwcGxpZWQgb25seSB3aGVuIG5vIHZhcmlhbnQgaXMgYXBwbGllZCB0byB0aGUgcm93cywgb3Igbm8gaGVhZC12YXJpYW50XG4gICAgLy8gTmVlZGVkIGJlY2F1c2UgQm9vdHN0cmFwIHY0IGRvZXMgbm90IGhhdmUgdGFibGUgY2hpbGQgZWxlbWVudHMgc2V0IHVwXG4gICAgLy8gdG8gaW5oZXJpdCB0aGVpciBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gcGFyZW50IGVsZW1lbnQgYnkgZGVmYXVsdFxuICAgIC8vXG4gICAgLy8gQW4gaXNzdWUgbWFkZSBhdCB0d2JzL2Jvb3RzdHJhcCByZXBvIGZvciB0YWJsZVxuICAgIC8vIGJhY2tncm91bmQgY29sb3IgaW5oZXJpdGFuY2U6XG4gICAgLy8gICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5MjQ0XG4gICAgLy8gSWYgaW1wbGVtZW50ZWQsIHdvdWxkIG5lZ2F0ZSB0aGUgbmVlZCBmb3IgYWxsIHRoZSBiZWxvdyBTQ1NTXG4gICAgLnRhYmxlLmItdGFibGUge1xuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciA+IC50YWJsZS1iLXRhYmxlLWRlZmF1bHQge1xuICAgICAgICAgIC8vIERlZmF1bHQgY2VsbCBjb2xvclxuICAgICAgICAgIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gICAgICAgICAgLy8gYCR0YWJsZS1iZ2AgaXMgbnVsbCBieSBkZWZhdWx0IGluIEJvb3RzdHJhcCB2NCB2YXJpYWJsZXNcbiAgICAgICAgICAvLyBidXQgY291bGQgaGF2ZSBhIHZhbHVlIHNldCBieSB0aGUgY29uc3VtZXJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZigkdGFibGUtYmcsICR0YWJsZS1iZywgJGJvZHktYmcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudGFibGUtZGFyayB7XG4gICAgICAgID4gdGhlYWQsXG4gICAgICAgID4gdGJvZHksXG4gICAgICAgID4gdGZvb3Qge1xuICAgICAgICAgID4gdHIgPiAuYmctYi10YWJsZS1kZWZhdWx0IHtcbiAgICAgICAgICAgIC8vIERlZmF1bHQgY2VsbCBjb2xvciBpbiB0YWJsZSBkYXJrIG1vZGVcbiAgICAgICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgICAgICAgICAgIC8vIERlZmF1bHQgY2VsbCBiYWNrZ3JvdW5kIGNvbG9yIGluIHRhYmxlIGRhcmsgbW9kZVxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIG9mIHplYnJhIHN0cmlwaW5nXG4gICAgICAmLnRhYmxlLXN0cmlwZWQge1xuICAgICAgICAvLyBcImZha2VcIiB6ZWJyYSBzdHJpcGluZyB2aWEgdXNlIG9mIGEgdHJhbnNwYXJlbnQgYmFja2dyb3VuZCBpbWFnZVxuICAgICAgICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pID4gLnRhYmxlLWItdGFibGUtZGVmYXVsdCB7XG4gICAgICAgICAgLy8gYCR0YWJsZS1hY2NlbnQtYmdgICh1c2VkIGZvciBzdHJpcGluZykgZGVmYXVsdCBpcyBhIHZlcnkgdHJhbnNwYXJlbnQgYmxhY2tcbiAgICAgICAgICAvLyBXZSBvdmVybGF5IGl0IG92ZXIgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gYWNoaWV2ZSB0aGUgc2FtZSBjb2xvclxuICAgICAgICAgIC8vIGVmZmVjdCB3aGlsZSBrZWVwaW5nIHRoZSBiYWNrZ3JvdW5kIHNvbGlkLlxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkdGFibGUtYWNjZW50LWJnLCAkdGFibGUtYWNjZW50LWJnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50YWJsZS1kYXJrIHtcbiAgICAgICAgICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pID4gLmJnLWItdGFibGUtZGVmYXVsdCB7XG4gICAgICAgICAgICAvLyBgJHRhYmxlLWRhcmstYWNjZW50LWJnYCAodXNlZCBmb3Igc3RyaXBpbmcpIGRlZmF1bHQgaXMgYSB2ZXJ5IHRyYW5zcGFyZW50IHdoaXRlXG4gICAgICAgICAgICAvLyBXZSBvdmVybGF5IGl0IG92ZXIgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gYWNoaWV2ZSB0aGUgc2FtZSBjb2xvclxuICAgICAgICAgICAgLy8gZWZmZWN0IHdoaWxlIGtlZXBpbmcgdGhlIGJhY2tncm91bmQgc29saWQuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHRhYmxlLWRhcmstYWNjZW50LWJnLCAkdGFibGUtZGFyay1hY2NlbnQtYmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIGNhc2Ugb2YgaG92ZXJcbiAgICAgICYudGFibGUtaG92ZXIge1xuICAgICAgICAvLyBcImZha2VcIiBob3ZlciB2aWEgdXNlIG9mIGEgdHJhbnNwYXJlbnQgYmFja2dyb3VuZCBpbWFnZVxuICAgICAgICA+IHRib2R5ID4gdHI6aG92ZXIgPiAudGFibGUtYi10YWJsZS1kZWZhdWx0IHtcbiAgICAgICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgICAgIC8vIGAkdGFibGUtaG92ZXItYmdgIGRlZmF1bHQgaXMgYSB2ZXJ5IHRyYW5zcGFyZW50IGJsYWNrXG4gICAgICAgICAgLy8gV2Ugb3ZlcmxheSBpdCBvdmVyIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFjaGlldmUgdGhlIHNhbWUgY29sb3JcbiAgICAgICAgICAvLyBlZmZlY3Qgd2hpbGUga2VlcGluZyB0aGUgYmFja2dyb3VuZCBzb2xpZC5cbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHRhYmxlLWhvdmVyLWJnLCAkdGFibGUtaG92ZXItYmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLnRhYmxlLWRhcmsge1xuICAgICAgICAgID4gdGJvZHkgPiB0cjpob3ZlciA+IC5iZy1iLXRhYmxlLWRlZmF1bHQge1xuICAgICAgICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgLy8gYCR0YWJsZS1kYXJrLWhvdmVyLWJnYCBkZWZhdWx0IGlzIGEgdmVyeSB0cmFuc3BhcmVudCB3aGl0ZVxuICAgICAgICAgICAgLy8gV2Ugb3ZlcmxheSBpdCBvdmVyIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFjaGlldmUgdGhlIHNhbWUgY29sb3JcbiAgICAgICAgICAgIC8vIGVmZmVjdCB3aGlsZSBrZWVwaW5nIHRoZSBiYWNrZ3JvdW5kIHNvbGlkLlxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCR0YWJsZS1kYXJrLWhvdmVyLWJnLCAkdGFibGUtZGFyay1ob3Zlci1iZyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAtLS0gSGVhZGVyIHNvcnQgc3R5bGluZyAtLS1cblxuLy8gQm9vdHN0cmFwIHY0LjQgd2lsbCBpbmNsdWRlIHRoaXMgdmFyaWFibGUgYXMgYCRlc2NhcGVkLWNoYXJhY3RlcnNgXG4vLyBCdXQgaWYgd2Ugd2FudCB0byBwcmVzZXJ2ZSBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIHY0LjMsIHdlIGxlYXZlIHRoaXMgaW5cbiRidi1lc2NhcGVkLWNoYXJhY3RlcnM6ICgoXCI8XCIsIFwiJTNjXCIpLCAoXCI+XCIsIFwiJTNlXCIpLCAoXCIjXCIsIFwiJTIzXCIpKTtcblxuLy8gQm9vdHN0cmFwIHY0LjQgd2lsbCBpbmNsdWRlIHRoaXMgbWV0aG9kIGFzIGBlc2NhcGUtc3ZnYFxuLy8gQnV0IGlmIHdlIHdhbnQgdG8gcHJlc2VydmUgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCB2NC4zLCB3ZSBsZWF2ZSB0aGlzIGluXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xuQGZ1bmN0aW9uIGJ2LWVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGJ2LWVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAkc3RyaW5nOiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkY2hhciwgJGVuY29kZWQpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLnRhYmxlLmItdGFibGUge1xuICA+IHRoZWFkLFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gW2FyaWEtc29ydF0ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGItdGFibGUtc29ydC1pY29uLWJnLXdpZHRoICRiLXRhYmxlLXNvcnQtaWNvbi1iZy1oZWlnaHQ7XG5cbiAgICAgICAgJjpub3QoLmItdGFibGUtc29ydC1pY29uLWxlZnQpIHtcbiAgICAgICAgICAvLyBEZWZhdWx0IGlzIGljb24gb24gdGhlIHJpZ2h0XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmd9IC8gMikgY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nfSArICN7JGItdGFibGUtc29ydC1pY29uLWJnLXdpZHRofSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmItdGFibGUtc29ydC1pY29uLWxlZnQge1xuICAgICAgICAgIC8vIExlZnQgYWxpZ25lZCBzb3J0IGljb25cbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nfSAvIDIpIGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nfSArICN7JGItdGFibGUtc29ydC1pY29uLWJnLXdpZHRofSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgPiBbYXJpYS1zb3J0PVwibm9uZVwiXSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLW5vdC1zb3J0ZWQpO1xuICAgICAgfVxuXG4gICAgICA+IFthcmlhLXNvcnQ9XCJhc2NlbmRpbmdcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1hc2NlbmRpbmcpO1xuICAgICAgfVxuXG4gICAgICA+IFthcmlhLXNvcnQ9XCJkZXNjZW5kaW5nXCJdIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctZGVzY2VuZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU29ydCBpY29ucyBmb3IgZGFyayB0YWJsZXMsIGhlYWRlcnMsIGZvb3RlcnNcbiAgJi50YWJsZS1kYXJrID4gdGhlYWQgPiB0cixcbiAgJi50YWJsZS1kYXJrID4gdGZvb3QgPiB0cixcbiAgPiAudGhlYWQtZGFyayA+IHRyIHtcbiAgICA+IFthcmlhLXNvcnQ9XCJub25lXCJdIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstbm90LXNvcnRlZCk7XG4gICAgfVxuXG4gICAgPiBbYXJpYS1zb3J0PVwiYXNjZW5kaW5nXCJdIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstYXNjZW5kaW5nKTtcbiAgICB9XG5cbiAgICA+IFthcmlhLXNvcnQ9XCJkZXNjZW5kaW5nXCJdIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstZGVzY2VuZGluZyk7XG4gICAgfVxuICB9XG5cbiAgLy8gU29ydCBpY29ucyB3aGVuIGhlYWRlciBjZWxsIGhhcyBgdGFibGUtZGFya2AgY2xhc3NcbiAgPiB0aGVhZCA+IHRyID4gLnRhYmxlLWRhcmssXG4gID4gdGZvb3QgPiB0ciA+IC50YWJsZS1kYXJrIHtcbiAgICAmW2FyaWEtc29ydD1cIm5vbmVcIl0ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1ub3Qtc29ydGVkKTtcbiAgICB9XG5cbiAgICAmW2FyaWEtc29ydD1cImFzY2VuZGluZ1wiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLWFzY2VuZGluZyk7XG4gICAgfVxuXG4gICAgJlthcmlhLXNvcnQ9XCJkZXNjZW5kaW5nXCJdIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstZGVzY2VuZGluZyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFkZGluZyBhbmQgcG9zaXRpb24gYWRqdXN0bWVudCBmb3Igc21hbGwgdGFibGVzXG4gICYudGFibGUtc20ge1xuICAgID4gdGhlYWQsXG4gICAgPiB0Zm9vdCB7XG4gICAgICA+IHRyID4gW2FyaWEtc29ydF0ge1xuICAgICAgICAmOm5vdCguYi10YWJsZS1zb3J0LWljb24tbGVmdCkge1xuICAgICAgICAgIC8vIERlZmF1bHQgaXMgaWNvbiBvbiB0aGUgcmlnaHRcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZy1zbX0gLyAyKSBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmctc219ICsgI3skYi10YWJsZS1zb3J0LWljb24tYmctd2lkdGh9KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYi10YWJsZS1zb3J0LWljb24tbGVmdCB7XG4gICAgICAgICAgLy8gTGVmdCBhbGlnbmVkIHNvcnQgaWNvblxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmctc219IC8gMikgY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmctc219ICsgI3skYi10YWJsZS1zb3J0LWljb24tYmctd2lkdGh9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAtLS0gU2VsZWN0YWJsZSByb3dzIC0tLVxuLnRhYmxlLmItdGFibGUge1xuICAmLmItdGFibGUtc2VsZWN0YWJsZTpub3QoLmItdGFibGUtc2VsZWN0YWJsZS1uby1jbGljaykge1xuICAgICYgPiB0Ym9keSA+IHRyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmItdGFibGUtc2VsZWN0aW5nIHtcbiAgICAgIC8vIERpc2FibGVkIHRleHQtc2VsZWN0aW9uIHdoZW4gaW4gcmFuZ2UgbW9kZSB3aGVuXG4gICAgICAvLyBhdCBsZWFzdCBvbmUgcm93IHNlbGVjdGVkXG4gICAgICAmLmItdGFibGUtc2VsZWN0LXJhbmdlID4gdGJvZHkgPiB0ciB7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAtLS0gU3RhY2tlZCB0YWJsZXMgLS0tXG5AaWYgJGJ2LWVuYWJsZS10YWJsZS1zdGFja2VkIHtcbiAgLnRhYmxlLmItdGFibGUge1xuICAgICYuYi10YWJsZS1zdGFja2VkIHtcbiAgICAgIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAgICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAgICAgJiN7JGluZml4fSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAvLyBDb252ZXJ0IHRvIGJsb2NrcyB3aGVuIHN0YWNrZWRcbiAgICAgICAgICAgID4gY2FwdGlvbixcbiAgICAgICAgICAgID4gdGJvZHksXG4gICAgICAgICAgICA+IHRib2R5ID4gdHIsXG4gICAgICAgICAgICA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgICAgICAgICAgID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEhpZGUgd2hlbiBzdGFja2VkXG4gICAgICAgICAgICA+IHRoZWFkLFxuICAgICAgICAgICAgPiB0Zm9vdCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gICAgICAgICAgICAgID4gdHIuYi10YWJsZS1ib3R0b20tcm93IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENhcHRpb24gcG9zaXRpb25pbmdcbiAgICAgICAgICAgID4gY2FwdGlvbiB7XG4gICAgICAgICAgICAgIGNhcHRpb24tc2lkZTogdG9wICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gdGJvZHkge1xuICAgICAgICAgICAgICA+IHRyIHtcbiAgICAgICAgICAgICAgICAvLyBUdXJuIGNlbGxzIHdpdGggbGFiZWxzIGludG8gbWljcm8tZ3JpZHNcbiAgICAgICAgICAgICAgICA+IFtkYXRhLWxhYmVsXSB7XG4gICAgICAgICAgICAgICAgICAvLyBDZWxsIGhlYWRlciBsYWJlbCBwc2V1ZG8gZWxlbWVudFxuICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICRiLXRhYmxlLXN0YWNrZWQtaGVhZGluZy13aWR0aDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIGNhbGMoI3skYi10YWJsZS1zdGFja2VkLWdhcH0gLyAyKSAwIDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgLy8gQWRkIGNsZWFyZml4IGluLWNhc2UgZmllbGQgbGFiZWwgd3JhcHNcbiAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAvLyBDZWxsIHZhbHVlICh3ZSB3cmFwIHRoZSBjZWxsIHZhbHVlIGluIGEgZGl2IHdoZW4gc3RhY2tlZClcbiAgICAgICAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skYi10YWJsZS1zdGFja2VkLWhlYWRpbmctd2lkdGh9KTtcbiAgICAgICAgICAgICAgICAgICAgLy8gQWRkIFwiZ2FwXCIgYmV0d2VlbiBcImNlbGxzXCJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgY2FsYygjeyRiLXRhYmxlLXN0YWNrZWQtZ2FwfSAvIDIpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gRG9udCBzaG93IHRoZSBmaXhlZCB0b3AvYm90dG9tIHJvd3NcbiAgICAgICAgICAgICAgICAmLnRvcC1yb3csXG4gICAgICAgICAgICAgICAgJi5ib3R0b20tcm93IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gR2l2ZSB0aGUgdG9wIGNlbGwgb2YgZWFjaCBcInJvd1wiIGEgaGVhdnkgYm9yZGVyXG4gICAgICAgICAgICAgICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogKDMgKiAkdGFibGUtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBHaXZlIGFueSBjZWxsIGFmdGVyIGEgcm93c3BhbidlZCBjZWxsIGEgaGVhdnkgdG9wIGJvcmRlclxuICAgICAgICAgICAgICAgID4gW3Jvd3NwYW5dICsgdGQsXG4gICAgICAgICAgICAgICAgPiBbcm93c3Bhbl0gKyB0aCB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAoMyAqICR0YWJsZS1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQlRpbWUgY3VzdG9tIFNDU1NcblxuLmItdGltZSB7XG4gIG1pbi13aWR0aDogMTUwcHg7XG5cbiAgJlthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSBvdXRwdXQsXG4gICZbYXJpYS1yZWFkb25seT1cInRydWVcIl0gb3V0cHV0LFxuICBvdXRwdXQuZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJlthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSBvdXRwdXQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgQGF0LXJvb3Qge1xuICAgIC8vIFByZXZlbnQgdGhlIHNwaW5idXR0b25zIGZyb20gcmV2ZXJzaW5nIG9yZGVyIGluIFJUTCBtb2RlXG4gICAgLy8gYXMgdGltZSBpcyBhbHdheXMgcmVhZCBMVFJcbiAgICBbZGlyPVwicnRsXCJdICYgPiAuZC1mbGV4Om5vdCguZmxleC1jb2x1bW4pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cblxuICAuYi10aW1lLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuXG4gICAgb3V0cHV0IHtcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW07XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG4gIH1cblxuICAuYi10aW1lLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICB9XG5cbiAgLmItdGltZS1hbXBtIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICB9XG59XG4iLCIvLyAtLS0gPGItdG9hc3Q+IGN1c3RvbSBTQ1NTIC0tLVxuXG4vLyBUb2FzdCB3cmFwcGVyIGVsZW1lbnQgY2xhc3MgKG5lZWRlZCBmb3IgbGlzdCB0cmFuc2l0aW9uIGluIHRvYXN0ZXJzKVxuLmItdG9hc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICB6LWluZGV4OiAxO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcblxuICAudG9hc3Qge1xuICAgIC8vIEFsbG93IHVzIHRvIG92ZXJyaWRlIEJvb3RzdHJhcCdzIGRlZmF1bHQgdG9hc3Qgb3BhY2l0eVxuICAgIC8vIEFzIHRoZXkgZG8gbm90IHByb3ZpZGUgaXQgYXMgYSB2YXJpYWJsZVxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRvYXN0LWJhY2tncm91bmQtY29sb3IsICRiLXRvYXN0LWJhY2tncm91bmQtb3BhY2l0eSk7XG4gIH1cblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1wYWRkaW5nLXg7XG4gIH1cblxuICAmLmItdG9hc3Qtc29saWQge1xuICAgIC50b2FzdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yLCAxKTtcbiAgICB9XG4gIH1cblxuICAudG9hc3Qge1xuICAgIC8vIE92ZXJyaWRlIGRlZmF1bHQgQm9vdHN0cmFwIHY0Lnggb3BhY2l0eSBvZiAwXG4gICAgLy8gTmVlZGVkIGZvciByZS11c2FibGUgZmFkZSB0cmFuc2l0aW9uXG4gICAgb3BhY2l0eTogMTtcblxuICAgICYuZmFkZTpub3QoLnNob3cpIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLnRvYXN0LWJvZHkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IC8vIE5lZWRlZCB3aGVuIHdlIHVzZSBhIGxpbmsgYXMgdGhlIGJvZHkgZWxlbWVudFxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYi10b2FzdC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgLy8gQmFzZWQgb24gYWxlcnQtdmFyaWFudCBtaXhpblxuICAudG9hc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEobGlnaHRlbigkYmFja2dyb3VuZCwgNSUpLCAkYi10b2FzdC1iYWNrZ3JvdW5kLW9wYWNpdHkpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkYm9yZGVyLCAkYi10b2FzdC1iYWNrZ3JvdW5kLW9wYWNpdHkpO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAudG9hc3QtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRiYWNrZ3JvdW5kLCAkYi10b2FzdC1iYWNrZ3JvdW5kLW9wYWNpdHkpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgkYm9yZGVyLCAkYi10b2FzdC1iYWNrZ3JvdW5kLW9wYWNpdHkpO1xuICAgIH1cblxuICAgIC8vIC50b2FzdC1ib2R5W2hyZWZdIHtcbiAgICAvLyAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIC8vIH1cbiAgfVxuXG4gICYuYi10b2FzdC1zb2xpZCB7XG4gICAgLnRvYXN0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEobGlnaHRlbigkYmFja2dyb3VuZCwgNSUpLCAxKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVG9hc3QgdmFyaWFudHNcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYi10b2FzdC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGItdG9hc3QtdmFyaWFudChcbiAgICAgIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGItdG9hc3QtYmctbGV2ZWwpLFxuICAgICAgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYi10b2FzdC1ib3JkZXItbGV2ZWwpLFxuICAgICAgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYi10b2FzdC1jb2xvci1sZXZlbClcbiAgICApO1xuICB9XG59XG4iLCIvLyAtLS0gPGItdG9hc3Rlcj4gY3VzdG9tIFNDU1MgLS0tXG5cbi8vIEJhc2UgdG9hc3RlciBzdHlsaW5nXG4uYi10b2FzdGVyIHtcbiAgei1pbmRleDogJGItdG9hc3Rlci16aW5kZXg7XG5cbiAgLmItdG9hc3Rlci1zbG90IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOmVtcHR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQnVpbHQtaW4gdG9hc3RlciBzdHlsaW5nXG4vLyAgLSBiLXRvYXN0ZXItdG9wLXJpZ2h0XG4vLyAgLSBiLXRvYXN0ZXItdG9wLWxlZnRcbi8vICAtIGItdG9hc3Rlci10b3AtY2VudGVyXG4vLyAgLSBiLXRvYXN0ZXItdG9wLWZ1bGxcbi8vICAtIGItdG9hc3Rlci1ib3R0b20tcmlnaHRcbi8vICAtIGItdG9hc3Rlci1ib3R0b20tbGVmdFxuLy8gIC0gYi10b2FzdGVyLWJvdHRvbS1jZW50ZXJcbi8vICAtIGItdG9hc3Rlci1ib3R0b20tZnVsbFxuLmItdG9hc3RlciB7XG4gICYuYi10b2FzdGVyLXRvcC1yaWdodCxcbiAgJi5iLXRvYXN0ZXItdG9wLWxlZnQsXG4gICYuYi10b2FzdGVyLXRvcC1jZW50ZXIsXG4gICYuYi10b2FzdGVyLXRvcC1mdWxsLFxuICAmLmItdG9hc3Rlci1ib3R0b20tcmlnaHQsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1sZWZ0LFxuICAmLmItdG9hc3Rlci1ib3R0b20tY2VudGVyLFxuICAmLmItdG9hc3Rlci1ib3R0b20tZnVsbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6ICRiLXRvYXN0ZXItb2Zmc2V0LWxlZnQ7XG4gICAgcmlnaHQ6ICRiLXRvYXN0ZXItb2Zmc2V0LXJpZ2h0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIC5iLXRvYXN0ZXItc2xvdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gICAgICB3aWR0aDogMTAwJTsgLyogSUUgMTEgZml4ICovXG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gICYuYi10b2FzdGVyLXRvcC1mdWxsLFxuICAmLmItdG9hc3Rlci1ib3R0b20tZnVsbCB7XG4gICAgLmItdG9hc3Rlci1zbG90IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAuYi10b2FzdCxcbiAgICAgIC50b2FzdCB7XG4gICAgICAgIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCB0b2FzdCBtYXgtd2lkdGhcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmItdG9hc3Rlci10b3AtcmlnaHQsXG4gICYuYi10b2FzdGVyLXRvcC1sZWZ0LFxuICAmLmItdG9hc3Rlci10b3AtY2VudGVyLFxuICAmLmItdG9hc3Rlci10b3AtZnVsbCB7XG4gICAgdG9wOiAwO1xuXG4gICAgLmItdG9hc3Rlci1zbG90IHtcbiAgICAgIHRvcDogJGItdG9hc3Rlci1vZmZzZXQtdG9wO1xuICAgIH1cbiAgfVxuXG4gICYuYi10b2FzdGVyLWJvdHRvbS1yaWdodCxcbiAgJi5iLXRvYXN0ZXItYm90dG9tLWxlZnQsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1jZW50ZXIsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1mdWxsIHtcbiAgICBib3R0b206IDA7XG5cbiAgICAuYi10b2FzdGVyLXNsb3Qge1xuICAgICAgYm90dG9tOiAkYi10b2FzdGVyLW9mZnNldC1ib3R0b207XG4gICAgfVxuICB9XG5cbiAgJi5iLXRvYXN0ZXItdG9wLXJpZ2h0LFxuICAmLmItdG9hc3Rlci1ib3R0b20tcmlnaHQsXG4gICYuYi10b2FzdGVyLXRvcC1jZW50ZXIsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1jZW50ZXIge1xuICAgIC5iLXRvYXN0ZXItc2xvdCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmLmItdG9hc3Rlci10b3AtbGVmdCxcbiAgJi5iLXRvYXN0ZXItYm90dG9tLWxlZnQsXG4gICYuYi10b2FzdGVyLXRvcC1jZW50ZXIsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1jZW50ZXIge1xuICAgIC5iLXRvYXN0ZXItc2xvdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyAtLS0gPGItdG9hc3Q+IGN1c3RvbSB0cmFuc2l0aW9uIFNDU1MgLS0tXG5cbi8vIFBvcnRhbFZ1ZSBhcHBlYXJzIHRvIGhhdmUgaXNzdWVzIHdpdGggdHJhbnNpdGlvbiBjbGFzc2VzIG9uIHBvcnRhbGVkIGl0ZW1zXG5cbi5iLXRvYXN0ZXIge1xuICAmLmItdG9hc3Rlci10b3AtcmlnaHQsXG4gICYuYi10b2FzdGVyLXRvcC1sZWZ0LFxuICAmLmItdG9hc3Rlci1ib3R0b20tcmlnaHQsXG4gICYuYi10b2FzdGVyLWJvdHRvbS1sZWZ0IHtcbiAgICAuYi10b2FzdCB7XG4gICAgICAmLmItdG9hc3Rlci1lbnRlci1hY3RpdmUsXG4gICAgICAmLmItdG9hc3Rlci1sZWF2ZS1hY3RpdmUsXG4gICAgICAmLmItdG9hc3Rlci1tb3ZlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTc1cztcbiAgICAgIH1cblxuICAgICAgJi5iLXRvYXN0ZXItZW50ZXIge1xuICAgICAgfVxuXG4gICAgICAmLmItdG9hc3Rlci1lbnRlci10byxcbiAgICAgICYuYi10b2FzdGVyLWVudGVyLWFjdGl2ZSB7XG4gICAgICAgIC50b2FzdC5mYWRlIHtcbiAgICAgICAgICAvLyBEZWxheSB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgdG9hc3QgdW50aWxcbiAgICAgICAgICAvLyB0aGUgbW92ZSB0cmFuc2l0aW9uIGhhcyBjb21wbGV0ZWRcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE3NXM7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5iLXRvYXN0ZXItZW50ZXItdG8ge1xuICAgICAgfVxuXG4gICAgICAmLmItdG9hc3Rlci1sZWF2ZS1hY3RpdmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTc1cztcblxuICAgICAgICAudG9hc3QuZmFkZSB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5iLXRvYXN0ZXItbGVhdmUtdG8ge1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gU29tZSBvdmVycmlkZXMgdG8gbWFrZSB0b29sdGlwIHRyYW5zaXRpb25zIHdvcmsgd2l0aCBWdWUgYDx0cmFuc2l0aW9uPmBcbi50b29sdGlwLmItdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5O1xuICAvLyBOZWVkZWQgZHVlIHRvIEJvb3RzdHJhcCB2NC40IHJlYm9vdC5jc3MgY2hhbmdlc1xuICBvdXRsaW5lOiAwO1xuXG4gICYuZmFkZTpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgcG9pbnRlciBldmVudHMgd2hlbiBpbiAnbm9uaW50ZXJhY3RpdmUnIG1vZGUgdG8gaGlkZVxuICAvLyB0aGUgdG9vbHRpcCB3aGVuIHRoZSB1c2VyIGhvdmVycyBvdmVyIGl0cyBjb250ZW50XG4gICYubm9uaW50ZXJhY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLmFycm93IHtcbiAgICBtYXJnaW46IDAgJHRvb2x0aXAtYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICYuYnMtdG9vbHRpcC1yaWdodCxcbiAgJi5icy10b29sdGlwLWxlZnQge1xuICAgIC5hcnJvdyB7XG4gICAgICBtYXJnaW46ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ3JlYXRlIGN1c3RvbSB2YXJpYW50cyBmb3IgdG9vbHRpcHNcbkBpZiAkYnYtZW5hYmxlLXRvb2x0aXAtdmFyaWFudHMge1xuICBAZWFjaCAkdmFyaWFudCwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC50b29sdGlwLmItdG9vbHRpcC0jeyR2YXJpYW50fSB7XG4gICAgICAkdGlwLWJnLWNvbG9yOiB0aGVtZS1jb2xvci1sZXZlbCgkdmFyaWFudCwgJGItdG9vbHRpcC1iZy1sZXZlbCk7XG4gICAgICAkdGlwLXRleHQtY29sb3I6IGNvbG9yLXlpcSgkdGlwLWJnLWNvbG9yKTtcblxuICAgICAgJi5icy10b29sdGlwLXRvcCB7XG4gICAgICAgIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkdGlwLWJnLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtdG9vbHRpcC1yaWdodCB7XG4gICAgICAgIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0aXAtYmctY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5icy10b29sdGlwLWJvdHRvbSB7XG4gICAgICAgIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdGlwLWJnLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtdG9vbHRpcC1sZWZ0IHtcbiAgICAgICAgLmFycm93OjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdGlwLWJnLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtdG9vbHRpcC1hdXRvIHtcbiAgICAgICAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgICAgICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICAgICAgICB9XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgICAgICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgICAgICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICAgICAgICB9XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgICAgICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1sZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50b29sdGlwLWlubmVyIHtcbiAgICAgICAgY29sb3I6ICR0aXAtdGV4dC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRpcC1iZy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgaWNvbiBzdHlsaW5nXG4uYi1pY29uIHtcbiAgJi5iaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC8vIFRoZSBmb2xsb3dpbmcgaXMgcmVxdWlyZWQgdG8gY29tcGVuc2F0ZSBmb3IgYWxpZ25tZW50XG4gICAgLy8gaXNzdWVzIHdpdGggdGhlIEJvb3RzdHJhcCBJY29ucyBhbHBoYSBpbXBsZW1lbnRhdGlvblxuICAgIHZlcnRpY2FsLWFsaWduOiAkYi1pY29uLXZlcnRpY2FsLW9mZnNldDtcbiAgfVxuXG4gICYuYi1pY29uLWFuaW1hdGlvbi1jeWxvbixcbiAgJi5iLWljb25zdGFjayAuYi1pY29uLWFuaW1hdGlvbi1jeWxvbiA+IGcge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBhbmltYXRpb246ICRiLWljb24tYW5pbWF0aW9uLWN5bG9uLWR1cmF0aW9uIGluZmluaXRlIGVhc2UtaW4tb3V0IGFsdGVybmF0ZVxuICAgICAgYi1pY29uLWFuaW1hdGlvbi1jeWxvbjtcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5iLWljb24tYW5pbWF0aW9uLWN5bG9uLXZlcnRpY2FsLFxuICAmLmItaWNvbnN0YWNrIC5iLWljb24tYW5pbWF0aW9uLWN5bG9uLXZlcnRpY2FsID4gZyB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIGFuaW1hdGlvbjogJGItaWNvbi1hbmltYXRpb24tY3lsb24tdmVydGljYWwtZHVyYXRpb24gaW5maW5pdGUgZWFzZS1pbi1vdXQgYWx0ZXJuYXRlXG4gICAgICBiLWljb24tYW5pbWF0aW9uLWN5bG9uLXZlcnRpY2FsO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmItaWNvbi1hbmltYXRpb24tZmFkZSxcbiAgJi5iLWljb25zdGFjayAuYi1pY29uLWFuaW1hdGlvbi1mYWRlID4gZyB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIGFuaW1hdGlvbjogJGItaWNvbi1hbmltYXRpb24tdGhyb2ItZHVyYXRpb24gaW5maW5pdGUgZWFzZS1pbi1vdXQgYWx0ZXJuYXRlIGItaWNvbi1hbmltYXRpb24tZmFkZTtcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5iLWljb24tYW5pbWF0aW9uLXNwaW4sXG4gICYuYi1pY29uc3RhY2sgLmItaWNvbi1hbmltYXRpb24tc3BpbiA+IGcge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBhbmltYXRpb246ICRiLWljb24tYW5pbWF0aW9uLXNwaW4tZHVyYXRpb24gaW5maW5pdGUgbGluZWFyIG5vcm1hbCBiLWljb24tYW5pbWF0aW9uLXNwaW47XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuYi1pY29uLWFuaW1hdGlvbi1zcGluLXJldmVyc2UsXG4gICYuYi1pY29uc3RhY2sgLmItaWNvbi1hbmltYXRpb24tc3Bpbi1yZXZlcnNlID4gZyB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIGFuaW1hdGlvbjogJGItaWNvbi1hbmltYXRpb24tc3Bpbi1yZXZlcnNlLWR1cmF0aW9uIGluZmluaXRlIGxpbmVhciByZXZlcnNlIGItaWNvbi1hbmltYXRpb24tc3BpbjtcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5iLWljb24tYW5pbWF0aW9uLXNwaW4tcHVsc2UsXG4gICYuYi1pY29uc3RhY2sgLmItaWNvbi1hbmltYXRpb24tc3Bpbi1wdWxzZSA+IGcge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBhbmltYXRpb246ICRiLWljb24tYW5pbWF0aW9uLXNwaW4tcHVsc2UtZHVyYXRpb24gaW5maW5pdGUgc3RlcHMoOCkgbm9ybWFsIGItaWNvbi1hbmltYXRpb24tc3BpbjtcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5iLWljb24tYW5pbWF0aW9uLXNwaW4tcmV2ZXJzZS1wdWxzZSxcbiAgJi5iLWljb25zdGFjayAuYi1pY29uLWFuaW1hdGlvbi1zcGluLXJldmVyc2UtcHVsc2UgPiBnIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiAkYi1pY29uLWFuaW1hdGlvbi1zcGluLXJldmVyc2UtcHVsc2UtZHVyYXRpb24gaW5maW5pdGUgc3RlcHMoOCkgcmV2ZXJzZVxuICAgICAgYi1pY29uLWFuaW1hdGlvbi1zcGluO1xuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmItaWNvbi1hbmltYXRpb24tdGhyb2IsXG4gICYuYi1pY29uc3RhY2sgLmItaWNvbi1hbmltYXRpb24tdGhyb2IgPiBnIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiAkYi1pY29uLWFuaW1hdGlvbi10aHJvYi1kdXJhdGlvbiBpbmZpbml0ZSBlYXNlLWluLW91dCBhbHRlcm5hdGVcbiAgICAgIGItaWNvbi1hbmltYXRpb24tdGhyb2I7XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbmltYXRpb24gZm9yIHNwaW5uaW5nIGljb25zXG5Aa2V5ZnJhbWVzIGItaWNvbi1hbmltYXRpb24tY3lsb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNSUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYi1pY29uLWFuaW1hdGlvbi1jeWxvbi12ZXJ0aWNhbCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUlKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1JSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBiLWljb24tYW5pbWF0aW9uLWZhZGUge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC4xO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBiLWljb24tYW5pbWF0aW9uLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGItaWNvbi1hbmltYXRpb24tdGhyb2Ige1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLy8gTWFrZSBpY29ucyBzbGlnaHRseSBsYXJnZXIgaW4gYnV0dG9ucywgbmF2LWxpbmtzLCBkcm9wZG93bnMsIGFuZCBpbnB1dC1ncm91cC10ZXh0XG4uYnRuLFxuLm5hdi1saW5rLFxuLmRyb3Bkb3duLXRvZ2dsZSxcbi5kcm9wZG93bi1pdGVtLFxuLmlucHV0LWdyb3VwLXRleHQge1xuICAuYi1pY29uIHtcbiAgICAmLmJpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTI1JTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZmlsdGVyLWl0ZW0ge1xuICAgIC5maWx0ZXItaXRlbS1vcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAmW2FjdGl2ZV0ge1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoW2FjdGl2ZV0pIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgfVxuXG4gICAgICAgIFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZmlsdGVyLWl0ZW0tb3B0aW9uLXRleHQge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5maWx0ZXItaXRlbS1vcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJlthY3RpdmVdIHtcbiAgICB9XG5cbiAgICAmOm5vdChbYWN0aXZlXSkge1xuICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuXG4gICAgW3R5cGU9J3JhZGlvJ10ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5maWx0ZXItaXRlbS1vcHRpb24tdGV4dCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZmlsdGVyLWl0ZW0tb3B0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICZbYWN0aXZlXSB7XG4gICAgfVxuXG4gICAgJjpub3QoW2FjdGl2ZV0pIHtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgIH1cblxuICAgIFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZmlsdGVyLWl0ZW0tb3B0aW9uLXRleHQge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLmlucHV0LWVycm9yIHtcbiAgICBzbWFsbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8ZGl2PlxuICAgICAgICA8ZGl2PlxuPCEtLVxuICAgICAgICAgICAgPGItY2FyZCBuby1ib2R5PlxuICAgICAgICAgICAgICAgIDxiLXRhYnMgY2FyZD5cbiAgICAgICAgICAgICAgICAgICAgPGItdGFiIHRpdGxlPVwiVGFiIDFcIiBhY3RpdmU+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+XG5cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbiRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY29sb3JzOiAoXG4gICAgc3lzdGVtOiAjZmRmZGZkLFxuICAgIHN5c3RlbV91cGRhdGVkX2F0OiAjMTExMTExLFxuICAgIHVzZXI6ICM3Nzc3NzcsXG4gICAgaW5zcGVjdG9yOiAjZWZlZmVmLFxuICAgIGQzcGw6ICNkOWVhZDMsXG4pO1xuJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHM6IChcbiAgICBzeXN0ZW06IDIsXG4gICAgc3lzdGVtX3VwZGF0ZWRfYXQ6IDEsXG4gICAgdXNlcjogNSxcbiAgICBpbnNwZWN0b3I6IDUsXG4gICAgZDNwbDogMTQsXG4pO1xuICAgIFxuQG1peGluIG1hcnVuYWdlVGFibGVUaE1peGluKCRjb2x1bW5fY291bnRzLCAkY29sdW1uX2NvbG9ycykge1xuICAgICRpbmRleDogMjtcbiAgICBAZWFjaCAka2V5LCAkY291bnQgaW4gJGNvbHVtbl9jb3VudHMge1xuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb3VudCB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgjeyRpICsgJGluZGV4fSl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sdW1uX2NvbG9ycywgJGtleSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAkaW5kZXg6ICRpbmRleCArICRjb3VudDtcbiAgICB9XG59XG5cbi5tYXJ1bmFnZS10YWJsZSB7XG4gICAgLmhhbmRzb250YWJsZSB7XG4gICAgICAgICZbbW9kZT1cInJlYWRcIl0sXG4gICAgICAgICZbbW9kZT1cInVwZGF0ZVwiXSB7XG4gICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvdW50czogbWFwLW1lcmdlKCRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY291bnRzLCAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtX3VwZGF0ZWRfYXQ6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZmlsZTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFydW5hZ2VUYWJsZVRoTWl4aW4oJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHMsICRtYXJ1bmFnZV90YWJsZV9jb2x1bW5fY29sb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW21vZGU9XCJjcmVhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHM6IG1hcC1tZXJnZSgkbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvdW50cywgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9maWxlOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYXJ1bmFnZVRhYmxlVGhNaXhpbigkbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvdW50cywgJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb2xvcnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgICZbbW9kZT1cInJlYWRcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgaS5yZXF1aXJlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGVhY2ggJGF1dGhfbGV2ZWwsICRjb3VudCBpbiAkYXV0aF9sZXZlbHMge1xuICAgICRhdXRoX2xldmVsX3RocmVzaG9sZDogMjAwO1xuICAgIEBpZiAkYXV0aF9sZXZlbCA+PSAkYXV0aF9sZXZlbF90aHJlc2hvbGQge1xuICAgICAgICBbYXV0aF9sZXZlbD1cIiN7JGF1dGhfbGV2ZWx9XCJdIHtcbiAgICAgICAgICAgIC5tYXJ1bmFnZS10YWJsZSB7XG4gICAgICAgICAgICAgICAgLmhhbmRzb250YWJsZSB7XG4gICAgICAgICAgICAgICAgICAgICZbbW9kZT1cImNyZWF0ZVwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzeXN0ZW06IFsgdXNlcl9pZCBdLmxlbmd0aCA9PT0gMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb3VudHM6IG1hcC1tZXJnZSgkbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvdW50cywgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbTogMixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9maWxlOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYXJ1bmFnZVRhYmxlVGhNaXhpbigkbWFydW5hZ2VfdGFibGVfY29sdW1uX2NvdW50cywgJG1hcnVuYWdlX3RhYmxlX2NvbHVtbl9jb2xvcnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc2hpcHBpbmctYWRkcmVzcy10aCB7XG4gICAgd2lkdGg6MC4xJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiPHRlbXBsYXRlPlxuICAgIDx2dWUtc2VsZWN0XG4gICAgICAgIDp2YWx1ZT1cInZhbHVlXCJcbiAgICAgICAgOm9wdGlvbnM9XCJbXG4gICAgICAgICAgICB7IHZhbHVlOiAnZnJvbScsIHRleHQ6J+eZuumAgeS6uuOBrueZu+mMsueVquWPtycsIH0sXG4gICAgICAgICAgICB7IHZhbHVlOiAndG8nLCB0ZXh0Oiflj5flj5bkurrjga7nmbvpjLLnlarlj7cnLCB9LFxuICAgICAgICAgICAgeyB2YWx1ZTogJ2ViYXknLCB0ZXh0OidlQmF544Gu55m76Yyy55Wq5Y+3JywgfSxcbiAgICAgICAgICAgIHsgdmFsdWU6ICdpb3NzJywgdGV4dDonSU9TU+OBrueZu+mMsueVquWPtycsIH0sXG4gICAgICAgICAgICB7IHZhbHVlOiAnZ2InLCB0ZXh0OidHQiBWQVTjga7nmbvpjLLnlarlj7cnLCB9LFxuICAgICAgICAgICAgeyB2YWx1ZTogbnVsbCwgdGV4dDon44Gq44GXJywgfSxcbiAgICAgICAgXVwiXG4gICAgICAgIDpnZXQtb3B0aW9uLWxhYmVsPVwiKG9wdGlvbikgPT4geyByZXR1cm4gb3B0aW9uLnRleHQgfVwiXG4gICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgIDpyZWR1Y2U9XCJ2ID0+IHYudmFsdWVcIlxuICAgICAgICA6ZmlsdGVyPVwiZmlsdGVyT3B0aW9uXCJcbiAgICAgICAgQGlucHV0PVwiaW5wdXRcIlxuXG4gICAgICAgIGFwcGVuZC10by1ib2R5XG4gICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgPlxuICAgIDwvdnVlLXNlbGVjdD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgRnVzZSBmcm9tICdmdXNlLmpzJ1xuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjb21wb25lbnRzOiB7XG4gICAgfSxcbiAgICBwcm9wczoge1xuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIH0sXG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICdzbScsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge31cbiAgICB9LFxuICAgIGNvbXB1dGVkOiB7fSxcbiAgICBhc3luYyBtb3VudGVkKCkge30sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBmaWx0ZXJPcHRpb24ob3B0aW9ucywgc2VhcmNoKSB7XG4gICAgICAgICAgICBjb25zdCBmdXNlID0gbmV3IEZ1c2Uob3B0aW9ucywge1xuICAgICAgICAgICAgICAgIGtleXM6IFsgJ3ZhbHVlJywgJ3RleHQnLCBdLFxuICAgICAgICAgICAgICAgIHNob3VsZFNvcnQ6IHRydWUsXG5cbiAgICAgICAgICAgICAgICB0b2tlbml6ZTogdHJ1ZSxcbi8vICAgICAgICAgICAgICAgIGlnbm9yZUxvY2F0aW9uOiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgaW5jbHVkZU1hdGNoZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgbWluTWF0Y2hDaGFyTGVuZ3RoOiAxLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICAgICAgfSlcbnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGNvbnN0IGRyb3Bkb3duTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3VsLnZzX19kcm9wZG93bi1tZW51JylcbiAgICBpZiAoZHJvcGRvd25MaXN0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGRyb3Bkb3duTGlzdC5zY3JvbGxUb3AgPSAwKVxuICAgIH1cbn0gLCAxKVxuICAgICAgICAgICAgcmV0dXJuIHNlYXJjaC5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGZ1c2Uuc2VhcmNoKHNlYXJjaCkubWFwKCh7IGl0ZW0gfSkgPT4gaXRlbSlcbiAgICAgICAgICAgICAgICA6IGZ1c2UubGlzdFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSlcbiAgICAgICAgfSxcblxuICAgICAgICB3aXRoUG9wcGVyKGRyb3Bkb3duTGlzdCwgY29tcG9uZW50LCB7IHdpZHRoIH0pIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byBleHBsaWNpdGx5IGRlZmluZSB0aGUgZHJvcGRvd24gd2lkdGggc2luY2VcbiAgICAgICAgICAgICAqIGl0IGlzIHVzdWFsbHkgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudCB3aXRoIENTUy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLndpZHRoID0gd2lkdGhcbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS5oZWlnaHQgPSAnMzUwcHgnXG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGVyZSB3ZSBwb3NpdGlvbiB0aGUgZHJvcGRvd25MaXN0IHJlbGF0aXZlIHRvIHRoZSAkcmVmcy50b2dnbGUgRWxlbWVudC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ29mZnNldCcgbW9kaWZpZXIgYWxpZ25zIHRoZSBkcm9wZG93biBzbyB0aGF0IHRoZSAkcmVmcy50b2dnbGUgYW5kXG4gICAgICAgICAgICAgKiB0aGUgZHJvcGRvd25MaXN0IG92ZXJsYXAgYnkgMSBwaXhlbC5cbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKiBUaGUgJ3RvZ2dsZUNsYXNzJyBtb2RpZmllciBhZGRzIGEgJ2Ryb3AtdXAnIGNsYXNzIHRvIHRoZSBWdWUgU2VsZWN0XG4gICAgICAgICAgICAgKiB3cmFwcGVyIHNvIHRoYXQgd2UgY2FuIHNldCBzb21lIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaXMgcGxhY2VkXG4gICAgICAgICAgICAgKiBhYm92ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3Qgdm0gPSB0aGlzXG4gICAgICAgICAgICBjb25zdCBwb3BwZXIgPSBjcmVhdGVQb3BwZXIoY29tcG9uZW50LiRyZWZzLnRvZ2dsZSwgZHJvcGRvd25MaXN0LCB7XG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29mZnNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiBbMCwgLTFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3RvZ2dsZUNsYXNzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwaGFzZTogJ3dyaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZuKHsgc3RhdGUgfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC4kZWwuY2xhc3NMaXN0LnRvZ2dsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3AtdXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS5wbGFjZW1lbnQgPT09ICd0b3AnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUbyBwcmV2ZW50IG1lbW9yeSBsZWFrcyBQb3BwZXIgbmVlZHMgdG8gYmUgZGVzdHJveWVkLlxuICAgICAgICAgICAgICogSWYgeW91IHJldHVybiBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQganVzdCBiZWZvcmUgZHJvcGRvd24gaXMgcmVtb3ZlZCBmcm9tIERPTS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHBvcHBlci5kZXN0cm95KClcbiAgICAgICAgfSxcbiAgICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbi52LXNlbGVjdC5kcm9wLXVwLnZzLS1vcGVuIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDAuMjYpO1xufVxuXG5bZGF0YS1wb3BwZXItcGxhY2VtZW50PSd0b3AnXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIC0zcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG48L3N0eWxlPlxuXG48c3R5bGU+XG4udnNfX2Ryb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG48L3N0eWxlPlxuXG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8ZGl2PlxuICAgICAgICA8dnVlLXNlbGVjdFxuICAgICAgICAgICAgOnZhbHVlPVwibmFtZVwiXG4gICAgICAgICAgICA6b3B0aW9ucz1cIm9wdGlvbnNfZmlsdGVyZWRcIlxuICAgICAgICAgICAgOmdldC1vcHRpb24tbGFiZWw9XCIob3B0aW9uKSA9PiB7IHJldHVybiBvcHRpb24udGV4dCB9XCJcbiAgICAgICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgICAgICA6cmVkdWNlPVwidiA9PiB2LnZhbHVlXCJcbiAgICAgICAgICAgIDpmaWx0ZXI9XCJmaWx0ZXJPcHRpb25cIlxuICAgICAgICAgICAgQGlucHV0PVwiaW5wdXRcIlxuXG4gICAgICAgICAgICBhcHBlbmQtdG8tYm9keVxuICAgICAgICAgICAgOmNhbGN1bGF0ZS1wb3NpdGlvbj1cIndpdGhQb3BwZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICA8L3Z1ZS1zZWxlY3Q+XG5cbiAgICAgICAgPGRpdiB2LWlmPVwib3B0aW9uX3NlbGVjdGVkXCI+XG4gICAgICAgICAgICA8c3Bhbj7nmbvpjLLnlarlj7fjga7nmbrooYzlm708L3NwYW4+XG4gICAgICAgICAgICA8dnVlLXNlbGVjdFxuICAgICAgICAgICAgICAgIDp2YWx1ZT1cImlzc3Vlcl9jb3VudHJ5X2NvZGVcIlxuICAgICAgICAgICAgICAgIDpvcHRpb25zPVwib3B0aW9uX3NlbGVjdGVkLmlzc3Vlcl9jb3VudHJ5X2NvZGVcIlxuICAgICAgICAgICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgICAgICAgICAgQGlucHV0PVwiaW5wdXRfaXNzdWVyX2NvdW50cnlfY29kZVwiXG5cbiAgICAgICAgICAgICAgICBhcHBlbmQtdG8tYm9keVxuICAgICAgICAgICAgICAgIDpjYWxjdWxhdGUtcG9zaXRpb249XCJ3aXRoUG9wcGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3Z1ZS1zZWxlY3Q+XG5cbiAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cInRleHQtc2Vjb25kYXJ5XCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogcHJlO1wiPnt7IG9wdGlvbl9zZWxlY3RlZC5ub3RlIH19PC9zbWFsbD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IEZ1c2UgZnJvbSAnZnVzZS5qcydcbmltcG9ydCB7IGNyZWF0ZVBvcHBlciB9IGZyb20gJ0Bwb3BwZXJqcy9jb3JlJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgY29tcG9uZW50czoge1xuICAgIH0sXG4gICAgcHJvcHM6IHtcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiAnc20nLFxuICAgICAgICB9LFxuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgREVMSU1JVEVSOiAnX19fJyxcbiAgICAgICAgICAgIG5hbWU6IG51bGwsXG4gICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBudWxsLFxuICAgICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAgICAgIC8vIGZyb21cbi8vICAgICAgICAgICAgICAgIHtcbi8vICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdmcm9tJyxcbi8vICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdOWicsIF0sXG4vLyAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0lSROeVquWPtyBPdmVyc2VhcyBSZWdpc3RlcmVkIFN1cHBsaWVyLFxuLy8gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4vLyAgICAgICAgICAgICAgICAgICAgbm90ZTogJzh+OeahgeOBruaVsOWtlycsXG4vLyAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ1VuaXRlZCBLaW5nZG9tJyxcbi8vICAgICAgICAgICAgICAgIH0sXG4vLyAgICAgICAgICAgICAgICB7XG4vLyAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAnZnJvbScsXG4vLyAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnTk8nLCBdLFxuLy8gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdWT0VD55Wq5Y+3IFZBVCBvbiBFLUNvbW1lcmNlJyxcbi8vICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuLy8gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcy44Gn5aeL44G+44KLN+ahgeOBruaVsOWtlycsXG4vLyAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ05vcndheScsXG4vLyAgICAgICAgICAgICAgICB9LFxuLy8gICAgICAgICAgICAgICAge1xuLy8gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2Zyb20nLFxuLy8gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ0FVJywgXSxcbi8vICAgICAgICAgICAgICAgICAgICBuYW1lOiAnQVVTSUTnlarlj7cgQVVTaWRHU1QgUmVnaXN0cmF0aW9uJyxcbi8vICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuLy8gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcxMX4xMuahgeOBruaVsOWtlycsXG4vLyAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0F1c3RyYWxpYScsXG4vLyAgICAgICAgICAgICAgICB9LFxuLy8gICAgICAgICAgICAgICAge1xuLy8gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2Zyb20nLFxuLy8vLyBFVSBsaXN0XG4vLyAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnVE9ETzpFVScsIF0sXG4vLyAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0lPU1Pnlarlj7cgSW1wb3J0IE9uZS1TdG9wLVNob3AnLFxuLy8gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4vLyAgICAgICAgICAgICAgICAgICAgbm90ZTogJ0lNKzEw5qGB44Gu5pWw5a2XJyxcbi8vICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnRVXliqDnm5/lm70nLFxuLy8gICAgICAgICAgICAgICAgfSxcbi8vICAgICAgICAgICAgICAgIHtcbi8vICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdmcm9tJyxcbi8vICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdHQicsIF0sXG4vLyAgICAgICAgICAgICAgICAgICAgbmFtZTogJ1VLVkFU55Wq5Y+3IEdCVkFUIChmb3JlaWduKSBSZWdpc3RyYXRpb24nLFxuLy8gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4vLyAgICAgICAgICAgICAgICAgICAgbm90ZTogJ0dCKzEy5qGB44Gu5pWw5a2XJyxcbi8vICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnVW5pdGVkIEtpbmdkb20nLFxuLy8gICAgICAgICAgICAgICAgfSxcbi8vICAgICAgICAgICAgICAgIHtcbi8vICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdmcm9tJyxcbi8vICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdTRycsIF0sXG4vLyAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0dTVOeZu+mMsueVquWPtyBTaW5nYXBvcmUgR1NUIENvbGxlY3RlZCcsXG4vLyAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbi8vICAgICAgICAgICAgICAgICAgICBub3RlOiAnOX4xMOahgeOBruaVsOWtlycsXG4vLyAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ1NpbmdhcG9yZScsXG4vLyAgICAgICAgICAgICAgICB9LFxuLy8gICAgICAgICAgICAgICAge1xuLy8gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2Zyb20nLFxuLy8gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ01ZJywgXSxcbi8vICAgICAgICAgICAgICAgICAgICBuYW1lOiAn55m76Yyy6LKp5aOy6ICF77yIUlPvvInnlarlj7cgTWFsYXlzaWEgTG93IFZhbHVlIFJlZ2lzdHJhdGlvbiBOdW1iZXInLFxuLy8gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4vLyAgICAgICAgICAgICAgICAgICAgbm90ZTogJzEw5qGB44Gu6Iux5pWw5a2XJyxcbi8vICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnTWFsYXlzaWEnLFxuLy8gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2Zyb20nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdKUCcsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICfovLjlh7rogIXjga7ml6XmnKzjga7ms5Xkurrnlarlj7cnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdWQVQnLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiBgPOazleS6uueVquWPt+OCkuOBiuaMgeOBoeOBruOBiuWuouanmD4gXG7ms5Xkurrnlarlj7fmpJzntKLjgrXjgqTjg4jvvJpodHRwczovL3d3dy5ob3VqaW4tYmFuZ291Lm50YS5nby5qcC9cbuODuzEz5qGBIFxu44O75pSv5bqX44Kz44O844OJ44Gu44GU5oyH5a6a44GM44GC44KL5aC05ZCI44Gv5pyr5bC+NOahgeOBruaUr+W6l+OCs+ODvOODieOCkuWQq+OCgDE35qGBXG485rOV5Lq655Wq5Y+344GM44Gq44GE44GK5a6i5qeYPiBcbuODu+eojumWoueZuue1puOCs+ODvOODieOCkuOBiuaMgeOBoeOBruWgtOWQiOOAgDE35qGBIFxu44O7SkFTVFBST+OCs+ODvOODieOCkuOBiuaMgeOBoeOBruWgtOWQiOOAgDEy5qGBYCxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ+OBmeOBueOBpicsXG4gICAgICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgICAgIC8vIHRvXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICd0bycsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IHRoaXMuJHN0b3JlLnN0YXRlLmFwcC5kYXRhLmNvdW50cmllcy5tYXAoKHYpID0+IHsgcmV0dXJuIHYudmFsdWUgfSksXG4vLyBUT0RPOuOCiOODvOOCjeOBo+OBsSBsaXN0XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdFT1JJ55Wq5Y+3JyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnRU9SJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJ+eZuuihjOWbveOCs+ODvOODiTLmloflrZcr5pyA5aSnMTXmoYHjga7mlbDlrZcnLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAn44Oo44O844Ot44OD44ORJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAndG8nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdJRCcsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdOUFdQ55Wq5Y+3JyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnVkFUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJzE15qGB44Gu5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0luZG9uZXNpYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnSUQnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnSUTnlarlj7cnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdOSUQnLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiAnMTbmoYHjga7mlbDlrZcnLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnSW5kb25lc2lhJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAndG8nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdJRCcsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICfpgYvou6LlhY3oqLHoqLznlarlj7cnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdETEknLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiAnMTPmoYHjga7mlbDlrZcnLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnSW5kb25lc2lhJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAndG8nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdJRCcsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICfjg5Hjgrnjg53jg7zjg4jnlarlj7cnLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdQQVMnLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiAn44Ki44Or44OV44Kh44OZ44OD44OI44Go5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0luZG9uZXNpYScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnS1InLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnUENDQycsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1ZBVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6ICc4fjEz5qGBLyBQKzEy5qGB44Gu5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ1NvdXRoIEtvcmVhJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAndG8nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdDTicsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICfovLjlh7rlhaXogIXnmbvpjLLnlarlj7fvvIhDUueVquWPt++8iScsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1JHUCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6ICcnLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnQ2hpbmEnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICd0bycsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ0NOJywgXSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ+e1seS4gOekvuS8muS/oeeUqOOCs+ODvOODie+8iFVTQ0nnlarlj7fvvIknLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdEVU4nLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0NoaW5hJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAndG8nLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdCUicsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdDTlBK55Wq5Y+377yI5rOV5Lq677yJJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnQ05QJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJzE35qGB44Gu5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0JyYXppbCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnQlInLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnQ1BG55Wq5Y+377yI5YCL5Lq677yJJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnQ05QJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJzE05qGB44Gu5pWw5a2XJyxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ0JyYXppbCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ3RvJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogWyAnQ0wnLCBdLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnVkFU55Wq5Y+3JyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnVkFUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogJycsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdDaGlsZScsXG4gICAgICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgICAgIC8vIGViYXlcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2ViYXknLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdHQicsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdVS1ZBVOeVquWPtyBHQlZBVCAoZm9yZWlnbikgUmVnaXN0cmF0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogYO+8iOS+i++8iUdCMzY1NjA4NTc2XG7jgqTjgq7jg6rjgrnlrpvjgaZcbjEzNeODneODs+ODieS7peS4i2AsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdVbml0ZWQgS2luZ2RvbScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2ViYXknLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdERScsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdJT1NT55Wq5Y+3IEltcG9ydCBPbmUtU3RvcC1TaG9wJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogYO+8iOS+i++8iUlNMjc2MDAwMDc0MlxuRVXliqDnm5/lm73lrpvjgaZcbjE1MOODpuODvOODreS7peS4i2AsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdFVeWKoOebn+WbvScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2ViYXknLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdBVScsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdBVVMgSUTnlarlj7fvvIhBQk4j77yJIEFVU2lkIEdTVCBSZWdpc3RyYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICB0eXBlX2NvZGU6ICdTRFQnLFxuICAgICAgICAgICAgICAgICAgICBub3RlOiBg77yI5L6L77yJNjQ2NTIwMTY2ODFcbuOCquODvOOCueODiOODqeODquOCouWum+OBplxuMSwwMDDjgqrjg7zjgrnjg4jjg6njg6rjgqLjg4njg6vku6XkuItgLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnQXVzdHJhbGlhJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAnZWJheScsXG4gICAgICAgICAgICAgICAgICAgIGlzc3Vlcl9jb3VudHJ5X2NvZGU6IFsgJ05aJywgXSxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ0lSROeVquWPtyBPdmVyc2VhcyBSZWdpc3RlcmVkIFN1cHBsaWVyJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogYO+8iOS+i++8iTEyNjEwMTY3OO+8iOODj+OCpOODleODs+WQq+OBvuOBmu+8iVxu44OL44Ol44O844K444O844Op44Oz44OJ5a6b44GmXG4xLDAwMOODi+ODpeODvOOCuOODvOODqeODs+ODieODieODq+S7peS4i2AsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdOZXcgWmVhbGFuZCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogJ2ViYXknLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdOTycsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdWT0VD55Wq5Y+3IFZBVCBvbiBFLUNvbW1lcmNlJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogYO+8iOS+i++8iTIwMjQ5MjZcbuODjuODq+OCpuOCp+KAleWum+OBplxuMywwMDDjgq/jg63jg7zjg43ku6XkuItgLFxuICAgICAgICAgICAgICAgICAgICB0b19jb3VudHJ5OiAnTm9yd2F5JyxcbiAgICAgICAgICAgICAgICB9LFxuXG5cbiAgICAgICAgICAgICAgICAvLyBJT1NTXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6ICdpb3NzJyxcbiAgICAgICAgICAgICAgICAgICAgaXNzdWVyX2NvdW50cnlfY29kZTogdGhpcy4kc3RvcmUuc3RhdGUuYXBwLmRhdGEuY291bnRyaWVzX2V1LFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnSU9TU+eVquWPtyBJbXBvcnQgT25lLVN0b3AtU2hvcCcsXG4gICAgICAgICAgICAgICAgICAgIHR5cGVfY29kZTogJ1NEVCcsXG4gICAgICAgICAgICAgICAgICAgIG5vdGU6IGBJTSsxMOahgeOBruaVsOWtl1xuRVXliqDnm5/lm73lrpvjgaZcbjE1MOODpuODvOODreS7peS4i2AsXG4gICAgICAgICAgICAgICAgICAgIHRvX2NvdW50cnk6ICdFVeWKoOebn+WbvScsXG4gICAgICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgICAgIC8vIEdCIFZBVFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiAnZ2InLFxuICAgICAgICAgICAgICAgICAgICBpc3N1ZXJfY291bnRyeV9jb2RlOiBbICdHQicsIF0sXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdVS1ZBVOeVquWPtyBHQlZBVCAoZm9yZWlnbikgUmVnaXN0cmF0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgdHlwZV9jb2RlOiAnU0RUJyxcbiAgICAgICAgICAgICAgICAgICAgbm90ZTogYEdCKznmoYHjga7mlbDlrZdcbuOCpOOCruODquOCueWum+OBplxuMTM144Od44Oz44OJ5Lul5LiLYCxcbiAgICAgICAgICAgICAgICAgICAgdG9fY291bnRyeTogJ1VuaXRlZCBLaW5nZG9tJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfVxuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgb3B0aW9uc19maWx0ZXJlZCgpIHtcbiAgICAgICAgICAgIGxldCBvcHRpb25zID0gdGhpcy5vcHRpb25zXG4gICAgICAgICAgICAgICAgLmZpbHRlcigodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdi50YXJnZXQgPT09IHRoaXMudGFyZ2V0XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAubWFwKCh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHYudGV4dCA9IHYubmFtZSArICfvvIjlj5flj5blm706JyArIHYudG9fY291bnRyeSArICfvvIknXG4gICAgICAgICAgICAgICAgICAgIHYudmFsdWUgPSB2LnRhcmdldCArIHRoaXMuREVMSU1JVEVSICsgdi50eXBlX2NvZGUgKyB0aGlzLkRFTElNSVRFUiArIHYubmFtZVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdlxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICByZXR1cm4gb3B0aW9uc1xuICAgICAgICB9LFxuICAgICAgICBvcHRpb25fc2VsZWN0ZWQoKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zX2ZpbHRlcmVkXG4gICAgICAgICAgICAgICAgLmZpbHRlcigodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdi52YWx1ZSA9PT0gdGhpcy5uYW1lXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuc2hpZnQoKVxuICAgICAgICB9LFxuICAgIH0sXG4gICAgd2F0Y2g6IHtcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIGFzeW5jIGhhbmRsZXIgKHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYXJzZVZhbHVlKHZhbHVlKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGltbWVkaWF0ZTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGFzeW5jIG1vdW50ZWQoKSB7XG4vLyAgICAgICAgdGhpcy4kd2F0Y2goJ3ZhbHVlJywgKHZhbHVlX25ldywgdmFsdWVfb2xkKSA9PiB7XG4vL2NvbnNvbGUubG9nKHZhbHVlX29sZClcbi8vY29uc29sZS5sb2codmFsdWVfbmV3KVxuLy8gICAgICAgICAgICB0aGlzLnBhcnNlVmFsdWUodmFsdWVfbmV3KVxuLy8gICAgICAgIH0sIHtcbi8vICAgICAgICAgICAgaW1tZWRpYXRlOiB0cnVlLCAvLyDjgqrjg5fjgrfjg6fjg7Ncbi8vICAgICAgICB9KVxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBwYXJzZVZhbHVlKHZhbHVlKSB7XG4gICAgICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsZXQgdmFscyA9ICh2YWx1ZSB8fCAnJykuc3BsaXQodGhpcy5ERUxJTUlURVIpXG4gICAgICAgICAgICBpZiAodmFscy5sZW5ndGggPT09IDQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm5hbWUgPSBbIHZhbHNbMF0sIHZhbHNbMV0sIHZhbHNbMl0sIF0uam9pbih0aGlzLkRFTElNSVRFUilcbiAgICAgICAgICAgICAgICB0aGlzLmlzc3Vlcl9jb3VudHJ5X2NvZGUgPSB2YWxzWzNdXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLiRmb3JjZVVwZGF0ZSgpO1xuICAgICAgICB9LFxuICAgICAgICBzdHJpbmdpZnlWYWx1ZSgpIHtcbiAgICAgICAgICAgIGxldCB2YWxzID0gKHRoaXMubmFtZSB8fCAnJykuc3BsaXQodGhpcy5ERUxJTUlURVIpXG4gICAgICAgICAgICBpZiAodmFscy5sZW5ndGggPT09IDMpIHtcbmNvbnNvbGUubG9nKCBbIHZhbHNbMF0sIHZhbHNbMV0sIHZhbHNbMl0sIHRoaXMuaXNzdWVyX2NvdW50cnlfY29kZSwgXS5qb2luKHRoaXMuREVMSU1JVEVSKSApXG4gICAgICAgICAgICAgICAgcmV0dXJuIFsgdmFsc1swXSwgdmFsc1sxXSwgdmFsc1syXSwgdGhpcy5pc3N1ZXJfY291bnRyeV9jb2RlLCBdLmpvaW4odGhpcy5ERUxJTUlURVIpXG4gICAgICAgICAgICB9XG5cbmNvbnNvbGUubG9nKFxuICAgICAgICAgICAgWyAnJywnJywnJywnJywgXS5qb2luKHRoaXMuREVMSU1JVEVSKVxuKVxuICAgICAgICAgICAgcmV0dXJuIFsgJycsJycsJycsJycsIF0uam9pbih0aGlzLkRFTElNSVRFUilcbiAgICAgICAgfSxcbiAgICAgICAgZmlsdGVyT3B0aW9uKG9wdGlvbnMsIHNlYXJjaCkge1xuICAgICAgICAgICAgY29uc3QgZnVzZSA9IG5ldyBGdXNlKG9wdGlvbnMsIHtcbiAgICAgICAgICAgICAgICBrZXlzOiBbICd2YWx1ZScsICd0ZXh0JywgXSxcbiAgICAgICAgICAgICAgICBzaG91bGRTb3J0OiB0cnVlLFxuXG4gICAgICAgICAgICAgICAgdG9rZW5pemU6IHRydWUsXG4vLyAgICAgICAgICAgICAgICBpZ25vcmVMb2NhdGlvbjogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIGluY2x1ZGVNYXRjaGVzOiB0cnVlLFxuICAgICAgICAgICAgICAgIG1pbk1hdGNoQ2hhckxlbmd0aDogMSxcbiAgICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDAuOSxcbiAgICAgICAgICAgIH0pXG5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICBjb25zdCBkcm9wZG93bkxpc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd1bC52c19fZHJvcGRvd24tbWVudScpXG4gICAgaWYgKGRyb3Bkb3duTGlzdCkge1xuICAgICAgICBjb25zb2xlLmxvZyhkcm9wZG93bkxpc3Quc2Nyb2xsVG9wID0gMClcbiAgICB9XG59ICwgMSlcbiAgICAgICAgICAgIHJldHVybiBzZWFyY2gubGVuZ3RoXG4gICAgICAgICAgICAgICAgPyBmdXNlLnNlYXJjaChzZWFyY2gpLm1hcCgoeyBpdGVtIH0pID0+IGl0ZW0pXG4gICAgICAgICAgICAgICAgOiBmdXNlLmxpc3RcbiAgICAgICAgfSxcbiAgICAgICAgaW5wdXQodmFsdWUpIHtcbmNvbnNvbGUubG9nKCdpbnB1dCcpXG4gICAgICAgICAgICB0aGlzLm5hbWUgPSB2YWx1ZVxuICAgICAgICAgICAgdGhpcy5pc3N1ZXJfY291bnRyeV9jb2RlID0gbnVsbFxuY29uc29sZS5sb2codmFsdWUpXG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMuc3RyaW5naWZ5VmFsdWUoKSlcbiAgICAgICAgfSxcbiAgICAgICAgaW5wdXRfaXNzdWVyX2NvdW50cnlfY29kZSh2YWx1ZSkge1xuY29uc29sZS5sb2coJ2lucHV0X2lzc3Vlcl9jb3VudHJ5X2NvZGUnKVxuICAgICAgICAgICAgdGhpcy5pc3N1ZXJfY291bnRyeV9jb2RlID0gdmFsdWVcbmNvbnNvbGUubG9nKHZhbHVlKVxuICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLnN0cmluZ2lmeVZhbHVlKCkpXG4vLyAgICAgICAgICAgIGlmICh0aGlzLm5hbWUgJiYgdGhpcy5pc3N1ZXJfY291bnRyeV9jb2RlKSB7XG4vLyAgICAgICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMubmFtZSArIHRoaXMuREVMSU1JVEVSICsgdGhpcy5pc3N1ZXJfY291bnRyeV9jb2RlKVxuLy8gICAgICAgICAgICB9IGVsc2Uge1xuLy8gICAgICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCBudWxsKVxuLy8gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgd2l0aFBvcHBlcihkcm9wZG93bkxpc3QsIGNvbXBvbmVudCwgeyB3aWR0aCB9KSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdlIG5lZWQgdG8gZXhwbGljaXRseSBkZWZpbmUgdGhlIGRyb3Bkb3duIHdpZHRoIHNpbmNlXG4gICAgICAgICAgICAgKiBpdCBpcyB1c3VhbGx5IGluaGVyaXRlZCBmcm9tIHRoZSBwYXJlbnQgd2l0aCBDU1MuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGRyb3Bkb3duTGlzdC5zdHlsZS53aWR0aCA9IHdpZHRoXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUuaGVpZ2h0ID0gJzM1MHB4J1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEhlcmUgd2UgcG9zaXRpb24gdGhlIGRyb3Bkb3duTGlzdCByZWxhdGl2ZSB0byB0aGUgJHJlZnMudG9nZ2xlIEVsZW1lbnQuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogVGhlICdvZmZzZXQnIG1vZGlmaWVyIGFsaWducyB0aGUgZHJvcGRvd24gc28gdGhhdCB0aGUgJHJlZnMudG9nZ2xlIGFuZFxuICAgICAgICAgICAgICogdGhlIGRyb3Bkb3duTGlzdCBvdmVybGFwIGJ5IDEgcGl4ZWwuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogVGhlICd0b2dnbGVDbGFzcycgbW9kaWZpZXIgYWRkcyBhICdkcm9wLXVwJyBjbGFzcyB0byB0aGUgVnVlIFNlbGVjdFxuICAgICAgICAgICAgICogd3JhcHBlciBzbyB0aGF0IHdlIGNhbiBzZXQgc29tZSBzdHlsZXMgZm9yIHdoZW4gdGhlIGRyb3Bkb3duIGlzIHBsYWNlZFxuICAgICAgICAgICAgICogYWJvdmUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnN0IHZtID0gdGhpc1xuICAgICAgICAgICAgY29uc3QgcG9wcGVyID0gY3JlYXRlUG9wcGVyKGNvbXBvbmVudC4kcmVmcy50b2dnbGUsIGRyb3Bkb3duTGlzdCwge1xuICAgICAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgbW9kaWZpZXJzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdvZmZzZXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogWzAsIC0xXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd0b2dnbGVDbGFzcycsXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2U6ICd3cml0ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICBmbih7IHN0YXRlIH0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQuJGVsLmNsYXNzTGlzdC50b2dnbGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkcm9wLXVwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUucGxhY2VtZW50ID09PSAndG9wJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVG8gcHJldmVudCBtZW1vcnkgbGVha3MgUG9wcGVyIG5lZWRzIHRvIGJlIGRlc3Ryb3llZC5cbiAgICAgICAgICAgICAqIElmIHlvdSByZXR1cm4gZnVuY3Rpb24sIGl0IHdpbGwgYmUgY2FsbGVkIGp1c3QgYmVmb3JlIGRyb3Bkb3duIGlzIHJlbW92ZWQgZnJvbSBET00uXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBwb3BwZXIuZGVzdHJveSgpXG4gICAgICAgIH0sXG4gICAgfSxcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG4udi1zZWxlY3QuZHJvcC11cC52cy0tb3BlbiAudnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSg2MCwgNjAsIDYwLCAwLjI2KTtcbn1cblxuW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0ndG9wJ10ge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAtM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuPC9zdHlsZT5cblxuPHN0eWxlPlxuLnZzX19kcm9wZG93bi1tZW51IHtcbiAgICB6LWluZGV4OiAyMDAwO1xufVxuPC9zdHlsZT5cblxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc2hpcHBpbmctYWRkcmVzcy10aCB7XG4gICAgd2lkdGg6MC4xJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLm9yZGVyLXByb3ZpZGVyIHtcbiAgICBtYXgtd2lkdGg6IDhlbTtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaGlwcGluZy1hZGRyZXNzLXRoIHtcbiAgICB3aWR0aDowLjElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLml0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLml0ZW0tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaGlwcGluZy1hZGRyZXNzLXRoIHtcbiAgICB3aWR0aDowLjElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBhcHAvTW9kZWxzL1VzZXIucGhwXG4kYXV0aF9sZXZlbHM6IDAwMCwgMDAxLCAxMDAsIDIwMCwgMzAwO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbkBtaXhpbiBpbnN1cmFuY2VUYWJsZVRoTWl4aW4oJGNvbHVtbl9jb3VudHMsICRjb2x1bW5fY29sb3JzKSB7XG4gICAgJGluZGV4OiAyO1xuICAgIEBlYWNoICRrZXksICRjb3VudCBpbiAkY29sdW1uX2NvdW50cyB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvdW50IHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKCN7JGkgKyAkaW5kZXh9KXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2x1bW5fY29sb3JzLCAka2V5KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgICRpbmRleDogJGluZGV4ICsgJGNvdW50O1xuICAgIH1cbn1cblxuLnNoaXBwaW5nLXRhYmxlIHtcbiAgICAuaGFuZHNvbnRhYmxlIHtcbiAgICAgICAgJGNvbHVtbl9jb2xvcnM6IChcbiAgICAgICAgICAgIHN5c3RlbTogI2ZkZmRmZCxcbiAgICAgICAgICAgIGNvdXJpZXI6ICNmZGZkZmQsXG4gICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogIzExMTExMSxcbiAgICAgICAgICAgIHByb2ZpbGU6ICM3Nzc3NzcsXG4gICAgICAgICAgICBmcm9tOiAjZWZlZmVmLFxuICAgICAgICAgICAgdG86ICNkOWVhZDMsXG4gICAgICAgICAgICBpbXBvcnRlcjogIzlkZWFkMyxcbiAgICAgICAgICAgIHNoaXBwaW5nOiAjZDlkOWQ5LFxuICAgICAgICApO1xuICAgICAgICAkY29sdW1uX2NvdW50czogKFxuICAgICAgICAgICAgc3lzdGVtOiA0LFxuICAgICAgICAgICAgY291cmllcjogMixcbiAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAxLFxuICAgICAgICAgICAgcHJvZmlsZTogMCxcbiAgICAgICAgICAgIGZyb206IDEzLFxuICAgICAgICAgICAgdG86IDEzLFxuICAgICAgICAgICAgaW1wb3J0ZXI6IDEzLFxuICAgICAgICAgICAgc2hpcHBpbmc6IDE0LFxuICAgICAgICApO1xuICAgIFxuICAgICAgICAmW21vZGU9XCJyZWFkXCJdLFxuICAgICAgICAmW21vZGU9XCJ1cGRhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGNvbHVtbl9jb3VudHM6IG1hcC1tZXJnZSgkY29sdW1uX2NvdW50cywgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGluc3VyYW5jZVRhYmxlVGhNaXhpbigkY29sdW1uX2NvdW50cywgJGNvbHVtbl9jb2xvcnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZbbW9kZT1cImNyZWF0ZVwiXSB7XG4gICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkY29sdW1uX2NvdW50czogbWFwLW1lcmdlKCRjb2x1bW5fY291bnRzLCAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGluc3VyYW5jZVRhYmxlVGhNaXhpbigkY29sdW1uX2NvdW50cywgJGNvbHVtbl9jb2xvcnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgICZbbW9kZT1cInJlYWRcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgaS5yZXF1aXJlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbkBtaXhpbiBpbnN1cmFuY2VUYWJsZVRoTWl4aW4oJGNvbHVtbl9jb3VudHMsICRjb2x1bW5fY29sb3JzKSB7XG4gICAgJGluZGV4OiAyO1xuICAgIEBlYWNoICRrZXksICRjb3VudCBpbiAkY29sdW1uX2NvdW50cyB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvdW50IHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKCN7JGkgKyAkaW5kZXh9KXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2x1bW5fY29sb3JzLCAka2V5KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgICRpbmRleDogJGluZGV4ICsgJGNvdW50O1xuICAgIH1cbn1cblxuLnNoaXBwaW5nLXRhYmxlIHtcbiAgICAuaGFuZHNvbnRhYmxlIHtcbiAgICAgICAgJGNvbHVtbl9jb2xvcnM6IChcbiAgICAgICAgICAgIHN5c3RlbTogI2ZkZmRmZCxcbiAgICAgICAgICAgIGNvdXJpZXI6ICNmZGZkZmQsXG4gICAgICAgICAgICBzeXN0ZW1fdXBkYXRlZF9hdDogIzExMTExMSxcbiAgICAgICAgICAgIHByb2ZpbGU6ICM3Nzc3NzcsXG4gICAgICAgICAgICBmcm9tOiAjZWZlZmVmLFxuICAgICAgICAgICAgdG86ICNkOWVhZDMsXG4gICAgICAgICAgICBpbXBvcnRlcjogIzlkZWFkMyxcbiAgICAgICAgICAgIHNoaXBwaW5nOiAjZDlkOWQ5LFxuICAgICAgICApO1xuICAgICAgICAkY29sdW1uX2NvdW50czogKFxuICAgICAgICAgICAgc3lzdGVtOiAzLFxuICAgICAgICAgICAgY291cmllcjogMixcbiAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAxLFxuICAgICAgICAgICAgcHJvZmlsZTogMCxcbiAgICAgICAgICAgIGZyb206IDEzLFxuICAgICAgICAgICAgdG86IDEzLFxuICAgICAgICAgICAgaW1wb3J0ZXI6IDEzLFxuICAgICAgICAgICAgc2hpcHBpbmc6IDE0LFxuICAgICAgICApO1xuICAgIFxuICAgICAgICAmW21vZGU9XCJyZWFkXCJdLFxuICAgICAgICAmW21vZGU9XCJ1cGRhdGVcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgJGNvbHVtbl9jb3VudHM6IG1hcC1tZXJnZSgkY29sdW1uX2NvdW50cywgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGluc3VyYW5jZVRhYmxlVGhNaXhpbigkY29sdW1uX2NvdW50cywgJGNvbHVtbl9jb2xvcnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZbbW9kZT1cImNyZWF0ZVwiXSB7XG4gICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkY29sdW1uX2NvdW50czogbWFwLW1lcmdlKCRjb2x1bW5fY291bnRzLCAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzdGVtOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c3RlbV91cGRhdGVkX2F0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGU6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGluc3VyYW5jZVRhYmxlVGhNaXhpbigkY29sdW1uX2NvdW50cywgJGNvbHVtbl9jb2xvcnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgICZbbW9kZT1cInJlYWRcIl0ge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgaS5yZXF1aXJlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc2hpcHBpbmctYWRkcmVzcy10aCB7XG4gICAgd2lkdGg6MC4xJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiPHRlbXBsYXRlPlxuICAgIDx2dWUtc2VsZWN0XG4gICAgICAgIDp2YWx1ZT1cInZhbHVlXCJcbiAgICAgICAgOm9wdGlvbnM9XCJ1c2VycyB8fCBbXVwiXG4gICAgICAgIDpnZXQtb3B0aW9uLWxhYmVsPVwiKG9wdGlvbikgPT4geyByZXR1cm4gb3B0aW9uLnByb2ZpbGUgPyAob3B0aW9uLnByb2ZpbGUubWFydW5hZ2VfdXNlcl9pZCArICc6ICcgKyBvcHRpb24ubmlja25hbWUpIDogJycgfVwiXG4gICAgICAgIDpzaXplPVwic2l6ZVwiXG4gICAgICAgIDpyZWR1Y2U9XCJ2ID0+IHYucHJvZmlsZS5tYXJ1bmFnZV91c2VyX2lkXCJcbiAgICAgICAgOmZpbHRlcj1cImZpbHRlclwiXG4gICAgICAgIEBpbnB1dD1cImlucHV0XCJcbiAgICAgICAgQHNlYXJjaD1cImZldGNoT3B0aW9uc1wiXG5cbiAgICAgICAgYXBwZW5kLXRvLWJvZHlcbiAgICAgICAgOmNhbGN1bGF0ZS1wb3NpdGlvbj1cIndpdGhQb3BwZXJcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cIuOCouOCq+OCpuODs+ODiOOCkumBuOaKnuOBl+OBpuOBj+OBoOOBleOBhFwiXG4gICAgICAgIDpjbGVhcmFibGU9XCJmYWxzZVwiXG4gICAgICAgID5cbiAgICA8L3Z1ZS1zZWxlY3Q+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gJ3Z1ZXgnXG5pbXBvcnQgRnVzZSBmcm9tICdmdXNlLmpzJ1xuaW1wb3J0IHsgY3JlYXRlUG9wcGVyIH0gZnJvbSAnQHBvcHBlcmpzL2NvcmUnXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjb21wb25lbnRzOiB7XG4gICAgfSxcbiAgICBwcm9wczoge1xuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogbnVsbCxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGVmYXVsdDogJ3NtJyxcbiAgICAgICAgfSxcbiAgICAgICAgbWU6IHtcbiAgICAgICAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRhdGEoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB1c2VyczogW10sXG4gICAgICAgIH1cbiAgICB9LFxuICAgIGNvbXB1dGVkOiB7XG4gICAgICAgIC4uLm1hcEdldHRlcnMoW1xuICAgICAgICBdKSxcbiAgICB9LFxuICAgIGFzeW5jIG1vdW50ZWQoKSB7XG4gICAgICAgIHRoaXMuZmV0Y2hPcHRpb25zKClcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgZmV0Y2hPcHRpb25zKHNlYXJjaCwgbG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy51c2Vycy5zcGxpY2UoMClcbiAgICAgICAgICAgIHRoaXMuJHN0b3JlXG4gICAgICAgICAgICAgICAgLmRpc3BhdGNoKCd1c2VyL2luZGV4Jywge1xuLy8gICAgICAgICAgICAgICAgICAgIGxldmVsOiAyMDAsXG4gICAgICAgICAgICAgICAgICAgIGdyb3VwOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBTSUxFTlQ6IHRydWUsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMubWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXNlcnMucHVzaChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLiRzdG9yZS5zdGF0ZS5hdXRoLnVzZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5kYXRhLmRhdGEuaGl0cy5mb3JFYWNoKChoaXQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaGl0LnByb2ZpbGUubWFydW5hZ2VfdXNlcl9pZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGVuZ3RoID0gdGhpcy51c2Vycy5maWx0ZXIoKHVzZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXNlci5pZCA9PT0gaGl0LmlkXG4gICAgICAgICAgICAgICAgICAgICAgICB9KS5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXNlcnMucHVzaChoaXQpXG4gICAgICAgICAgICAgICAgICAgIH0pXG4vLyAgICAgICAgICAgICAgICAgICAgdGhpcy51c2Vycy5wdXNoKC4uLnJlc3BvbnNlLmRhdGEuZGF0YS5oaXRzKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH0sXG4gICAgICAgIGZpbHRlcihvcHRpb25zLCBzZWFyY2gpIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1c2UgPSBuZXcgRnVzZShvcHRpb25zLCB7XG4gICAgICAgICAgICAgICAga2V5czogWyAnbWFydW5hZ2VfdXNlcl9pZCcsICduaWNrbmFtZScsIF0sXG4gICAgICAgICAgICAgICAgc2hvdWxkU29ydDogdHJ1ZSxcblxuICAgICAgICAgICAgICAgIHRva2VuaXplOiB0cnVlLFxuLy8gICAgICAgICAgICAgICAgaWdub3JlTG9jYXRpb246IHRydWUsXG5cbiAgICAgICAgICAgICAgICBpbmNsdWRlTWF0Y2hlczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBtaW5NYXRjaENoYXJMZW5ndGg6IDEsXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAwLjksXG4gICAgICAgICAgICB9KVxuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgY29uc3QgZHJvcGRvd25MaXN0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigndWwudnNfX2Ryb3Bkb3duLW1lbnUnKVxuICAgIGlmIChkcm9wZG93bkxpc3QpIHtcbiAgICAgICAgY29uc29sZS5sb2coZHJvcGRvd25MaXN0LnNjcm9sbFRvcCA9IDApXG4gICAgfVxufSAsIDEpXG4gICAgICAgICAgICByZXR1cm4gc2VhcmNoLmxlbmd0aFxuICAgICAgICAgICAgICAgID8gZnVzZS5zZWFyY2goc2VhcmNoKS5tYXAoKHsgaXRlbSB9KSA9PiBpdGVtKVxuICAgICAgICAgICAgICAgIDogZnVzZS5saXN0XG4gICAgICAgIH0sXG4gICAgICAgIGlucHV0KHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKVxuICAgICAgICB9LFxuXG4gICAgICAgIHdpdGhQb3BwZXIoZHJvcGRvd25MaXN0LCBjb21wb25lbnQsIHsgd2lkdGggfSkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXZSBuZWVkIHRvIGV4cGxpY2l0bHkgZGVmaW5lIHRoZSBkcm9wZG93biB3aWR0aCBzaW5jZVxuICAgICAgICAgICAgICogaXQgaXMgdXN1YWxseSBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50IHdpdGggQ1NTLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBkcm9wZG93bkxpc3Quc3R5bGUud2lkdGggPSB3aWR0aFxuICAgICAgICAgICAgZHJvcGRvd25MaXN0LnN0eWxlLmhlaWdodCA9ICczNTBweCdcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBIZXJlIHdlIHBvc2l0aW9uIHRoZSBkcm9wZG93bkxpc3QgcmVsYXRpdmUgdG8gdGhlICRyZWZzLnRvZ2dsZSBFbGVtZW50LlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAnb2Zmc2V0JyBtb2RpZmllciBhbGlnbnMgdGhlIGRyb3Bkb3duIHNvIHRoYXQgdGhlICRyZWZzLnRvZ2dsZSBhbmRcbiAgICAgICAgICAgICAqIHRoZSBkcm9wZG93bkxpc3Qgb3ZlcmxhcCBieSAxIHBpeGVsLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRoZSAndG9nZ2xlQ2xhc3MnIG1vZGlmaWVyIGFkZHMgYSAnZHJvcC11cCcgY2xhc3MgdG8gdGhlIFZ1ZSBTZWxlY3RcbiAgICAgICAgICAgICAqIHdyYXBwZXIgc28gdGhhdCB3ZSBjYW4gc2V0IHNvbWUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBpcyBwbGFjZWRcbiAgICAgICAgICAgICAqIGFib3ZlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB2bSA9IHRoaXNcbiAgICAgICAgICAgIGNvbnN0IHBvcHBlciA9IGNyZWF0ZVBvcHBlcihjb21wb25lbnQuJHJlZnMudG9nZ2xlLCBkcm9wZG93bkxpc3QsIHtcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG1vZGlmaWVyczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAtMV0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndG9nZ2xlQ2xhc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlOiAnd3JpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm4oeyBzdGF0ZSB9KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50LiRlbC5jbGFzc0xpc3QudG9nZ2xlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZHJvcC11cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnBsYWNlbWVudCA9PT0gJ3RvcCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRvIHByZXZlbnQgbWVtb3J5IGxlYWtzIFBvcHBlciBuZWVkcyB0byBiZSBkZXN0cm95ZWQuXG4gICAgICAgICAgICAgKiBJZiB5b3UgcmV0dXJuIGZ1bmN0aW9uLCBpdCB3aWxsIGJlIGNhbGxlZCBqdXN0IGJlZm9yZSBkcm9wZG93biBpcyByZW1vdmVkIGZyb20gRE9NLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gcG9wcGVyLmRlc3Ryb3koKVxuICAgICAgICB9LFxuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLnYtc2VsZWN0LmRyb3AtdXAudnMtLW9wZW4gLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoNjAsIDYwLCA2MCwgMC4yNik7XG59XG5cbltkYXRhLXBvcHBlci1wbGFjZW1lbnQ9J3RvcCddIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgLTNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbjwvc3R5bGU+XG5cbjxzdHlsZT5cbi52c19fZHJvcGRvd24tbWVudSB7XG4gICAgei1pbmRleDogMjAwMDtcbn1cbi52c19fc2VhcmNoIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbn1cbjwvc3R5bGU+XG5cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNoaXBwaW5nLWFkZHJlc3MtdGgge1xuICAgIHdpZHRoOjAuMSU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIGFwcC9Nb2RlbHMvVXNlci5waHBcbiRhdXRoX2xldmVsczogMDAwLCAwMDEsIDEwMCwgMjAwLCAzMDA7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5kaWZmIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwMDAwO1xufVxuIiwiPHRlbXBsYXRlPlxyXG4gICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwibW9udGgtcGlja2VyX19jb250YWluZXJcIlxyXG4gICAgICAgIDpjbGFzcz1cIntcclxuICAgICAgICAgICAgW2Btb250aC1waWNrZXItLSR7dmFyaWFudH1gXTogdHJ1ZSxcclxuICAgICAgICAgICAgJ3llYXItcGlja2VyJzogeWVhck9ubHksXHJcbiAgICAgICAgfVwiXHJcbiAgICA+XHJcbiAgICAgICAgPGRpdiB2LWlmPVwic2hvd1llYXJcIiBjbGFzcz1cIm1vbnRoLXBpY2tlcl9feWVhclwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBAY2xpY2s9XCJjaGFuZ2VZZWFyKC0xKVwiPiZsc2FxdW87PC9idXR0b24+XHJcbiAgICAgICAgICAgIDxwIHYtaWY9XCIhZWRpdGFibGVZZWFyXCI+XHJcbiAgICAgICAgICAgICAgICB7eyB5ZWFyIH19XHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICB2LWVsc2VcclxuICAgICAgICAgICAgICAgIHYtbW9kZWwubnVtYmVyPVwieWVhclwiXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICBAY2hhbmdlPVwib25DaGFuZ2UoKVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIEBjbGljaz1cImNoYW5nZVllYXIoKzEpXCI+JnJzYXF1bzs8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IHYtaWY9XCIheWVhck9ubHlcIiBjbGFzcz1cIm1vbnRoLXBpY2tlclwiPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICB2LWZvcj1cIihtb250aCwgbW9udGhJbmRleCkgaW4gbW9udGhzQnlMYW5nXCJcclxuICAgICAgICAgICAgICAgIDprZXk9XCJtb250aFwiXHJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgaW5hY3RpdmU6IGlzSW5hY3RpdmUobW9udGgpLFxyXG4gICAgICAgICAgICAgICAgICAgIGNsZWFyYWJsZTogY2xlYXJhYmxlLFxyXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoaGlnaGxpZ2h0RXhhY3REYXRlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhcmFuZ2UgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dZZWFyICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50TW9udGhJbmRleCA9PT0gbW9udGhJbmRleCAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeWVhciA9PT0gc2VsZWN0ZWRZZWFyKSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoIXJhbmdlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhc2hvd1llYXIgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRNb250aEluZGV4ID09IG1vbnRoSW5kZXgpIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICghaGlnaGxpZ2h0RXhhY3REYXRlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhcmFuZ2UgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRNb250aEluZGV4ID09PSBtb250aEluZGV4KSxcclxuICAgICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtb250aC1waWNrZXJfX21vbnRoXCJcclxuICAgICAgICAgICAgICAgIEBjbGljaz1cInNlbGVjdE1vbnRoKG1vbnRoSW5kZXgsIHRydWUpXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgbW9udGggfX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC90ZW1wbGF0ZT5cclxuXHJcbjxzY3JpcHQ+XHJcbmltcG9ydCBsYW5ndWFnZXMgZnJvbSAnLi9sYW5ndWFnZXMnXHJcbmltcG9ydCBtb250aFBpY2tlciBmcm9tICcuL21vbnRoLXBpY2tlcidcclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICAgIG5hbWU6ICdNb250aFBpY2tlcicsXHJcbiAgICBtaXhpbnM6IFttb250aFBpY2tlcl0sXHJcbiAgICBlbWl0czogWydjaGFuZ2UnLCAnY2xlYXInLCAnaW5wdXQnLCAnY2hhbmdlLXllYXInXSxcclxuICAgIGRhdGE6ICgpID0+ICh7XHJcbiAgICAgICAgY3VycmVudE1vbnRoSW5kZXg6IG51bGwsXHJcbiAgICAgICAgZmlyc3RSYW5nZU1vbnRoSW5kZXg6IG51bGwsXHJcbiAgICAgICAgc2Vjb25kUmFuZ2VNb250aEluZGV4OiBudWxsLFxyXG4gICAgICAgIHllYXI6IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSxcclxuICAgICAgICBzZWxlY3RlZFllYXI6IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSxcclxuICAgIH0pLFxyXG4gICAgY29tcHV0ZWQ6IHtcclxuICAgICAgICBjdXJyZW50TW9udGg6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudE1vbnRoSW5kZXggIT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm1vbnRoc0J5TGFuZ1t0aGlzLmN1cnJlbnRNb250aEluZGV4XVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gbnVsbFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZmlyc3RSYW5nZW1vbnRoOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmZpcnN0UmFuZ2VNb250aEluZGV4ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5tb250aHNCeUxhbmdbdGhpcy5maXJzdFJhbmdlTW9udGhJbmRleF1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIG51bGxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlY29uZFJhbmdlbW9udGg6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc2Vjb25kUmFuZ2VNb250aEluZGV4ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5tb250aHNCeUxhbmdbdGhpcy5zZWNvbmRSYW5nZU1vbnRoSW5kZXhdXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiBudWxsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBkYXRlOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1vbnRoID0gdGhpcy5tb250aHNCeUxhbmcuaW5kZXhPZih0aGlzLmN1cnJlbnRNb250aCkgKyAxXHJcbiAgICAgICAgICAgIGxldCBkYXRlRnJvbSA9IG5ldyBEYXRlKGAke3RoaXMueWVhcn0vJHttb250aH0vMDFgKVxyXG4gICAgICAgICAgICBsZXQgZGF0ZVRvID0gbmV3IERhdGUodGhpcy55ZWFyLCBtb250aCwgMSlcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGVSZXN1bHQgPSB7XHJcbiAgICAgICAgICAgICAgICBmcm9tOiBkYXRlRnJvbSxcclxuICAgICAgICAgICAgICAgIHRvOiBkYXRlVG8sXHJcbiAgICAgICAgICAgICAgICBtb250aDogdGhpcy5tb250aHNCeUxhbmdbbW9udGggLSAxXSxcclxuICAgICAgICAgICAgICAgIG1vbnRoSW5kZXg6IG1vbnRoLFxyXG4gICAgICAgICAgICAgICAgeWVhcjogdGhpcy55ZWFyLFxyXG4gICAgICAgICAgICAgICAgcmFuZ2VGcm9tOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgcmFuZ2VUbzogbnVsbCxcclxuICAgICAgICAgICAgICAgIHJhbmdlRnJvbU1vbnRoOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgcmFuZ2VUb01vbnRoOiBudWxsLFxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5yYW5nZSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbW9udGhSYW5nZUZyb20gPVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9udGhzQnlMYW5nLmluZGV4T2YodGhpcy5maXJzdFJhbmdlTW9udGhJbmRleCkgKyAxXHJcbiAgICAgICAgICAgICAgICBjb25zdCBtb250aFJhbmdlVG8gPVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9udGhzQnlMYW5nLmluZGV4T2YodGhpcy5zZWNvbmRSYW5nZU1vbnRoSW5kZXgpICsgMVxyXG5cclxuICAgICAgICAgICAgICAgIGRhdGVGcm9tID0gbmV3IERhdGUoYCR7dGhpcy55ZWFyfS8ke21vbnRoUmFuZ2VGcm9tfS8wMWApXHJcbiAgICAgICAgICAgICAgICBkYXRlVG8gPSBuZXcgRGF0ZShgJHt0aGlzLnllYXJ9LyR7bW9udGhSYW5nZVRvfS8wMWApXHJcblxyXG4gICAgICAgICAgICAgICAgZGF0ZVJlc3VsdC5yYW5nZUZyb20gPSB0aGlzLmZpcnN0UmFuZ2VNb250aEluZGV4XHJcbiAgICAgICAgICAgICAgICBkYXRlUmVzdWx0LnJhbmdlVG8gPSB0aGlzLnNlY29uZFJhbmdlTW9udGhJbmRleFxyXG4gICAgICAgICAgICAgICAgZGF0ZVJlc3VsdC5yYW5nZUZyb21Nb250aCA9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb250aHNCeUxhbmdbdGhpcy5maXJzdFJhbmdlTW9udGhJbmRleF1cclxuICAgICAgICAgICAgICAgIGRhdGVSZXN1bHQucmFuZ2VUb01vbnRoID1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vbnRoc0J5TGFuZ1t0aGlzLnNlY29uZFJhbmdlTW9udGhJbmRleF1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIGRhdGVSZXN1bHRcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIHdhdGNoOiB7XHJcbiAgICAgICAgZGVmYXVsdE1vbnRoKG5ld1ZhbCkge1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aEluZGV4ID0gbmV3VmFsIC0gMVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGVmYXVsdFllYXIobmV3VmFsKSB7XHJcbiAgICAgICAgICAgIHRoaXMueWVhciA9IG5ld1ZhbFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgbW91bnRlZCgpIHtcclxuICAgICAgICBpZiAodGhpcy5kZWZhdWx0WWVhcikge1xyXG4gICAgICAgICAgICB0aGlzLnllYXIgPSB0aGlzLmRlZmF1bHRZZWFyXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5yYW5nZSkge1xyXG4gICAgICAgICAgICB0aGlzLnNldERlZmF1bHRNb250aFJhbmdlKClcclxuICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5kZWZhdWx0TW9udGgpIHtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RNb250aCh0aGlzLmRlZmF1bHRNb250aCAtIDEpXHJcbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5ub0RlZmF1bHQpIHtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RNb250aCgwKVxyXG4gICAgICAgIH1cclxuICAgIH0sXHJcbiAgICBtZXRob2RzOiB7XHJcbiAgICAgICAgb25DaGFuZ2UoKSB7XHJcbiAgICAgICAgICAgIGlmICghTnVtYmVyLnBhcnNlSW50KHRoaXMueWVhcikpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMueWVhciA9IHRoaXMuZGVmYXVsdFllYXIgfHwgbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdGhpcy5kYXRlKVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgc2VsZWN0TW9udGgoaW5kZXgsIGlucHV0ID0gZmFsc2UpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuaXNJbmFjdGl2ZShpbmRleCkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5yYW5nZSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0TW9udGhSYW5nZShpbmRleCwgaW5wdXQpXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGlzQWxyZWFkeVNlbGVjdGVkID0gdGhpcy5jdXJyZW50TW9udGhJbmRleCA9PT0gaW5kZXhcclxuICAgICAgICAgICAgaWYgKHRoaXMuY2xlYXJhYmxlICYmIGlzQWxyZWFkeVNlbGVjdGVkKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aEluZGV4ID0gbnVsbFxyXG4gICAgICAgICAgICAgICAgdGhpcy4kZW1pdCgnY2xlYXInKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzQWxyZWFkeVNlbGVjdGVkKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGhJbmRleCA9IGluZGV4XHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UoKVxyXG5cclxuICAgICAgICAgICAgaWYgKGlucHV0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMuZGF0ZSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgc2VsZWN0TW9udGhSYW5nZShpbmRleCwgaW5wdXQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXggPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXggPSBpbmRleFxyXG4gICAgICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlyc3RSYW5nZU1vbnRoSW5kZXggIT09IG51bGwgJiZcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Vjb25kUmFuZ2VNb250aEluZGV4ICE9PSBudWxsXHJcbiAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5maXJzdFJhbmdlTW9udGhJbmRleCA9IGluZGV4XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlY29uZFJhbmdlTW9udGhJbmRleCA9IG51bGxcclxuICAgICAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAoaW5kZXggPj0gdGhpcy5maXJzdFJhbmdlTW9udGhJbmRleCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWNvbmRSYW5nZU1vbnRoSW5kZXggPSBpbmRleFxyXG4gICAgICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSgpXHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGlucHV0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLmRhdGUpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5maXJzdFJhbmdlTW9udGhJbmRleCA9IGluZGV4XHJcbiAgICAgICAgfSxcclxuICAgICAgICBzZXREZWZhdWx0TW9udGhSYW5nZSgpIHtcclxuICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5kZWZhdWx0TW9udGhSYW5nZSA9PT0gbnVsbCB8fFxyXG4gICAgICAgICAgICAgICAgdGhpcy5kZWZhdWx0TW9udGhSYW5nZS5sZW5ndGggIT09IDJcclxuICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY29uc3QgW2ZpcnN0UmFuZ2UsIHNlY29uZFJhbmdlXSA9IHRoaXMuZGVmYXVsdE1vbnRoUmFuZ2VcclxuICAgICAgICAgICAgaWYgKHNlY29uZFJhbmdlIDw9IGZpcnN0UmFuZ2UpIHtcclxuICAgICAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmZpcnN0UmFuZ2VNb250aEluZGV4ID0gZmlyc3RSYW5nZVxyXG4gICAgICAgICAgICB0aGlzLnNlY29uZFJhbmdlTW9udGhJbmRleCA9IHNlY29uZFJhbmdlXHJcbiAgICAgICAgfSxcclxuICAgICAgICBjaGFuZ2VZZWFyKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMueWVhciArPSB2YWx1ZVxyXG4gICAgICAgICAgICBpZiAodGhpcy5pc0luYWN0aXZlKHZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UoKVxyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UteWVhcicsIHRoaXMueWVhcilcclxuICAgICAgICB9LFxyXG4gICAgICAgIGlzSW5hY3RpdmUobW9udGgpIHtcclxuICAgICAgICAgICAgbGV0IG1vbnRoVmFsdWUgPSBtb250aFxyXG4gICAgICAgICAgICBpZiAodGhpcy5taW5EYXRlID09PSBudWxsICYmIHRoaXMubWF4RGF0ZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChOdW1iZXIuaXNJbnRlZ2VyKG1vbnRoVmFsdWUpKSB7XHJcbiAgICAgICAgICAgICAgICBtb250aFZhbHVlID0gdGhpcy5tb250aHNCeUxhbmdbbW9udGhWYWx1ZV1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY29uc3QgbW9udGhLZXkgPSB0aGlzLm1vbnRoc0J5TGFuZy5pbmRleE9mKG1vbnRoVmFsdWUpICsgMVxyXG4gICAgICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoYCR7dGhpcy55ZWFyfS8ke21vbnRoS2V5fS8wMWApXHJcbiAgICAgICAgICAgIGNvbnN0IGlzVmFsaWREYXRlID0gKGRhdGUpID0+IGRhdGUgIT09IG51bGwgJiYgZGF0ZSBpbnN0YW5jZW9mIERhdGVcclxuXHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkRGF0ZSh0aGlzLm1pbkRhdGUpICYmIGRhdGUgPCB0aGlzLm1pbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkRGF0ZSh0aGlzLm1heERhdGUpICYmIGRhdGUgPiB0aGlzLm1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG59XHJcbjwvc2NyaXB0PlxyXG5cclxuPHN0eWxlPlxyXG4ubW9udGgtcGlja2VyX19jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDQwMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xKSxcclxuICAgICAgICBpbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX2NvbnRhaW5lci55ZWFyLXBpY2tlciB7XHJcbiAgICB3aWR0aDogMjByZW07XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXIge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZsZXg6IDE7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYm94LXNoYWRvdzogMXB4IDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX3llYXIge1xyXG4gICAgcGFkZGluZzogMC4ycmVtO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZmNmYztcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMSksXHJcbiAgICAgICAgaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIHAge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgbWFyZ2luOiAxcmVtIDA7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX3llYXIgaW5wdXQge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAzLjVyZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIGlucHV0OmZvY3VzIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1NWIwZjI7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX3llYXIgZGl2LFxyXG4ubW9udGgtcGlja2VyX195ZWFyIGJ1dHRvbixcclxuLm1vbnRoLXBpY2tlcl9feWVhciBwIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX3llYXIgYnV0dG9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogNXJlbTtcclxuICAgIGhlaWdodDogMi43NXJlbTtcclxuICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICB0b3A6IDAuNXJlbTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlOGU4ZTg7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgY29sb3I6ICM2ODY4Njg7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX3llYXIgYnV0dG9uOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMjUpO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX195ZWFyIGJ1dHRvbjphY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA0KTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9feWVhciBidXR0b246Zmlyc3QtY2hpbGQge1xyXG4gICAgbGVmdDogMTBweDtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9feWVhciBidXR0b246bGFzdC1jaGlsZCB7XHJcbiAgICByaWdodDogMTBweDtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlcl9fbW9udGgge1xyXG4gICAgcGFkZGluZzogMC44NXJlbSAwLjI1cmVtO1xyXG4gICAgZmxleC1iYXNpczogY2FsYygzMy4zMzMlIC0gMTBweCk7XHJcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuMjVyZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuNzUpO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX21vbnRoOmhvdmVyOjphZnRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDk1JTtcclxuICAgIGhlaWdodDogOTUlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19tb250aC5zZWxlY3RlZCxcclxuLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQtcmFuZ2UtZmlyc3QsXHJcbi5tb250aC1waWNrZXJfX21vbnRoLnNlbGVjdGVkLXJhbmdlLXNlY29uZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTViMGYyO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4ICMzNDkwZDIsIDBweCAycHggNXB4IHJnYmEoODUsIDE3NiwgMjQyLCAwLjIpO1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19tb250aC5zZWxlY3RlZC1yYW5nZS1maXJzdCxcclxuLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQtcmFuZ2Utc2Vjb25kIHtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX21vbnRoLnNlbGVjdGVkLXJhbmdlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZWI5ZTI7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX21vbnRoLmluYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XHJcbiAgICBjb2xvcjogIzhhOGE4YTtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXJfX21vbnRoLmluYWN0aXZlOmhvdmVyIHtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbi8qIERhcmsgdGhyZW1lICovXHJcbi5tb250aC1waWNrZXItLWRhcmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNWY1ZjtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci0tZGFyayAubW9udGgtcGlja2VyX195ZWFyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyZjJmMzA7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9feWVhciBwLFxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX3llYXIgaW5wdXQge1xyXG4gICAgY29sb3I6ICNlYmViZWI7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9feWVhciBpbnB1dCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWY1ZjVmO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX3llYXIgYnV0dG9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MDUwNTA7XHJcbiAgICBjb2xvcjogI2M5YzljOTtcclxuICAgIGJvcmRlci1jb2xvcjogIzFlMWUxZTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci0tZGFyayAubW9udGgtcGlja2VyX195ZWFyIGJ1dHRvbjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9feWVhciBidXR0b246YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci0tZGFyayAubW9udGgtcGlja2VyX19tb250aCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmYyZjMwO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI0NSwgMjQ1LCAyNDUsIDAuMTUpO1xyXG4gICAgY29sb3I6ICNjOWM5Yzk7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQsXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQtcmFuZ2UtZmlyc3QsXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9fbW9udGguc2VsZWN0ZWQtcmFuZ2Utc2Vjb25kIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MDUwNTA7XHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4ICM1MDUwNTAsIDBweCAycHggNXB4ICM1MDUwNTA7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGJvcmRlci1jb2xvcjogIzFkMWIxYjtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci0tZGFyayAubW9udGgtcGlja2VyX19tb250aC5zZWxlY3RlZC1yYW5nZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2MzYzO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLS1kYXJrIC5tb250aC1waWNrZXJfX21vbnRoOmhvdmVyIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4gICAgei1pbmRleDogMTA7XHJcbn1cclxuXHJcbi5tb250aC1waWNrZXItLWRhcmsgLm1vbnRoLXBpY2tlcl9fbW9udGguaW5hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNmM2YzZjtcclxuICAgIGNvbG9yOiAjOGE4YThhO1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLm1vbnRoLXBpY2tlcl9fY29udGFpbmVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG48L3N0eWxlPlxyXG4iLCI8dGVtcGxhdGU+XHJcbiAgICA8ZGl2IHYtY2xpY2stb3V0c2lkZT1cImhpZGVcIiBjbGFzcz1cIm1vbnRoLXBpY2tlci1pbnB1dC1jb250YWluZXJcIj5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgdi1tb2RlbD1cInNlbGVjdGVkRGF0ZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwibW9udGgtcGlja2VyLWlucHV0XCJcclxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgIHJlYWRvbmx5XHJcbiAgICAgICAgICAgIEBjbGljaz1cInNob3dNb250aFBpY2tlcigpXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxtb250aC1waWNrZXJcclxuICAgICAgICAgICAgdi1zaG93PVwibW9udGhQaWNrZXJWaXNpYmxlXCJcclxuICAgICAgICAgICAgOmRlZmF1bHQteWVhcj1cImRlZmF1bHRZZWFyXCJcclxuICAgICAgICAgICAgOmRlZmF1bHQtbW9udGg9XCJkZWZhdWx0TW9udGhcIlxyXG4gICAgICAgICAgICA6bGFuZz1cImxhbmdcIlxyXG4gICAgICAgICAgICA6bW9udGhzPVwibW9udGhzXCJcclxuICAgICAgICAgICAgOm5vLWRlZmF1bHQ9XCJub0RlZmF1bHRcIlxyXG4gICAgICAgICAgICA6c2hvdy15ZWFyPVwic2hvd1llYXJcIlxyXG4gICAgICAgICAgICA6aGlnaGxpZ2h0LWV4YWN0LWRhdGU9XCJoaWdobGlnaHRFeGFjdERhdGVcIlxyXG4gICAgICAgICAgICA6Y2xlYXJhYmxlPVwiY2xlYXJhYmxlXCJcclxuICAgICAgICAgICAgOnZhcmlhbnQ9XCJ2YXJpYW50XCJcclxuICAgICAgICAgICAgOmVkaXRhYmxlLXllYXI9XCJlZGl0YWJsZVllYXJcIlxyXG4gICAgICAgICAgICA6bWF4LWRhdGU9XCJtYXhEYXRlXCJcclxuICAgICAgICAgICAgOm1pbi1kYXRlPVwibWluRGF0ZVwiXHJcbiAgICAgICAgICAgIDp5ZWFyLW9ubHk9XCJ5ZWFyT25seVwiXHJcbiAgICAgICAgICAgIDpyYW5nZT1cInJhbmdlXCJcclxuICAgICAgICAgICAgQGlucHV0PVwicG9wdWxhdGVJbnB1dFwiXHJcbiAgICAgICAgICAgIEBjaGFuZ2U9XCJ1cGRhdGVEYXRlXCJcclxuICAgICAgICAvPlxyXG4gICAgPC9kaXY+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG5pbXBvcnQgTW9udGhQaWNrZXIgZnJvbSAnLi9Nb250aFBpY2tlci52dWUnXHJcbmltcG9ydCBtb250aFBpY2tlciBmcm9tICcuL21vbnRoLXBpY2tlcidcclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICAgIG5hbWU6ICdNb250aFBpY2tlcklucHV0JyxcclxuICAgIGRpcmVjdGl2ZXM6IHtcclxuICAgICAgICBjbGlja091dHNpZGU6IHtcclxuICAgICAgICAgICAgYmluZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nLCB2bm9kZSkge1xyXG4gICAgICAgICAgICAgICAgZWwuZXZlbnQgPSBmdW5jdGlvbiAoZXZlbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIShlbCA9PT0gZXZlbnQudGFyZ2V0IHx8IGVsLmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZub2RlLmNvbnRleHRbYmluZGluZy5leHByZXNzaW9uXShldmVudClcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZWwuZXZlbnQpXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHVuYmluZDogZnVuY3Rpb24gKGVsKSB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZWwuZXZlbnQpXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGJlZm9yZU1vdW50OiAoZWwsIGJpbmRpbmcpID0+IHtcclxuICAgICAgICAgICAgICAgIGVsLmNsaWNrT3V0c2lkZUV2ZW50ID0gKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCEoZWwgPT0gZXZlbnQudGFyZ2V0IHx8IGVsLmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRpbmcudmFsdWUoKVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZWwuY2xpY2tPdXRzaWRlRXZlbnQpXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHVubW91bnRlZDogKGVsKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGVsLmNsaWNrT3V0c2lkZUV2ZW50KVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgY29tcG9uZW50czoge1xyXG4gICAgICAgIE1vbnRoUGlja2VyLFxyXG4gICAgfSxcclxuICAgIG1peGluczogW21vbnRoUGlja2VyXSxcclxuICAgIHByb3BzOiB7XHJcbiAgICAgICAgcGxhY2Vob2xkZXI6IHtcclxuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxyXG4gICAgICAgICAgICBkZWZhdWx0OiBudWxsLFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgZW1pdHM6IFsnY2hhbmdlJywgJ2lucHV0J10sXHJcbiAgICBkYXRhKCkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIG1vbnRoUGlja2VyVmlzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgICAgIHNlbGVjdGVkRGF0ZTogbnVsbCxcclxuICAgICAgICB9XHJcbiAgICB9LFxyXG4gICAgd2F0Y2g6IHtcclxuICAgICAgICBkZWZhdWx0WWVhcjoge1xyXG4gICAgICAgICAgICBpbW1lZGlhdGU6IHRydWUsXHJcbiAgICAgICAgICAgIGhhbmRsZXIodmFsdWUpIHtcclxuICAgICAgICAgICAgICAgIGlmICghdmFsdWUgfHwgIXRoaXMuaW5wdXRQcmVGaWxsZWQpIHJldHVyblxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLmRhdGVGb3JtYXRcclxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgnJW4nLCB0aGlzLm1vbnRoc0J5TGFuZ1t0aGlzLmRlZmF1bHRNb250aCAtIDFdKVxyXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKCclWScsIHZhbHVlKVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGVmYXVsdE1vbnRoOiB7XHJcbiAgICAgICAgICAgIGltbWVkaWF0ZTogdHJ1ZSxcclxuICAgICAgICAgICAgaGFuZGxlcih2YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSB8fCAhdGhpcy5pbnB1dFByZUZpbGxlZCkgcmV0dXJuXHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHRoaXMuZGF0ZUZvcm1hdFxyXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKCclbicsIHRoaXMubW9udGhzQnlMYW5nW3ZhbHVlIC0gMV0pXHJcbiAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoJyVZJywgdGhpcy5kZWZhdWx0WWVhcilcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIG1ldGhvZHM6IHtcclxuICAgICAgICBwb3B1bGF0ZUlucHV0KGRhdGUpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMucmFuZ2UpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gYCR7ZGF0ZS5yYW5nZUZyb21Nb250aH0gLSAke2RhdGUucmFuZ2VUb01vbnRofSwgJHtkYXRlLnllYXJ9YFxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLmRhdGVGb3JtYXRcclxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgnJW4nLCBkYXRlLm1vbnRoKVxyXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKCclWScsIGRhdGUueWVhcilcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5tb250aFBpY2tlclZpc2libGUgPSBmYWxzZVxyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIGRhdGUpXHJcbiAgICAgICAgfSxcclxuICAgICAgICBzaG93TW9udGhQaWNrZXIoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubW9udGhQaWNrZXJWaXNpYmxlID0gIXRoaXMubW9udGhQaWNrZXJWaXNpYmxlXHJcbiAgICAgICAgfSxcclxuICAgICAgICBoaWRlKCkge1xyXG4gICAgICAgICAgICB0aGlzLm1vbnRoUGlja2VyVmlzaWJsZSA9IGZhbHNlXHJcbiAgICAgICAgfSxcclxuICAgICAgICB1cGRhdGVEYXRlKGRhdGUpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMucmFuZ2UpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gYCR7ZGF0ZS5yYW5nZUZyb21Nb250aH0gLSAke2RhdGUucmFuZ2VUb01vbnRofSwgJHtkYXRlLnllYXJ9YFxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLmRhdGVGb3JtYXRcclxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgnJW4nLCBkYXRlLm1vbnRoKVxyXG4gICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKCclWScsIGRhdGUueWVhcilcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCBkYXRlKVxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG59XHJcbjwvc2NyaXB0PlxyXG48c3R5bGUgc2NvcGVkPlxyXG4ubW9udGgtcGlja2VyLWlucHV0LWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTgwcHg7XHJcbiAgICBtaW4td2lkdGg6IDE0MHB4O1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyLWlucHV0IHtcclxuICAgIHBhZGRpbmc6IDFlbSAxLjVlbTtcclxuICAgIGZvbnQtc2l6ZTogMC44NWVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcclxufVxyXG5cclxuLm1vbnRoLXBpY2tlci1pbnB1dDpmb2N1cyB7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG59XHJcblxyXG4ubW9udGgtcGlja2VyX19jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAzLjVlbTtcclxufVxyXG48L3N0eWxlPlxyXG4iLCI8dGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImF1dGgtbWFzayBwb3NpdGlvbi1maXhlZCB2dy0xMDAgdmgtMTAwXCI+XG4gICAgICAgIDxiLXJvdyBuby1ndXR0ZXJzIGNsYXNzPVwianVzdGlmeS1jb250ZW50LWNlbnRlciB2dy0xMDAgdmgtMTAwXCI+XG4gICAgICAgICAgICA8Yi1jb2wgc209XCI2XCIgY2xhc3M9XCJweC01IGFsaWduLXNlbGYtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGZvcm1cbiAgICAgICAgICAgICAgICAgICAgQHN1Ym1pdC5wcmV2ZW50PVwicmVhZHlcIlxuICAgICAgICAgICAgICAgICAgICB2LWlmPVwicmVzcG9uc2Uuc3RhdHVzICE9IDIwMFwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGItZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxiLWZvcm0taW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwiZm9ybS5lbWFpbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPVwiZm9ybUVtYWlsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiZW1haWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwieW91ckBlbWFpbC5jb21cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9iLWZvcm0taW5wdXQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQtZXJyb3IgOmVycm9ycz1cImVycm9yLmVtYWlsXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9iLWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgIDxiLWJ1dHRvbiBibG9jayBjbGFzcz1cImJ0bi10aGVtZVwiIEBjbGljaz1cInJlYWR5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICDjg63jgrDjgqTjg7NcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZW1wbGF0ZSB2LWlmPVwiY29uZmlnLkFQUF9FTkFCTEVfUkVHSVNURVJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAg55m76YyyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8L2ItYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgICAgICAgICA8Zm9ybVxuICAgICAgICAgICAgICAgICAgICBAc3VibWl0LnByZXZlbnQ9XCJsb2dpblwiXG4gICAgICAgICAgICAgICAgICAgIHYtaWY9XCJyZXNwb25zZS5zdGF0dXMgPT0gMjAwXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8Yi1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+44Oh44O844Or44Gn5bGK44GE44Gf6KqN6Ki844Kz44O844OJPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGItZm9ybS1pbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJmb3JtLm9uZXRpbWVfcGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj1cImZvcm1PbmV0aW1lUGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIjEyMzQ1NlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5wdXQ9XCJsb2dpblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9iLWZvcm0taW5wdXQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQtZXJyb3IgOmVycm9ycz1cImVycm9yLm9uZXRpbWVfcGFzc3dvcmRcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8L2ItZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICAgICAgPGItbGluayBAY2xpY2s9XCJzdGVwMVwiPuWGjemAgeS/oTwvYi1saW5rPlxuICAgICAgICAgICAgICAgIDwvZm9ybT5cblxuICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1jZW50ZXIgbXktNVwiXG4gICAgICAgICAgICAgICAgICAgIHYtaWY9XCIhIGNvbmZpZy5BUFBfRU5BQkxFX1JFR0lTVEVSXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICDjgb7jgaDnmbvpjLLjgZfjgabjgYTjgarjgYTloLTlkIjjgIE8YSBocmVmPVwiL1wiPuOBk+OBoeOCiTwvYT7jgYvjgonnlLPovrzjgYTjgZ/jgaDjgZHjgb7jgZnjgIJcbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L2ItY29sPlxuICAgICAgICA8L2Itcm93PlxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4J1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgY29tcG9uZW50czoge1xuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgLi4ubWFwR2V0dGVycyhbXG4gICAgICAgICAgICAnYXV0aF90b2tlbicsXG4gICAgICAgICAgICAndHJhbnMnLFxuICAgICAgICAgICAgJ2NvbmZpZycsXG4gICAgICAgIF0pXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZm9ybToge1xuICAgICAgICAgICAgICAgIGVtYWlsOiBudWxsLFxuICAgICAgICAgICAgICAgIG9uZXRpbWVfcGFzc3dvcmQ6IG51bGwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVzcG9uc2U6IHt9LFxuICAgICAgICAgICAgZXJyb3I6IHt9LFxuICAgICAgICB9XG4gICAgfSxcbiAgICBtb3VudGVkKCkge1xuICAgICAgICB0aGlzLnN0ZXAxKClcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgICAgcmVhZHkgKCkge1xuICAgICAgICAgICAgdGhpcy5yZXNwb25zZSA9IE9iamVjdC5hc3NpZ24oe30pXG4gICAgICAgICAgICB0aGlzLiRzdG9yZVxuICAgICAgICAgICAgICAgIC5kaXNwYXRjaCgnYXV0aC9yZWFkeScsIE9iamVjdC5hc3NpZ24odGhpcy5mb3JtLCB7IG9uZXRpbWVfcGFzc3dvcmRfdHlwZTogJ2xvZ2luJywgfSkpXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVzcG9uc2UgPSBPYmplY3QuYXNzaWduKHt9LCByZXNwb25zZSlcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGVwMigpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvclxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH0sXG4gICAgICAgIGxvZ2luICgpIHtcbiAgICAgICAgICAgIGlmICgodGhpcy5mb3JtLm9uZXRpbWVfcGFzc3dvcmQgfHwgJycpLmxlbmd0aCAhPSA2KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLiRzdG9yZVxuICAgICAgICAgICAgICAgIC5kaXNwYXRjaCgnYXV0aC9sb2dpbicsIHRoaXMuZm9ybSlcbiAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGVwMSgpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhcHAvZGF0YScpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvclxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH0sXG4gICAgICAgIHN0ZXAxICgpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5lbWFpbCA9IG51bGxcbiAgICAgICAgICAgIHRoaXMuZm9ybS5vbmV0aW1lX3Bhc3N3b3JkID0gbnVsbFxuXG4gICAgICAgICAgICB0aGlzLnJlc3BvbnNlID0gT2JqZWN0LmFzc2lnbih7fSlcbiAgICAgICAgICAgIHRoaXMuZXJyb3IgPSBPYmplY3QuYXNzaWduKHt9KVxuXG4gICAgICAgICAgICB0aGlzLiRuZXh0VGljaygoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy4kcmVmcy5mb3JtRW1haWwuZm9jdXMoKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfSxcbiAgICAgICAgc3RlcDIgKCkge1xuICAgICAgICAgICAgdGhpcy5mb3JtLm9uZXRpbWVfcGFzc3dvcmQgPSBudWxsXG5cbiAgICAgICAgICAgIHRoaXMuZXJyb3IgPSBPYmplY3QuYXNzaWduKHt9KVxuXG4gICAgICAgICAgICB0aGlzLiRuZXh0VGljaygoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy4kcmVmcy5mb3JtT25ldGltZVBhc3N3b3JkLmZvY3VzKClcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0sXG4gICAgfSxcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG4uYXV0aC1tYXNrIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuPC9zdHlsZT5cbiIsIjx0ZW1wbGF0ZT5cbiAgICA8ZGl2IGNsYXNzPVwibG9hZC1tYXNrIHBvc2l0aW9uLWZpeGVkIHZ3LTEwMCB2aC0xMDBcIj5cbiAgICAgICAgPGItcm93IG5vLWd1dHRlcnMgY2xhc3M9XCJqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHZ3LTEwMCB2aC0xMDBcIj5cbiAgICAgICAgICAgIDxiLWNvbCBzbT1cIjZcIiBjbGFzcz1cInB4LTUgYWxpZ24tc2VsZi1jZW50ZXIgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8Yi1pbWcgc3JjPVwiL2ltYWdlcy9sb2FkLmdpZlwiPjwvYi1pbWc+XG4gICAgICAgICAgICA8L2ItY29sPlxuICAgICAgICA8L2Itcm93PlxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4J1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgY29tcG9uZW50czoge1xuICAgIH0sXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgLi4ubWFwR2V0dGVycyhbXG4gICAgICAgIF0pXG4gICAgfSxcbiAgICBkYXRhKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICB9XG4gICAgfSxcbiAgICBtb3VudGVkKCkge1xuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgIH0sXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuLmxvYWQtbWFzayB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDMwMDA7XG5cbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7XG59XG48L3N0eWxlPlxuIiwiLy8gYXBwL01vZGVscy9Vc2VyLnBocFxuJGF1dGhfbGV2ZWxzOiAwMDAsIDAwMSwgMTAwLCAyMDAsIDMwMDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5ub3RpZmljYXRpb24td3JhcHBlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMWVtO1xuLy8gICAgd2lkdGg6IDUwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHotaW5kZXg6IDIwMDA7XG59XG4ubm90aWZpY2F0aW9uLXdyYXBwZXIgLmFsZXJ0IHtcbi8vICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xcmVtO1xufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/